[gimp] pdb: make channel mixer compat function use mono-mixer for monochrome case



commit fc8a2185a583bc5d9fc8bc04cd1c7148247a7cfa
Author: Alexia Death <alexiadeath gmail com>
Date:   Sun Dec 7 19:26:52 2014 +0200

    pdb: make channel mixer compat function use mono-mixer for monochrome case

 app/pdb/plug-in-compat-cmds.c |   41 +++++++++++++++++++++++++++--------------
 1 files changed, 27 insertions(+), 14 deletions(-)
---
diff --git a/app/pdb/plug-in-compat-cmds.c b/app/pdb/plug-in-compat-cmds.c
index 454722f..6dfc040 100644
--- a/app/pdb/plug-in-compat-cmds.c
+++ b/app/pdb/plug-in-compat-cmds.c
@@ -635,20 +635,33 @@ plug_in_colors_channel_mixer_invoker (GimpProcedure         *procedure,
                                      GIMP_PDB_ITEM_CONTENT, error) &&
           gimp_pdb_item_is_not_group (GIMP_ITEM (drawable), error))
         {
-          GeglNode *node =
-            gegl_node_new_child (NULL,
-                                 "operation", "gegl:channel-mixer",
-                                 "monochrome", (gboolean) monochrome,
-                                 "rr-gain", (gdouble) rr_gain,
-                                 "rg-gain", (gdouble) rg_gain,
-                                 "rb-gain", (gdouble) rb_gain,
-                                 "gr-gain", (gdouble) gr_gain,
-                                 "gg-gain", (gdouble) gg_gain,
-                                 "gb-gain", (gdouble) gb_gain,
-                                 "br-gain", (gdouble) br_gain,
-                                 "bg-gain", (gdouble) bg_gain,
-                                 "bb-gain", (gdouble) bb_gain,
-                                 NULL);
+          GeglNode *node = NULL;
+          if ((gboolean) monochrome)
+            {
+               node =
+               gegl_node_new_child (NULL,
+                                    "operation", "gegl:mono-mixer",
+                                    "red", (gdouble) rr_gain,
+                                    "green", (gdouble) rg_gain,
+                                    "blue", (gdouble) rb_gain,
+                                    NULL);
+            }
+          else
+            {
+               node =
+               gegl_node_new_child (NULL,
+                                    "operation", "gegl:channel-mixer",
+                                    "rr-gain", (gdouble) rr_gain,
+                                    "rg-gain", (gdouble) rg_gain,
+                                    "rb-gain", (gdouble) rb_gain,
+                                    "gr-gain", (gdouble) gr_gain,
+                                    "gg-gain", (gdouble) gg_gain,
+                                    "gb-gain", (gdouble) gb_gain,
+                                    "br-gain", (gdouble) br_gain,
+                                    "bg-gain", (gdouble) bg_gain,
+                                    "bb-gain", (gdouble) bb_gain,
+                                     NULL);
+            }
 
           gimp_drawable_apply_operation (drawable, progress,
                                          C_("undo-type", "Channel Mixer"),


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