Commit Graph

22 Commits

Author SHA1 Message Date
Jehan 559297a5cb app, libgimp*: more GeglColor's space invasion.
- New function gimp_cairo_set_source_color() which is meant to replace
  gimp_cairo_set_source_rgb(a?)() eventually. This new function sets the Cairo
  source color, using the target monitor's profile of the widget where the Cairo
  surface is meant to be drawn on. It also uses the color management settings
  (such as whether a custom profile was set, instead of using system profile, or
  also simply whether color management was disabled at all). It doesn't
  soft-proof the color yet.
- Padding and out-of-gamut colors drawing now use the new
  gimp_cairo_set_source_color(). These don't need any soft-proofing anyway.
- Out-of-gamut color property in GimpColorConfig is now a GeglColor property.
2024-02-11 23:28:02 +01:00
Michael Natterer 5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Michael Natterer bb2a9d119f libgimpconfig: move all GimpColorConfig members to private 2018-05-20 21:06:33 +02:00
Michael Natterer f4f106ad26 libimp*: add private pointers to all instance structs
even if we don't have private members (yet). Also make class padding 8
pointers in all headers. This commit moves nothing to private, it just
makes all headers consistent and adjusts .c files accordigly.
2018-05-20 21:06:33 +02:00
Michael Natterer 86e3f31a03 libgimpconfig: remove all deprecated cruft 2018-05-20 21:06:29 +02:00
Michael Natterer a743ae712b libgimpconfig: add "optimize" options for display and softproofing
Honor them in gimp_widget_get_color_transform() and make them
configurable in prefs. The code and GUI avoid the negation in
the lcms "NOOPTIMIZE" flag.
2016-06-06 01:15:26 +02:00
Michael Natterer 8abf1aab5e libgimpconfig: add getters for all GimpColorConfig members
and use them instead of peeking the public object struct.
2016-06-05 23:58:02 +02:00
Michael Natterer fcf5b708e5 libgimpwidgets: rename gimp_color_config_get_printer_color_profile()
to gimp_color_config_get_simulation_color_profile(), along with
various internal "printer" strings. Also reduce the number of
user-visible "print" stuff from the preferences color management page.
2016-06-05 18:00:24 +02:00
Michael Natterer 5cbe6f2003 libgimpconfig: add a preferred gray profile to GimpColorConfig 2015-12-14 01:54:00 +01:00
Michael Natterer 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
Michael Natterer 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
Michael Natterer 54553487f2 libgimpconfig: add functions to get GimpColorProfiles to GimpColorConfig
gimp_color_config_get_rgb,cmyk,display,printer_profile()
2015-05-06 16:32:17 +02:00
Elle Stone a4821914d3 Bug 720045 - Add black point compensation to Preferences/Color Management
Make black point compensation configurable separately for both proof
and display.
2013-12-09 02:23:31 +01:00
Michael Natterer 844df2b4df libgimp*: add guards that #error out if individual files are included
This only helps to maintain proper includes in app/ and shouldn't
affect plug-ins at all, because these are supposed to only include the
main headers from libgimp/ since the beginning of time.

The gimpfootypes.h files do not have these guards, so we can continue
to maintain app/'s include policy that is very likely to error out if
wrong things are included.
2011-04-28 14:30:41 +02:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Sven Neumann 5f7bf16e57 declared the fields as public so that they show up in the API
2007-10-27  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpcolorconfig.h (struct _GimpColorConfig):
	declared the fields as public so that they show up in the API
	documentation.


svn path=/trunk/; revision=23965
2007-10-27 14:06:03 +00:00
Sven Neumann 169c7dbc46 added settings for marking out-of-gamut colors in the Print Simulation
2007-10-05  Sven Neumann  <sven@gimp.org>

        * libgimpconfig/gimpcolorconfig.[ch]: added settings for marking
        out-of-gamut colors in the Print Simulation (bug #476824).

        * app/dialogs/preferences-dialog.c: added a check-button for the
        out-of-gamut warning and tweaked the layout of the Color Management
        page to make the relationship of the settings more obvious.

        * modules/cdisplay_lcms.c: mark out-of-gamut colors.


svn path=/trunk/; revision=23729
2007-10-05 08:21:27 +00:00
Sven Neumann 3490c49252 Added basic support for the proposed ICC Profiles In X Specification
2005-06-24  Sven Neumann  <sven@gimp.org>

	Added basic support for the proposed ICC Profiles In X Specification
	(http://burtonini.com/temp/xicc-specification-0.1.html).

	* libgimpconfig/gimpcolorconfig.[ch]: added a configuration option
	"display-profile-from-gdk", default to TRUE.

	* modules/cdisplay_lcms.c: try to retrieve the display color
	profile from the "_ICC_PROFILE" profile on the default screen's
	root window.
2005-06-24 01:38:53 +00:00
Sven Neumann 5157dba5cb Another step towards color management:
2005-02-21  Sven Neumann  <sven@gimp.org>

	Another step towards color management:

	* modules/Makefile.am
	* modules/cdisplay_lcms.c: added new color display module that
	implements color management for the image displays. Still work
	in progress...

	* modules/cdisplay_proof.c: no need to include <string.h> here.

	* libgimpconfig/gimpcolorconfig.[ch]: added new property
	"display-module" to configure the display color management module.

	* app/display/gimpdisplayshell-filter.[ch]
	* app/display/gimpdisplayshell.c: create the configured color
	management display filter for each display.
2005-02-21 00:45:17 +00:00
Sven Neumann 4fc86a043c gimp-mkenums doesn't seem to like newlines in enum definitions.
2005-02-08  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpcolorconfig-enums.[ch]: gimp-mkenums doesn't
	seem to like newlines in enum definitions.

	* libgimpconfig/gimpcolorconfig.[ch]: removed the "profile-path"
	property for now. It doesn't work too well with GimpFileEntry.
	We can add it back later if it turns out that we really need it.

	* app/dialogs/preferences-dialog.c
	* app/widgets/gimphelp-ids.h: added a color management page to the
	preferences dialog.
2005-02-08 00:04:50 +00:00
Sven Neumann 5257aa9cbb libgimpconfig/Makefile.am libgimpconfig/gimpconfig.def
2005-02-07  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/Makefile.am
	* libgimpconfig/gimpconfig.def
	* libgimpconfig/gimpconfig.h
	* libgimpconfig/gimpconfigtypes.h: install the GimpColorConfig
	header and include it.

	* libgimpconfig/gimpcolorconfig.[ch]: commented out some options
	that will only be needed later and that will most likely undergo
	some changes.

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: added GimpColorConfig to GimpRc.
2005-02-07 16:19:08 +00:00
Sven Neumann 2eeefb13d2 libgimpconfig/Makefile.am libgimpconfig/gimpcolorconfig-enums.[ch] added a
2005-02-06  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/Makefile.am
	* libgimpconfig/gimpcolorconfig-enums.[ch]
	* libgimpconfig/gimpcolorconfig.[ch]: added a first draft of a
	color management configuration object. Not yet installed nor used
	by anything. This is based on an older patch by Stefan Döhla.
2005-02-06 22:15:54 +00:00