Should resolve#11370
Per Pippin, HSV double is not a valid
color model for babl. We need to change
to HSV float to resolve the warning when
selecting colors on the Color Wheel.
What this commit does is keep the same code logic while moving to
GeglColor. Yet it's not **really** space-invaded yet. What we need to do
now:
1. Take into account the image space, and this is what we must navigate
through, in particular for various representations of RGB or HSV.
I.e. that if the active image is in anyRGB, the RGB values shown must
be within anyRGB. Right now, everything is still shown/used as sRGB
(even though it's properly retrieved and transformed to the target
space thanks to GeglColor).
2. Show space info to make things clear and explicit, by adding some
label somewhere.
3. Allow to switch between image and softproof spaces, regarding
out-of-gamut display. I.e. that while RGB/HSV must be shown within
the image space (assuming it's anyRGB), we may want to show
out-of-gamut area (pink areas) within the softproof space. This may
mean adding a checkbox. Or maybe simply taking into account whether
we are in softproof mode or not?
4. We can likely move off gimp_widget_get_color_transform() into using
gimp_widget_get_render_space() for display drawing. We don't need any
soft-proofing or black point compensation for any of these widgets so
pure babl is fine. Indeed we want to show any in-gamut color
correctly (and not transformed according to specific intents or
through soft-proofing). We will take care of the proofing case with
out-of-gamut area showing only.
5. In the various drawing functions, we should move to
CAIRO_FORMAT_RGBA128F. The color selection area might be wide enough
that it makes sense to be more accurate, especially as we are
essentially showing color gradients in 1 or 2 directions in these
various widgets.
The GIR parser is giving warnings because both e.g. a signal, a
corresponding vfunc and a method emitting it are named
"channel_changed", which can and will give issues in some bindings.
The easiest option is to follow the general convention of starting the
signal emitters with `emit_`, which also makes clear the intention of
the method.
- remove redundant frames, 3d-frames are gone anyway, so no need to
keep double out/in frames around
- give all color selector classes CSS names
- add/fix some theme CSS styles
Try to sort all GIMP_ICON_* defines into FDO categories like in
https://specifications.freedesktop.org/icon-naming-spec/latest/ar01s04.html
Add defines for all icons we override, rename some icons to their FDO
standard names, and mark the ones we duplicate with a comment so we
don't forget to rename those to standard names in 3.0.
So it works with all GObject versions, until we determine how useful
it is generally, and what API it should get for possible
libgimpwidgets inclusion.
Swallow GtkHSV back into GIMP and call it GimpColorWheel. Keep it in
modules/ for the time being. Clean up and undeprecate it. Replace
set_metrics() API by set_ring_fraction() and make it follow the size
of its parent container, making its use straightforward. Kept it clean
of GIMP color types so it can be easily adapted by e.g. Inkscape.
2009-03-22 Michael Natterer <mitch@gimp.org>
* modules/color-selector-wheel.c: remove GTK+ version check and
related evilness because we depend on a proper GKT+ version now.
svn path=/trunk/; revision=28195
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
2008-09-25 Michael Natterer <mitch@gimp.org>
Bug 553530 – fatal error: Segmentation fault - when attempting to
bring up color-picker:
* modules/color-selector-wheel.c: declare gtk_hsv_get_type() if
not already done by GTK+. Fixes confusion about its return value
being 32 or 64 bit on 64 bit machines.
svn path=/trunk/; revision=27054
2008-09-25 Michael Natterer <mitch@gimp.org>
Bug 549195 – Color Wheel not working (GtkHSV):
* modules/color-selector-wheel.c: change packing and size requests
of the GtkHSV and its optional GtkAligmnent depending on the GTK+
version used to make it work with both the old and the new version
of the widget. Evil hacks, better don't look :)
svn path=/trunk/; revision=27053
2008-08-12 Michael Natterer <mitch@gimp.org>
* modules/color-selector-wheel.c: override the wheel's
size-allocate and return a small requisition that allows to be
resized smaller again.
svn path=/trunk/; revision=26511
2008-08-11 Michael Natterer <mitch@gimp.org>
* modules/Makefile.am
* modules/*.c: renamed all modules to color-selector-foo.c,
display-filter-foo.c and controller-foo.c
svn path=/trunk/; revision=26506