Code

Use subdirectories with icon sizes.
[inkscape.git] / src / widgets / sp-color-scales.cpp
index 2cc4915b8c9ce86fe96748eb7d76bc49b4a4dac6..fb8bb0795ef5d38c328bcc3cc7a845d896903835 100644 (file)
@@ -10,6 +10,7 @@
 #include <glibmm/i18n.h>
 #include "../dialogs/dialog-events.h"
 #include "sp-color-scales.h"
+#include "svg/svg-icc-color.h"
 
 #define CSC_CHANNEL_R (1 << 0)
 #define CSC_CHANNEL_G (1 << 1)
@@ -45,6 +46,8 @@ static SPColorSelectorClass *parent_class;
 #define XPAD 4
 #define YPAD 1
 
+#define noDUMP_CHANGE_INFO 1
+
 GType
 sp_color_scales_get_type (void)
 {
@@ -239,6 +242,10 @@ void ColorScales::_recalcColor( gboolean changing )
             g_warning ("file %s: line %d: Illegal color selector mode %d", __FILE__, __LINE__, _mode);
             break;
         }
+
+        /* Preserve ICC */
+        color.icc = _color.icc ? new SVGICCColor(*_color.icc) : 0;
+
         _updateInternals( color, alpha, _dragging );
     }
     else
@@ -272,7 +279,7 @@ void ColorScales::_setRangeLimit( gdouble upper )
 void ColorScales::_colorChanged()
 {
 #ifdef DUMP_CHANGE_INFO
-    g_message("ColorScales::_colorChanged( this=%p, %f, %f, %f,   %f)", this, color.v.c[0], color.v.c[1], color.v.c[2], alpha );
+    g_message("ColorScales::_colorChanged( this=%p, %f, %f, %f,   %f)", this, _color.v.c[0], _color.v.c[1], _color.v.c[2], _alpha );
 #endif
     gfloat tmp[3];
     gfloat c[5] = {0.0, 0.0, 0.0, 0.0};
@@ -394,16 +401,16 @@ void ColorScales::setMode(SPColorScalesMode mode)
        switch (mode) {
        case SP_COLOR_SCALES_MODE_RGB:
                _setRangeLimit(255.0);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_R"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_R:"));
                gtk_tooltips_set_tip (_tt, _s[0], _("Red"), NULL);
                gtk_tooltips_set_tip (_tt, _b[0], _("Red"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_G"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_G:"));
                gtk_tooltips_set_tip (_tt, _s[1], _("Green"), NULL);
                gtk_tooltips_set_tip (_tt, _b[1], _("Green"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_B"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_B:"));
                gtk_tooltips_set_tip (_tt, _s[2], _("Blue"), NULL);
                gtk_tooltips_set_tip (_tt, _b[2], _("Blue"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
                gtk_tooltips_set_tip (_tt, _s[3], _("Alpha (opacity)"), NULL);
                gtk_tooltips_set_tip (_tt, _b[3], _("Alpha (opacity)"), NULL);
                sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
@@ -420,16 +427,16 @@ void ColorScales::setMode(SPColorScalesMode mode)
                break;
        case SP_COLOR_SCALES_MODE_HSV:
                _setRangeLimit(255.0);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_H"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_H:"));
                gtk_tooltips_set_tip (_tt, _s[0], _("Hue"), NULL);
                gtk_tooltips_set_tip (_tt, _b[0], _("Hue"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_S"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_S:"));
                gtk_tooltips_set_tip (_tt, _s[1], _("Saturation"), NULL);
                gtk_tooltips_set_tip (_tt, _b[1], _("Saturation"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_L"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_L:"));
                gtk_tooltips_set_tip (_tt, _s[2], _("Lightness"), NULL);
                gtk_tooltips_set_tip (_tt, _b[2], _("Lightness"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_A:"));
                gtk_tooltips_set_tip (_tt, _s[3], _("Alpha (opacity)"), NULL);
                gtk_tooltips_set_tip (_tt, _b[3], _("Alpha (opacity)"), NULL);
                sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), (guchar*)sp_color_scales_hue_map ());
@@ -448,19 +455,19 @@ void ColorScales::setMode(SPColorScalesMode mode)
                break;
        case SP_COLOR_SCALES_MODE_CMYK:
                _setRangeLimit(100.0);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_C"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[0]), _("_C:"));
                gtk_tooltips_set_tip (_tt, _s[0], _("Cyan"), NULL);
                gtk_tooltips_set_tip (_tt, _b[0], _("Cyan"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_M"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[1]), _("_M:"));
                gtk_tooltips_set_tip (_tt, _s[1], _("Magenta"), NULL);
                gtk_tooltips_set_tip (_tt, _b[1], _("Magenta"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_Y"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[2]), _("_Y:"));
                gtk_tooltips_set_tip (_tt, _s[2], _("Yellow"), NULL);
                gtk_tooltips_set_tip (_tt, _b[2], _("Yellow"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_K"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[3]), _("_K:"));
                gtk_tooltips_set_tip (_tt, _s[3], _("Black"), NULL);
                gtk_tooltips_set_tip (_tt, _b[3], _("Black"), NULL);
-               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[4]), _("_A"));
+               gtk_label_set_markup_with_mnemonic (GTK_LABEL (_l[4]), _("_A:"));
                gtk_tooltips_set_tip (_tt, _s[4], _("Alpha (opacity)"), NULL);
                gtk_tooltips_set_tip (_tt, _b[4], _("Alpha (opacity)"), NULL);
                sp_color_slider_set_map (SP_COLOR_SLIDER (_s[0]), NULL);
@@ -468,11 +475,13 @@ void ColorScales::setMode(SPColorScalesMode mode)
                gtk_widget_show (_s[4]);
                gtk_widget_show (_b[4]);
                _updating = TRUE;
-               sp_color_rgb_to_cmyk_floatv (c, rgba[0], rgba[1], rgba[2]);
-               setScaled( _a[0], c[0] );
-               setScaled( _a[1], c[1] );
-               setScaled( _a[2], c[2] );
-               setScaled( _a[3], c[3] );
+
+                sp_color_rgb_to_cmyk_floatv (c, rgba[0], rgba[1], rgba[2]);
+                setScaled( _a[0], c[0] );
+                setScaled( _a[1], c[1] );
+                setScaled( _a[2], c[2] );
+                setScaled( _a[3], c[3] );
+
                setScaled( _a[4], rgba[3] );
                _updating = FALSE;
                _updateSliders( CSC_CHANNELS_ALL );