Commit Graph

13 Commits

Author SHA1 Message Date
Jehan de83bca814 app, libgimpwidgets: make GimpColorSelector sync with soft-proofing.
Until now we only had the case of the CMYK color selector using the
soft-proofing profile. Yet this is also interesting for other color
selectors, in particular to show out-of-gamut colors. Indeed if we
enable soft-proofing on the active image, it is interesting to show the
intersection of the current RGB/Grayscale space gamut with the
soft-proofing gamut.

Right now, this is only used in GimpColorSelect when showing colors in
LCh color space.
2024-02-11 23:28:03 +01:00
Jehan e104196cb7 app, libgimpwidgets: "Scales" color selection now space-aware.
This commit adds gimp_color_selector_set_format() which is meant to give
awareness of the target color format for which we are selecting colors.
Right now, I am only using this information on the Scales selection
method, which means that now colors you read and select are in the
target space. Even better, the out-of-gamut shown happens in the with
LCH scales is for the target space too. As tested, it already makes
quite a difference for an image in sRGB vs. say adobeRGB.

Note that right now, I only use the format information as a space, but
in fact, I made the API to be about a format because the actual format
can be used wisely too. First we may want to do different thing
depending on the color model itself (which the space may give away or
not, especially when using default spaces or when we'll have images
using models with no space in the future, such as CIE Lab). But also
whether the image is following the space TRC or is linear (or
perceptual) would change how we represent the data. If we were to show
non-linear values in the Colors dockable but when painting, the color
picker shows linear values for instance, it might be puzzling to people.
2024-02-11 23:28:03 +01:00
Nikc 1c81c426ae Modules: Convert CMYK color selector to babl 2022-08-15 21:14:14 +00: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 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 0e35af2723 libgimpwidgets: move all GimpColorNotebook members to a private struct. 2018-05-20 21:06:28 +02: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
Michael Natterer e8843a2372 reset binary age because of struct changes below. require GIMP 1.3.26.
2004-01-29  Michael Natterer  <mitch@gimp.org>

	* configure.in: reset binary age because of struct changes below.
	* m4macros/gimp-2.0.m4: require GIMP 1.3.26.

	* libgimpmodule/gimpmodule.h
	* libgimpmodule/gimpmoduledb.h
	* libgimpthumb/gimpthumbnail.h
	* libgimpwidgets/gimpbutton.h
	* libgimpwidgets/gimpchainbutton.h
	* libgimpwidgets/gimpcolorarea.h
	* libgimpwidgets/gimpcolorbutton.h
	* libgimpwidgets/gimpcolordisplay.h
	* libgimpwidgets/gimpcolordisplaystack.h
	* libgimpwidgets/gimpcolornotebook.h
	* libgimpwidgets/gimpcolorscale.h
	* libgimpwidgets/gimpcolorselection.h
	* libgimpwidgets/gimpcolorselector.h
	* libgimpwidgets/gimpdialog.h
	* libgimpwidgets/gimpfileentry.h
	* libgimpwidgets/gimpmemsizeentry.h
	* libgimpwidgets/gimpoffsetarea.h
	* libgimpwidgets/gimppickbutton.h
	* libgimpwidgets/gimppixmap.h
	* libgimpwidgets/gimpsizeentry.h
	* libgimpwidgets/gimpunitmenu.h: added 4 function pointers padding
	to all class structures.
2004-01-29 00:21:33 +00:00
Michael Natterer 7efa81d1da libgimp/gimp.h libgimp/gimpbrushmenu.h libgimp/gimpbrushselect.[ch]
2003-12-05  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimp.h
	* libgimp/gimpbrushmenu.h
	* libgimp/gimpbrushselect.[ch]
	* libgimp/gimpfontmenu.[ch]
	* libgimp/gimpfontselect.[ch]
	* libgimp/gimpgradientmenu.h
	* libgimp/gimpgradientselect.[ch]
	* libgimp/gimpmenu.h
	* libgimp/gimpmisc.[ch]
	* libgimp/gimpmiscui.[ch]
	* libgimp/gimppatternmenu.h
	* libgimp/gimppatternselect.[ch]
	* libgimp/gimppixelrgn.[ch]
	* libgimp/gimpproceduraldb.c
	* libgimp/gimpselection.c
	* libgimp/gimptile.h
	* libgimp/gimptypes.h
	* libgimp/gimpui.h
	* libgimp/gimpuitypes.h
	* libgimp/libgimp-intl.h
	* libgimp/stdplugins-intl.h
	* libgimpbase/gimpbase.h
	* libgimpbase/gimpdatafiles.c
	* libgimpbase/gimpenv.c
	* libgimpbase/gimpparasite.[ch]
	* libgimpbase/gimpparasiteio.[ch]
	* libgimpbase/gimpsignal.[ch]
	* libgimpbase/gimputils.c
	* libgimpcolor/gimpadaptivesupersample.[ch]
	* libgimpcolor/gimpbilinear.[ch]
	* libgimpmath/gimpmath.h
	* libgimpmath/gimpmathtypes.h
	* libgimpwidgets/gimpbutton.[ch]
	* libgimpwidgets/gimpchainbutton.h
	* libgimpwidgets/gimpcolorarea.[ch]
	* libgimpwidgets/gimpcolornotebook.h
	* libgimpwidgets/gimpcolorscale.[ch]
	* libgimpwidgets/gimpcolorscales.h
	* libgimpwidgets/gimpcolorselect.h
	* libgimpwidgets/gimpoffsetarea.h
	* libgimpwidgets/gimppixmap.[ch]: removed trailing whitespace.
2003-12-05 15:55:15 +00:00
Michael Natterer 2743f9fae1 added virtual functions set_toggles_visible() and set_toggles_sensitive().
2002-11-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorselector.[ch]: added virtual functions
	set_toggles_visible() and set_toggles_sensitive(). Added a
	stock_id. Emit "color_changed" and "channel_changed" on
	set_color() and set_channel() resp.

	* libgimpwidgets/gimpcolornotebook.[ch]: implement the new
	methods.  Added gimp_color_notebook_set_has_page() to control
	which selectors a notebook contains.

	* libgimpwidgets/gimpcolorscales.[ch]: removed the toggle
	API and implement the new methods.

	* libgimpwidgets/gimpcolorselect.c: added toggle buttons for the
	channels so the widget doesn't need external ones.

	* app/gui/color-notebook.c: changed accordingly.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-color-triangle-16.png: added a
	(bad) icon for the triangle color selector.

	* modules/colorsel_triangle.c: use the new icon.
	* modules/colorsel_water.c: use the "Paintbrush" icon for now.

	* app/widgets/gimpcoloreditor.[ch]: new widget for editing the
	FG/BG color featuring a color notebook, stock buttons for
	selecting the pages and a GimpPickButton.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added a dockable wrapper for GimpColorEditor.

	* app/gui/menus.c: added it to the menus. Also added separate
	Layers, Channels and Paths entries. Bind <ctrl>L to the new
	callback so it doesn't always create a new layers dialog.
2002-11-05 00:02:56 +00:00
Michael Natterer c97782f358 made the color notebook a GimpColorSelector subclass so they have the same
2002-10-29  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolornotebook.[ch]: made the color notebook
	a GimpColorSelector subclass so they have the same API.

	* app/gui/color-notebook.c: changed accordingly.
2002-10-29 12:49:02 +00:00
Michael Natterer 5f750eae3c the notebook as known from the main color selection as new widget.
2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolornotebook.[ch]: the notebook as known
	from the main color selection as new widget.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpcolorselector.h
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h: changed accordingly.

	* app/gui/color-notebook.c: use the new widget.

2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/tmpl/gimpcolornotebook.sgml: added GimpColorNotebook.

	* libgimpwidgets/libgimpwidgets-docs.sgml
	* libgimpwidgets/libgimpwidgets-sections.txt
	* libgimpwidgets/libgimpwidgets.types
	* libgimpwidgets/tmpl/gimpcolordisplay.sgml: updated.
2002-10-28 13:19:02 +00:00