Commit Graph

516 Commits

Author SHA1 Message Date
83df7f410d libgimpwidgets: more parameters for gimp_color_profile_chooser_dialog_new()
Add "parent" and "action", contraidicting myself from two commits
earlier.
2016-05-07 01:19:26 +02:00
f7f9174a9c Revert "libgimpwidgets: remove gimp_color_profile_chooser_dialog_new()"
This reverts commit 2bfd0711e8.

Don't ask...
2016-05-07 00:57:40 +02:00
2bfd0711e8 libgimpwidgets: remove gimp_color_profile_chooser_dialog_new()
Its API was too limited, and adding parameters for what we need next
would be equally random. It's a rarely used and mostly internal
widget, so simply use g_object_new().
2016-05-06 22:57:32 +02:00
f7fc87884e Bug 765180 - Hard-coded NTSC parameters in babl/GEGL/GIMP
Port GimpColorWheel to GIMP_RGB_LUMINANCE().
2016-04-17 17:52:28 +01:00
9fd0c74ebe modules: port to GIMP_CONFIG_PROP_FOO() 2016-04-17 00:11:39 +01:00
47ef3be145 Initialize GValues with G_VALUE_INIT instead of { 0, } 2016-03-26 15:59:26 +01:00
f2d581a536 Bug 761170 - Warnings building with clang
Fix a bunch of clang warnings.
2016-02-12 22:49:47 +01:00
3e5eba0774 modules: patch from Elle that fixes some forgotten profile_new name changes 2015-12-16 00:23:48 +01:00
66d1b776a9 Imported Upstream version 2.8.16 2015-11-24 14:17:30 -05:00
b45d31072b app, libgimpcolor: refactor GimpColorManaged::get_color_profile()
to not return a reference that has to be dropped. Also allow NULL to
be returned if the managed cannot have a profile. If it can have one,
get_color_profile() still always returns a profile (either the
assigned one, or a generated built-in one).
2015-09-03 01:36:02 +02:00
fd0203ce80 libgimpwidgets: change parameters of gimp_widget_get_color_transform()
Change GimpColorManaged to GimpColorProfile.
2015-09-01 23:40:57 +02:00
e4d5f05373 modules: don't use the configured RGB profile in the CMCK color selector
it gets its color as GimpRGB which is always sRGB. Instead always use
the built-in sRGB profile.
2015-08-19 17:57:48 +02:00
5672e80ea1 libgimpwidgets: port GimpColorProfileStore and -ComboBox to GFile
and deprecate the old filename-based API. Port everything to use the
new GFile functions.
2015-08-01 16:20:14 +02:00
0693298d63 libgimpcolor, *: change all GimpColorConfig getters to return const gchar*
instead of a gchar* which has to be freed. Cache all the strings in
the GimpColorConfig instance.
2015-07-12 14:10:18 +02:00
c102dde92b libgimpcolor, *: change GimpColorProfile to be a GObject
it used to be a typedef to gpointer and actually was a cmsHPROFILE.

Change its API to be more "standard", remove the public close()
function. The object caches both the cmsHPROFILE and the data/length
ICC blob, so conversions between the two become obsolete (simply call
get_lcms_profile() or get_icc_profile()).

Adapt everything to the new API, but port it in a naive way for now,
the code doesn't take advantage of the new possibilities yet (like
refcounting).
2015-07-10 22:53:59 +02:00
3565b33019 libgimpconfig: rename the new GimpColorConfig profile accessor functions
gimp_color_config_get_foo_profile() -> get_foo_color_profile()

because the old names clash with possible future accessors for the raw
filename properties.
2015-06-03 09:57:34 +02:00
4910c28957 libgimpcolor: rename the gimp_lcms_*() functions to gimp_color_profile_*()
because it doesn't make sense to call the typedef GimpColorProfile
but the function namespace gimp_lcms_*().
2015-06-03 09:41:23 +02:00
8005eea835 Remove the "GIMP" from all "Since: GIMP 2.x" API doc comments
because it confuses gtk-doc and breaks some links. Also change the
"Index of new symbols in GIMP 2.x" sections to be what seems to be the
modern standard (looked at the GLib and GTK+ docs), and update some
other stuff.
2015-05-31 21:18:09 +02:00
9096ceffde modules: honor GimpColorConfig.display_profile_from_gdk again
I broke this during some recent refactoring.
2015-05-30 01:06:25 +02:00
d3e11c5b2c modules, libgimpwidgets: use gimp_color_managed_get_color_profile()
which always returns a profile, instead of code that uses the ICC
blob and falls back to GimpColorConfig's profile, then falls back
to the built-in profiles.
2015-05-27 12:53:46 +02:00
394bc25be1 libgimpwidgets: return the formats from gimp_widget_get_color_transform()
Turn the src_format and dest_formats into "const Babl **" and make
them return the actually used formats. Change the lcms display module
accordingly.
2015-05-11 00:45:18 +02:00
064cdaa923 modules: use the new function in the lcms display filter 2015-05-09 01:24:22 +02:00
cbb82ae5da modules: get the profile of the widget's toplevel
so we are in sync with GimpWindow::monitor-changed().
2015-05-08 00:50:07 +02:00
ed3f2daac2 modules: use the new API in the lcms display filter, and some cleanup 2015-05-06 22:21:13 +02:00
6c800db1cc Use the newly added profile utility functions all over the place 2015-05-06 16:38:57 +02:00
fa070d4cf9 modules: plug leak in color-selector-cmyk
Don't leak the RGB profile if the CMYK profile can't be loaded
2014-10-06 20:29:58 +02:00
bf2f572083 Imported Upstream version 2.8.14 2014-09-20 13:16:57 -04:00
b5530e9e3d Use the new GeglAccessMode enum instead of the old values 2014-07-02 02:00:35 +02:00
65a65947d9 app, libgimp: replace GTK_STOCK_FOO by icon names
unless it's a stock ID used for an action button, will address that
later.
2014-05-11 22:49:22 +02:00
4b629e984b libgimpwidgets: add GimpColorDisplayClass::icon_name
and deprecate its stock_id.
2014-05-10 11:53:07 +02:00
1ec64abb8b libgimpwidgets: add GimpColorSelectorClass::icon_name
and deprecate its stock_id.
2014-05-10 08:34:42 +02:00
9331ef2456 libgimpwidgets: change GimpController's stock_id to icon_name
This API change is OK since the entire controller API is marked as
unstable and needs a special #define to be visible at all.
2014-05-09 09:19:06 +02:00
5ec413a5e8 Bug 729326 - Errors found using a static code analysis program cppcheck
Fixed some memory and file leaks. And removed some code and variables
that are not used.
2014-05-05 10:34:08 +02:00
b34fbb21fc modules: Add missing include.
614c61a3dd removed the #include <glib.h>,
which is needed for the #ifdef G_OS_WIN32 to work.
2014-04-15 19:17:57 -04:00
614c61a3dd Don't #include <glib.h> before <lcms.h>
The include claimed to be because of "inline" in the lcms header, but
that was probably lcms1, since there is no trace of inline in the
lcms2 header.
2014-04-10 20:48:22 +02:00
661317f74c libgimpwidgets: make using GimpColorProfileComboBox easier
If the passed dialog is a GimpColorProfileChooserDialog, handle its
"response" signal automatically and also destroy it when the combo box
is destroyed (before we leaked all dialogs). Remove the same callback
from all places using GimpColorProfileComboBox.
2014-04-04 17:09:54 +02:00
3f826d02fa libgimpwidgets: make GimpColorProfileComboBox use lcms
and improve gimp_color_profile_combo_box_set_active() to get the
profile's label from the ICC file if no label was provided. Simplifies
all its callers and removes code duplication.
2014-04-02 13:03:52 +02:00
d7037650df libgimpcolor: add gimp_lcms_profile_get_label()
which returns a string meant to label the profile in the GUI, it's
either the profile's description, its model, or "(unnamed profile)" as
a fallback. Use the function instead of duplicating that logic
inconsistently and imcompletely all over the place.
2014-03-30 03:12:42 +02:00
32e47cf70d libgimpcolor: add gimp_lcms_profile_is_equal()
and remove all of our own MD5 digest code and API. is_equal() uses
lcms' own MD5 API which I missed before. Thanks Elle for pointing that
out :)
2014-03-29 10:40:47 +01:00
b3395d989e libgimpcolor: return an optional MD5 digest from gimp_lcms_create_srgb_profile()
pass NULL in most places, use the feature in the lcms.c plu-gin.
2014-03-23 23:34:47 +01:00
191b2aa2e8 modules: verify that GimpColorConfig.rgb_profile is actually for RGB 2014-03-23 21:16:39 +01:00
251dd91395 modules: fix memory leaks in color-selector-cmyk.c
Also clean up a bit and make the profile label's tooltip show
the profile's summary.
2014-03-16 15:57:14 +01:00
ebc53672cb libgimpcolor: add gimp_lcms_profile_is_rgb() and _is_cmyk()
And change all lcms code to use it.
2014-03-15 21:47:13 +01:00
a277a5b66f modules: don't use CamelCase variable names in display-filter-proof.c 2014-03-15 21:47:13 +01:00
89b489b9bb modules, plug-ins: use GimpColorProfileChooserDialog
instead of selfmade file choosers for picking color profiles from
disk.
2014-03-14 23:02:14 +01:00
ceb31cc02e modules: use gimp_lcms_profile_get_summary() in the lcms display filter 2014-03-14 20:26:15 +01:00
eee6fa1e4b libgimpcolor: start adding profile utility functions to gimplcms.[ch]
Add functions to get a profile's description, manufacturer, model and
copyright, and use them instead of implementing the same 10 times.

Also add a GimpColorProfile typedef which avoids both having to
include lcms globally or using a gpointer instead (which looks bad and
non-descriptive in an API).
2014-03-14 01:48:39 +01:00
f078cc5992 modules: make display-filter-lcms.c find the right monitor...
...when its GimpColorManaged's GdkWindow exists but is hidden, which
happens for all but the active tab of a single window with multiple
images open.
2014-03-13 22:39:03 +01:00
05c5ca3216 Bug 723787 - Neutral sRGB profile matching Argyllcms sRGB.icm
Add gimp_lcms_create_srgb_profile() to libgimpcolor and use it where
we used to call cmsCreate_sRGBProfile().
2014-02-09 23:10:56 +01:00
84c132addc Bug 721553 - License text contains obsolete FSF postal address
These files were forgotten when changing license from GPL2 to GPL3.
2014-01-05 14:25:46 +01:00