[gimp/pippin/linear-is-the-new-black: 12/14] app: add more non-linear/linear alternative layer modes



commit 42173d1798f655797768383adce0caed561d29d3
Author: Øyvind Kolås <pippin gimp org>
Date:   Sun Jan 1 21:26:52 2017 +0100

    app: add more non-linear/linear alternative layer modes

 app/actions/context-commands.c         |    7 +++++-
 app/actions/layers-commands.c          |    5 ++++
 app/core/core-enums.c                  |   32 +++++++++++++++++++----------
 app/core/core-enums.h                  |   17 ++++++++++-----
 app/gegl/gimp-gegl-nodes.c             |   17 +++++++++++++--
 app/widgets/gimpwidgets-constructors.c |   11 +++++++--
 libgimp/gimpenums.h                    |   17 ++++++++++-----
 tools/pdbgen/enums.pl                  |   34 +++++++++++++++++++------------
 8 files changed, 97 insertions(+), 43 deletions(-)
---
diff --git a/app/actions/context-commands.c b/app/actions/context-commands.c
index 39dff8f..43f3e04 100644
--- a/app/actions/context-commands.c
+++ b/app/actions/context-commands.c
@@ -77,7 +77,12 @@ static const GimpLayerModeEffects paint_modes[] =
   GIMP_LCH_CHROMA_MODE,
   GIMP_LCH_COLOR_MODE,
   GIMP_LCH_LIGHTNESS_MODE,
-  GIMP_NORMAL_SRGB_MODE
+  GIMP_NORMAL_SRGB_MODE,
+  GIMP_MULTIPLY_SRGB_MODE,
+  GIMP_DIVIDE_SRGB_MODE,
+  GIMP_SCREEN_SRGB_MODE,
+  GIMP_ADDITION_SRGB_MODE,
+  GIMP_SUBTRACT_SRGB_MODE
 };
 
 
diff --git a/app/actions/layers-commands.c b/app/actions/layers-commands.c
index fd26c1c..57210aa 100644
--- a/app/actions/layers-commands.c
+++ b/app/actions/layers-commands.c
@@ -87,8 +87,11 @@ static const GimpLayerModeEffects layer_modes[] =
   GIMP_NORMAL_SRGB_MODE,
   GIMP_DISSOLVE_MODE,
   GIMP_MULTIPLY_MODE,
+  GIMP_MULTIPLY_SRGB_MODE,
   GIMP_DIVIDE_MODE,
+  GIMP_DIVIDE_SRGB_MODE,
   GIMP_SCREEN_MODE,
+  GIMP_SCREEN_SRGB_MODE,
   GIMP_NEW_OVERLAY_MODE,
   GIMP_DODGE_MODE,
   GIMP_BURN_MODE,
@@ -98,7 +101,9 @@ static const GimpLayerModeEffects layer_modes[] =
   GIMP_GRAIN_MERGE_MODE,
   GIMP_DIFFERENCE_MODE,
   GIMP_ADDITION_MODE,
+  GIMP_ADDITION_SRGB_MODE,
   GIMP_SUBTRACT_MODE,
+  GIMP_SUBTRACT_SRGB_MODE,
   GIMP_DARKEN_ONLY_MODE,
   GIMP_LIGHTEN_ONLY_MODE,
   GIMP_HUE_MODE,
diff --git a/app/core/core-enums.c b/app/core/core-enums.c
index 81d6f50..c1dd641 100644
--- a/app/core/core-enums.c
+++ b/app/core/core-enums.c
@@ -292,19 +292,19 @@ gimp_layer_mode_effects_get_type (void)
     { GIMP_NORMAL_SRGB_MODE, "GIMP_NORMAL_SRGB_MODE", "normal-srgb-mode" },
     { GIMP_DISSOLVE_MODE, "GIMP_DISSOLVE_MODE", "dissolve-mode" },
     { GIMP_BEHIND_MODE, "GIMP_BEHIND_MODE", "behind-mode" },
-    { GIMP_MULTIPLY_MODE, "GIMP_MULTIPLY_MODE", "multiply-mode" },
-    { GIMP_SCREEN_MODE, "GIMP_SCREEN_MODE", "screen-mode" },
+    { GIMP_MULTIPLY_SRGB_MODE, "GIMP_MULTIPLY_SRGB_MODE", "multiply-srgb-mode" },
+    { GIMP_SCREEN_SRGB_MODE, "GIMP_SCREEN_SRGB_MODE", "screen-srgb-mode" },
     { GIMP_OVERLAY_MODE, "GIMP_OVERLAY_MODE", "overlay-mode" },
     { GIMP_DIFFERENCE_MODE, "GIMP_DIFFERENCE_MODE", "difference-mode" },
-    { GIMP_ADDITION_MODE, "GIMP_ADDITION_MODE", "addition-mode" },
-    { GIMP_SUBTRACT_MODE, "GIMP_SUBTRACT_MODE", "subtract-mode" },
+    { GIMP_ADDITION_SRGB_MODE, "GIMP_ADDITION_SRGB_MODE", "addition-srgb-mode" },
+    { GIMP_SUBTRACT_SRGB_MODE, "GIMP_SUBTRACT_SRGB_MODE", "subtract-srgb-mode" },
     { GIMP_DARKEN_ONLY_MODE, "GIMP_DARKEN_ONLY_MODE", "darken-only-mode" },
     { GIMP_LIGHTEN_ONLY_MODE, "GIMP_LIGHTEN_ONLY_MODE", "lighten-only-mode" },
     { GIMP_HUE_MODE, "GIMP_HUE_MODE", "hue-mode" },
     { GIMP_SATURATION_MODE, "GIMP_SATURATION_MODE", "saturation-mode" },
     { GIMP_COLOR_MODE, "GIMP_COLOR_MODE", "color-mode" },
     { GIMP_VALUE_MODE, "GIMP_VALUE_MODE", "value-mode" },
-    { GIMP_DIVIDE_MODE, "GIMP_DIVIDE_MODE", "divide-mode" },
+    { GIMP_DIVIDE_SRGB_MODE, "GIMP_DIVIDE_SRGB_MODE", "divide-srgb-mode" },
     { GIMP_DODGE_MODE, "GIMP_DODGE_MODE", "dodge-mode" },
     { GIMP_BURN_MODE, "GIMP_BURN_MODE", "burn-mode" },
     { GIMP_HARDLIGHT_MODE, "GIMP_HARDLIGHT_MODE", "hardlight-mode" },
@@ -318,6 +318,11 @@ gimp_layer_mode_effects_get_type (void)
     { GIMP_LCH_COLOR_MODE, "GIMP_LCH_COLOR_MODE", "lch-color-mode" },
     { GIMP_LCH_LIGHTNESS_MODE, "GIMP_LCH_LIGHTNESS_MODE", "lch-lightness-mode" },
     { GIMP_NORMAL_MODE, "GIMP_NORMAL_MODE", "normal-mode" },
+    { GIMP_MULTIPLY_MODE, "GIMP_MULTIPLY_MODE", "multiply-mode" },
+    { GIMP_DIVIDE_MODE, "GIMP_DIVIDE_MODE", "divide-mode" },
+    { GIMP_SCREEN_MODE, "GIMP_SCREEN_MODE", "screen-mode" },
+    { GIMP_ADDITION_MODE, "GIMP_ADDITION_MODE", "addition-mode" },
+    { GIMP_SUBTRACT_MODE, "GIMP_SUBTRACT_MODE", "subtract-mode" },
     { GIMP_ERASE_MODE, "GIMP_ERASE_MODE", "erase-mode" },
     { GIMP_REPLACE_MODE, "GIMP_REPLACE_MODE", "replace-mode" },
     { GIMP_ANTI_ERASE_MODE, "GIMP_ANTI_ERASE_MODE", "anti-erase-mode" },
@@ -326,22 +331,22 @@ gimp_layer_mode_effects_get_type (void)
 
   static const GimpEnumDesc descs[] =
   {
-    { GIMP_NORMAL_SRGB_MODE, NC_("layer-mode-effects", "Normal (with sRGB gamma)"), NULL },
+    { GIMP_NORMAL_SRGB_MODE, NC_("layer-mode-effects", "Normal (non-linear)"), NULL },
     { GIMP_DISSOLVE_MODE, NC_("layer-mode-effects", "Dissolve"), NULL },
     { GIMP_BEHIND_MODE, NC_("layer-mode-effects", "Behind"), NULL },
-    { GIMP_MULTIPLY_MODE, NC_("layer-mode-effects", "Multiply"), NULL },
-    { GIMP_SCREEN_MODE, NC_("layer-mode-effects", "Screen"), NULL },
+    { GIMP_MULTIPLY_SRGB_MODE, NC_("layer-mode-effects", "Multiply (non-linear)"), NULL },
+    { GIMP_SCREEN_SRGB_MODE, NC_("layer-mode-effects", "Screen (non-linear)"), NULL },
     { GIMP_OVERLAY_MODE, NC_("layer-mode-effects", "Old broken Overlay"), NULL },
     { GIMP_DIFFERENCE_MODE, NC_("layer-mode-effects", "Difference"), NULL },
-    { GIMP_ADDITION_MODE, NC_("layer-mode-effects", "Addition"), NULL },
-    { GIMP_SUBTRACT_MODE, NC_("layer-mode-effects", "Subtract"), NULL },
+    { GIMP_ADDITION_SRGB_MODE, NC_("layer-mode-effects", "Addition (non-linear)"), NULL },
+    { GIMP_SUBTRACT_SRGB_MODE, NC_("layer-mode-effects", "Subtract"), NULL },
     { GIMP_DARKEN_ONLY_MODE, NC_("layer-mode-effects", "Darken only"), NULL },
     { GIMP_LIGHTEN_ONLY_MODE, NC_("layer-mode-effects", "Lighten only"), NULL },
     { GIMP_HUE_MODE, NC_("layer-mode-effects", "Hue (HSV)"), NULL },
     { GIMP_SATURATION_MODE, NC_("layer-mode-effects", "Saturation (HSV)"), NULL },
     { GIMP_COLOR_MODE, NC_("layer-mode-effects", "Color (HSV)"), NULL },
     { GIMP_VALUE_MODE, NC_("layer-mode-effects", "Value (HSV)"), NULL },
-    { GIMP_DIVIDE_MODE, NC_("layer-mode-effects", "Divide"), NULL },
+    { GIMP_DIVIDE_SRGB_MODE, NC_("layer-mode-effects", "Divide (non-linear)"), NULL },
     { GIMP_DODGE_MODE, NC_("layer-mode-effects", "Dodge"), NULL },
     { GIMP_BURN_MODE, NC_("layer-mode-effects", "Burn"), NULL },
     { GIMP_HARDLIGHT_MODE, NC_("layer-mode-effects", "Hard light"), NULL },
@@ -355,6 +360,11 @@ gimp_layer_mode_effects_get_type (void)
     { GIMP_LCH_COLOR_MODE, NC_("layer-mode-effects", "Color (LCH)"), NULL },
     { GIMP_LCH_LIGHTNESS_MODE, NC_("layer-mode-effects", "Lightness (LCH)"), NULL },
     { GIMP_NORMAL_MODE, NC_("layer-mode-effects", "Normal"), NULL },
+    { GIMP_MULTIPLY_MODE, NC_("layer-mode-effects", "Multiply"), NULL },
+    { GIMP_DIVIDE_MODE, NC_("layer-mode-effects", "Divide"), NULL },
+    { GIMP_SCREEN_MODE, NC_("layer-mode-effects", "Screen"), NULL },
+    { GIMP_ADDITION_MODE, NC_("layer-mode-effects", "Addition"), NULL },
+    { GIMP_SUBTRACT_MODE, NC_("layer-mode-effects", "Subtract"), NULL },
     { GIMP_ERASE_MODE, NC_("layer-mode-effects", "Erase"), NULL },
     { GIMP_REPLACE_MODE, NC_("layer-mode-effects", "Replace"), NULL },
     { GIMP_ANTI_ERASE_MODE, NC_("layer-mode-effects", "Anti erase"), NULL },
diff --git a/app/core/core-enums.h b/app/core/core-enums.h
index 172a5b9..6978ba5 100644
--- a/app/core/core-enums.h
+++ b/app/core/core-enums.h
@@ -154,22 +154,22 @@ GType gimp_layer_mode_effects_get_type (void) G_GNUC_CONST;
 
 typedef enum
 {
-  GIMP_NORMAL_SRGB_MODE,     /*< desc="Normal (with sRGB gamma)" >*/
+  GIMP_NORMAL_SRGB_MODE,     /*< desc="Normal (non-linear)"  >*/
   GIMP_DISSOLVE_MODE,        /*< desc="Dissolve"             >*/
   GIMP_BEHIND_MODE,          /*< desc="Behind"               >*/
-  GIMP_MULTIPLY_MODE,        /*< desc="Multiply"             >*/
-  GIMP_SCREEN_MODE,          /*< desc="Screen"               >*/
+  GIMP_MULTIPLY_SRGB_MODE,   /*< desc="Multiply (non-linear)">*/
+  GIMP_SCREEN_SRGB_MODE,     /*< desc="Screen (non-linear)"  >*/
   GIMP_OVERLAY_MODE,         /*< desc="Old broken Overlay"   >*/
   GIMP_DIFFERENCE_MODE,      /*< desc="Difference"           >*/
-  GIMP_ADDITION_MODE,        /*< desc="Addition"             >*/
-  GIMP_SUBTRACT_MODE,        /*< desc="Subtract"             >*/
+  GIMP_ADDITION_SRGB_MODE,   /*< desc="Addition (non-linear)">*/
+  GIMP_SUBTRACT_SRGB_MODE,   /*< desc="Subtract (non-linear)">*/
   GIMP_DARKEN_ONLY_MODE,     /*< desc="Darken only"          >*/
   GIMP_LIGHTEN_ONLY_MODE,    /*< desc="Lighten only"         >*/
   GIMP_HUE_MODE,             /*< desc="Hue (HSV)"            >*/
   GIMP_SATURATION_MODE,      /*< desc="Saturation (HSV)"     >*/
   GIMP_COLOR_MODE,           /*< desc="Color (HSV)"          >*/
   GIMP_VALUE_MODE,           /*< desc="Value (HSV)"          >*/
-  GIMP_DIVIDE_MODE,          /*< desc="Divide"               >*/
+  GIMP_DIVIDE_SRGB_MODE,     /*< desc="Divide (non-linear)"  >*/
   GIMP_DODGE_MODE,           /*< desc="Dodge"                >*/
   GIMP_BURN_MODE,            /*< desc="Burn"                 >*/
   GIMP_HARDLIGHT_MODE,       /*< desc="Hard light"           >*/
@@ -183,6 +183,11 @@ typedef enum
   GIMP_LCH_COLOR_MODE,       /*< desc="Color (LCH)"          >*/
   GIMP_LCH_LIGHTNESS_MODE,   /*< desc="Lightness (LCH)"      >*/
   GIMP_NORMAL_MODE,          /*< desc="Normal"               >*/
+  GIMP_MULTIPLY_MODE,        /*< desc="Multiply"             >*/
+  GIMP_DIVIDE_MODE,          /*< desc="Divide"               >*/
+  GIMP_SCREEN_MODE,          /*< desc="Screen"               >*/
+  GIMP_ADDITION_MODE,        /*< desc="Addition"             >*/
+  GIMP_SUBTRACT_MODE,        /*< desc="Subtract"             >*/
 
   /* internal modes, not available to the PDB */
   GIMP_ERASE_MODE      = 1000, /*< pdb-skip, desc="Erase"      >*/
diff --git a/app/gegl/gimp-gegl-nodes.c b/app/gegl/gimp-gegl-nodes.c
index 905eda8..d802ffd 100644
--- a/app/gegl/gimp-gegl-nodes.c
+++ b/app/gegl/gimp-gegl-nodes.c
@@ -150,15 +150,19 @@ gimp_gegl_mode_node_set_mode (GeglNode             *node,
 
   switch (mode)
     {
-    case GIMP_NORMAL_MODE:        operation = "gimp:normal-mode"; break;
+    case GIMP_NORMAL_MODE:
     case GIMP_NORMAL_SRGB_MODE:   operation = "gimp:normal-mode"; break;
     case GIMP_DISSOLVE_MODE:      operation = "gimp:dissolve-mode"; break;
     case GIMP_BEHIND_MODE:        operation = "gimp:behind-mode"; break;
+    case GIMP_MULTIPLY_SRGB_MODE: 
     case GIMP_MULTIPLY_MODE:      operation = "gimp:multiply-mode"; break;
+    case GIMP_SCREEN_SRGB_MODE:
     case GIMP_SCREEN_MODE:        operation = "gimp:screen-mode"; break;
     case GIMP_OVERLAY_MODE:       operation = "gimp:softlight-mode"; break;
     case GIMP_DIFFERENCE_MODE:    operation = "gimp:difference-mode"; break;
+    case GIMP_ADDITION_SRGB_MODE: 
     case GIMP_ADDITION_MODE:      operation = "gimp:addition-mode"; break;
+    case GIMP_SUBTRACT_SRGB_MODE:
     case GIMP_SUBTRACT_MODE:      operation = "gimp:subtract-mode"; break;
     case GIMP_DARKEN_ONLY_MODE:   operation = "gimp:darken-only-mode"; break;
     case GIMP_LIGHTEN_ONLY_MODE:  operation = "gimp:lighten-only-mode"; break;
@@ -166,6 +170,8 @@ gimp_gegl_mode_node_set_mode (GeglNode             *node,
     case GIMP_SATURATION_MODE:    operation = "gimp:saturation-mode"; break;
     case GIMP_COLOR_MODE:         operation = "gimp:color-mode"; break;
     case GIMP_VALUE_MODE:         operation = "gimp:value-mode"; break;
+
+    case GIMP_DIVIDE_SRGB_MODE:
     case GIMP_DIVIDE_MODE:        operation = "gimp:divide-mode"; break;
     case GIMP_DODGE_MODE:         operation = "gimp:dodge-mode"; break;
     case GIMP_BURN_MODE:          operation = "gimp:burn-mode"; break;
@@ -207,6 +213,7 @@ gimp_gegl_mode_node_set_mode (GeglNode             *node,
     case GIMP_MULTIPLY_MODE:
     case GIMP_SCREEN_MODE:
     case GIMP_ADDITION_MODE:
+    case GIMP_DIVIDE_MODE:
     case GIMP_SUBTRACT_MODE:
     case GIMP_DARKEN_ONLY_MODE:
     case GIMP_LIGHTEN_ONLY_MODE:
@@ -215,13 +222,17 @@ gimp_gegl_mode_node_set_mode (GeglNode             *node,
            NULL);
         break;
     case GIMP_NORMAL_SRGB_MODE:
+    case GIMP_ADDITION_SRGB_MODE:
+    case GIMP_DIVIDE_SRGB_MODE:
+    case GIMP_MULTIPLY_SRGB_MODE:
+    case GIMP_SUBTRACT_SRGB_MODE:
+    case GIMP_SCREEN_SRGB_MODE:
     case GIMP_OVERLAY_MODE:
     case GIMP_DIFFERENCE_MODE:
     case GIMP_HUE_MODE:
     case GIMP_SATURATION_MODE:
     case GIMP_COLOR_MODE:
     case GIMP_VALUE_MODE:
-    case GIMP_DIVIDE_MODE:
     case GIMP_DODGE_MODE:
     case GIMP_BURN_MODE:
     case GIMP_HARDLIGHT_MODE:
@@ -237,7 +248,7 @@ gimp_gegl_mode_node_set_mode (GeglNode             *node,
     case GIMP_LCH_CHROMA_MODE:
     case GIMP_LCH_COLOR_MODE:
     case GIMP_LCH_LIGHTNESS_MODE:
-    default:
+    //default:
         gegl_node_set (node,
            "linear",   FALSE,
            NULL);
diff --git a/app/widgets/gimpwidgets-constructors.c b/app/widgets/gimpwidgets-constructors.c
index f85fe05..01bd8bf 100644
--- a/app/widgets/gimpwidgets-constructors.c
+++ b/app/widgets/gimpwidgets-constructors.c
@@ -104,18 +104,21 @@ gimp_paint_mode_menu_new (gboolean with_behind_mode,
   GtkWidget    *combo;
 
   store = gimp_enum_store_new_with_values (GIMP_TYPE_LAYER_MODE_EFFECTS,
-                                           26,
+                                           31,
                                            GIMP_NORMAL_MODE,
                                            GIMP_NORMAL_SRGB_MODE,
                                            GIMP_DISSOLVE_MODE,
 
                                            GIMP_LIGHTEN_ONLY_MODE,
                                            GIMP_SCREEN_MODE,
+                                           GIMP_SCREEN_SRGB_MODE,
                                            GIMP_DODGE_MODE,
                                            GIMP_ADDITION_MODE,
+                                           GIMP_ADDITION_SRGB_MODE,
 
                                            GIMP_DARKEN_ONLY_MODE,
                                            GIMP_MULTIPLY_MODE,
+                                           GIMP_MULTIPLY_SRGB_MODE,
                                            GIMP_BURN_MODE,
 
                                            GIMP_NEW_OVERLAY_MODE,
@@ -124,9 +127,11 @@ gimp_paint_mode_menu_new (gboolean with_behind_mode,
 
                                            GIMP_DIFFERENCE_MODE,
                                            GIMP_SUBTRACT_MODE,
+                                           GIMP_SUBTRACT_SRGB_MODE,
                                            GIMP_GRAIN_EXTRACT_MODE,
                                            GIMP_GRAIN_MERGE_MODE,
                                            GIMP_DIVIDE_MODE,
+                                           GIMP_DIVIDE_SRGB_MODE,
 
                                            GIMP_HUE_MODE,
                                            GIMP_SATURATION_MODE,
@@ -142,7 +147,7 @@ gimp_paint_mode_menu_new (gboolean with_behind_mode,
                                          GIMP_DISSOLVE_MODE, -1);
 
   gimp_int_store_insert_separator_after (GIMP_INT_STORE (store),
-                                         GIMP_ADDITION_MODE, -1);
+                                         GIMP_ADDITION_SRGB_MODE, -1);
 
   gimp_int_store_insert_separator_after (GIMP_INT_STORE (store),
                                          GIMP_BURN_MODE, -1);
@@ -151,7 +156,7 @@ gimp_paint_mode_menu_new (gboolean with_behind_mode,
                                          GIMP_HARDLIGHT_MODE, -1);
 
   gimp_int_store_insert_separator_after (GIMP_INT_STORE (store),
-                                         GIMP_DIVIDE_MODE, -1);
+                                         GIMP_DIVIDE_SRGB_MODE, -1);
 
   gimp_int_store_insert_separator_after (GIMP_INT_STORE (store),
                                          GIMP_VALUE_MODE, -1);
diff --git a/libgimp/gimpenums.h b/libgimp/gimpenums.h
index 8ed0265..2562b0c 100644
--- a/libgimp/gimpenums.h
+++ b/libgimp/gimpenums.h
@@ -72,19 +72,19 @@ typedef enum
   GIMP_NORMAL_SRGB_MODE,
   GIMP_DISSOLVE_MODE,
   GIMP_BEHIND_MODE,
-  GIMP_MULTIPLY_MODE,
-  GIMP_SCREEN_MODE,
+  GIMP_MULTIPLY_SRGB_MODE,
+  GIMP_SCREEN_SRGB_MODE,
   GIMP_OVERLAY_MODE,
   GIMP_DIFFERENCE_MODE,
-  GIMP_ADDITION_MODE,
-  GIMP_SUBTRACT_MODE,
+  GIMP_ADDITION_SRGB_MODE,
+  GIMP_SUBTRACT_SRGB_MODE,
   GIMP_DARKEN_ONLY_MODE,
   GIMP_LIGHTEN_ONLY_MODE,
   GIMP_HUE_MODE,
   GIMP_SATURATION_MODE,
   GIMP_COLOR_MODE,
   GIMP_VALUE_MODE,
-  GIMP_DIVIDE_MODE,
+  GIMP_DIVIDE_SRGB_MODE,
   GIMP_DODGE_MODE,
   GIMP_BURN_MODE,
   GIMP_HARDLIGHT_MODE,
@@ -97,7 +97,12 @@ typedef enum
   GIMP_LCH_CHROMA_MODE,
   GIMP_LCH_COLOR_MODE,
   GIMP_LCH_LIGHTNESS_MODE,
-  GIMP_NORMAL_MODE
+  GIMP_NORMAL_MODE,
+  GIMP_MULTIPLY_MODE,
+  GIMP_DIVIDE_MODE,
+  GIMP_SCREEN_MODE,
+  GIMP_ADDITION_MODE,
+  GIMP_SUBTRACT_MODE
 } GimpLayerModeEffects;
 
 
diff --git a/tools/pdbgen/enums.pl b/tools/pdbgen/enums.pl
index 65827a6..6d61fb0 100644
--- a/tools/pdbgen/enums.pl
+++ b/tools/pdbgen/enums.pl
@@ -695,35 +695,38 @@ package Gimp::CodeGen::enums;
        { contig => 1,
          header => 'core/core-enums.h',
          symbols => [ qw(GIMP_NORMAL_SRGB_MODE GIMP_DISSOLVE_MODE
-                         GIMP_BEHIND_MODE GIMP_MULTIPLY_MODE
-                         GIMP_SCREEN_MODE GIMP_OVERLAY_MODE
-                         GIMP_DIFFERENCE_MODE GIMP_ADDITION_MODE
-                         GIMP_SUBTRACT_MODE GIMP_DARKEN_ONLY_MODE
+                         GIMP_BEHIND_MODE GIMP_MULTIPLY_SRGB_MODE
+                         GIMP_SCREEN_SRGB_MODE GIMP_OVERLAY_MODE
+                         GIMP_DIFFERENCE_MODE GIMP_ADDITION_SRGB_MODE
+                         GIMP_SUBTRACT_SRGB_MODE GIMP_DARKEN_ONLY_MODE
                          GIMP_LIGHTEN_ONLY_MODE GIMP_HUE_MODE
                          GIMP_SATURATION_MODE GIMP_COLOR_MODE
-                         GIMP_VALUE_MODE GIMP_DIVIDE_MODE GIMP_DODGE_MODE
-                         GIMP_BURN_MODE GIMP_HARDLIGHT_MODE
+                         GIMP_VALUE_MODE GIMP_DIVIDE_SRGB_MODE
+                         GIMP_DODGE_MODE GIMP_BURN_MODE GIMP_HARDLIGHT_MODE
                          GIMP_SOFTLIGHT_MODE GIMP_GRAIN_EXTRACT_MODE
                          GIMP_GRAIN_MERGE_MODE GIMP_COLOR_ERASE_MODE
                          GIMP_NEW_OVERLAY_MODE GIMP_LCH_HUE_MODE
                          GIMP_LCH_CHROMA_MODE GIMP_LCH_COLOR_MODE
-                         GIMP_LCH_LIGHTNESS_MODE GIMP_NORMAL_MODE) ],
+                         GIMP_LCH_LIGHTNESS_MODE GIMP_NORMAL_MODE
+                         GIMP_MULTIPLY_MODE GIMP_DIVIDE_MODE
+                         GIMP_SCREEN_MODE GIMP_ADDITION_MODE
+                         GIMP_SUBTRACT_MODE) ],
          mapping => { GIMP_NORMAL_SRGB_MODE => '0',
                       GIMP_DISSOLVE_MODE => '1',
                       GIMP_BEHIND_MODE => '2',
-                      GIMP_MULTIPLY_MODE => '3',
-                      GIMP_SCREEN_MODE => '4',
+                      GIMP_MULTIPLY_SRGB_MODE => '3',
+                      GIMP_SCREEN_SRGB_MODE => '4',
                       GIMP_OVERLAY_MODE => '5',
                       GIMP_DIFFERENCE_MODE => '6',
-                      GIMP_ADDITION_MODE => '7',
-                      GIMP_SUBTRACT_MODE => '8',
+                      GIMP_ADDITION_SRGB_MODE => '7',
+                      GIMP_SUBTRACT_SRGB_MODE => '8',
                       GIMP_DARKEN_ONLY_MODE => '9',
                       GIMP_LIGHTEN_ONLY_MODE => '10',
                       GIMP_HUE_MODE => '11',
                       GIMP_SATURATION_MODE => '12',
                       GIMP_COLOR_MODE => '13',
                       GIMP_VALUE_MODE => '14',
-                      GIMP_DIVIDE_MODE => '15',
+                      GIMP_DIVIDE_SRGB_MODE => '15',
                       GIMP_DODGE_MODE => '16',
                       GIMP_BURN_MODE => '17',
                       GIMP_HARDLIGHT_MODE => '18',
@@ -736,7 +739,12 @@ package Gimp::CodeGen::enums;
                       GIMP_LCH_CHROMA_MODE => '25',
                       GIMP_LCH_COLOR_MODE => '26',
                       GIMP_LCH_LIGHTNESS_MODE => '27',
-                      GIMP_NORMAL_MODE => '28' }
+                      GIMP_NORMAL_MODE => '28',
+                      GIMP_MULTIPLY_MODE => '29',
+                      GIMP_DIVIDE_MODE => '30',
+                      GIMP_SCREEN_MODE => '31',
+                      GIMP_ADDITION_MODE => '32',
+                      GIMP_SUBTRACT_MODE => '33' }
        },
     GimpBrushApplicationMode =>
        { contig => 1,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]