[gimp] app: split screen op in legacy and new
- From: Øyvind Kolås <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: split screen op in legacy and new
- Date: Mon, 9 Jan 2017 22:20:19 +0000 (UTC)
commit 3a50cdcd4f172d621fd15b948a14a30d61953d64
Author: Øyvind Kolås <pippin gimp org>
Date: Mon Jan 9 23:19:29 2017 +0100
app: split screen op in legacy and new
app/core/core-enums.c | 4 +-
app/core/core-enums.h | 3 +-
app/gegl/gimp-gegl-nodes.c | 7 +-
app/operations/Makefile.am | 2 -
app/operations/gimp-operations.c | 3 +-
app/operations/gimplayermodefunctions.c | 9 ++-
app/operations/gimpoperationscreenmode.c | 137 -------------------------
app/operations/gimpoperationscreenmode.h | 62 -----------
app/operations/layer-modes-legacy/Makefile.am | 4 +-
app/operations/layer-modes/Makefile.am | 4 +-
app/widgets/gimpwidgets-constructors.c | 3 +-
libgimp/gimpenums.h | 3 +-
tools/pdbgen/enums.pl | 5 +-
13 files changed, 33 insertions(+), 213 deletions(-)
---
diff --git a/app/core/core-enums.c b/app/core/core-enums.c
index 646c29f..d7d03cd 100644
--- a/app/core/core-enums.c
+++ b/app/core/core-enums.c
@@ -321,6 +321,7 @@ gimp_layer_mode_get_type (void)
{ GIMP_LAYER_MODE_MULTIPLY, "GIMP_LAYER_MODE_MULTIPLY", "multiply" },
{ GIMP_LAYER_MODE_MULTIPLY_LINEAR, "GIMP_LAYER_MODE_MULTIPLY_LINEAR", "multiply-linear" },
{ GIMP_LAYER_MODE_DODGE, "GIMP_LAYER_MODE_DODGE", "dodge" },
+ { GIMP_LAYER_MODE_SCREEN, "GIMP_LAYER_MODE_SCREEN", "screen" },
{ GIMP_LAYER_MODE_ERASE, "GIMP_LAYER_MODE_ERASE", "erase" },
{ GIMP_LAYER_MODE_REPLACE, "GIMP_LAYER_MODE_REPLACE", "replace" },
{ GIMP_LAYER_MODE_ANTI_ERASE, "GIMP_LAYER_MODE_ANTI_ERASE", "anti-erase" },
@@ -333,7 +334,7 @@ gimp_layer_mode_get_type (void)
{ GIMP_LAYER_MODE_DISSOLVE, NC_("layer-mode", "Dissolve"), NULL },
{ GIMP_LAYER_MODE_BEHIND, NC_("layer-mode", "Behind"), NULL },
{ GIMP_LAYER_MODE_MULTIPLY_LEGACY, NC_("layer-mode", "Multiply (legacy)"), NULL },
- { GIMP_LAYER_MODE_SCREEN_LEGACY, NC_("layer-mode", "Screen"), NULL },
+ { GIMP_LAYER_MODE_SCREEN_LEGACY, NC_("layer-mode", "Screen (legacy)"), NULL },
{ GIMP_LAYER_MODE_OVERLAY_LEGACY, NC_("layer-mode", "Old broken Overlay"), NULL },
{ GIMP_LAYER_MODE_DIFFERENCE_LEGACY, NC_("layer-mode", "Difference"), NULL },
{ GIMP_LAYER_MODE_ADDITION_LEGACY, NC_("layer-mode", "Addition"), NULL },
@@ -361,6 +362,7 @@ gimp_layer_mode_get_type (void)
{ GIMP_LAYER_MODE_MULTIPLY, NC_("layer-mode", "Multiply"), NULL },
{ GIMP_LAYER_MODE_MULTIPLY_LINEAR, NC_("layer-mode", "Multiply (linear)"), NULL },
{ GIMP_LAYER_MODE_DODGE, NC_("layer-mode", "Dodge"), NULL },
+ { GIMP_LAYER_MODE_SCREEN, NC_("layer-mode", "Screen"), NULL },
{ GIMP_LAYER_MODE_ERASE, NC_("layer-mode", "Erase"), NULL },
{ GIMP_LAYER_MODE_REPLACE, NC_("layer-mode", "Replace"), NULL },
{ GIMP_LAYER_MODE_ANTI_ERASE, NC_("layer-mode", "Anti erase"), NULL },
diff --git a/app/core/core-enums.h b/app/core/core-enums.h
index d49e50d..7df91fa 100644
--- a/app/core/core-enums.h
+++ b/app/core/core-enums.h
@@ -158,7 +158,7 @@ typedef enum
GIMP_LAYER_MODE_DISSOLVE, /*< desc="Dissolve" >*/
GIMP_LAYER_MODE_BEHIND, /*< desc="Behind" >*/
GIMP_LAYER_MODE_MULTIPLY_LEGACY, /*< desc="Multiply (legacy)" >*/
- GIMP_LAYER_MODE_SCREEN_LEGACY, /*< desc="Screen" >*/
+ GIMP_LAYER_MODE_SCREEN_LEGACY, /*< desc="Screen (legacyy)" >*/
GIMP_LAYER_MODE_OVERLAY_LEGACY, /*< desc="Old broken Overlay" >*/
GIMP_LAYER_MODE_DIFFERENCE_LEGACY, /*< desc="Difference" >*/
GIMP_LAYER_MODE_ADDITION_LEGACY, /*< desc="Addition" >*/
@@ -186,6 +186,7 @@ typedef enum
GIMP_LAYER_MODE_MULTIPLY, /*< desc="Multiply" >*/
GIMP_LAYER_MODE_MULTIPLY_LINEAR, /*< desc="Multiply (linear)" >*/
GIMP_LAYER_MODE_DODGE, /*< desc="Dodge" >*/
+ GIMP_LAYER_MODE_SCREEN, /*< desc="Screen" >*/
/* internal modes, not available to the PDB */
GIMP_LAYER_MODE_ERASE = 1000, /*< pdb-skip, desc="Erase" >*/
diff --git a/app/gegl/gimp-gegl-nodes.c b/app/gegl/gimp-gegl-nodes.c
index 5388346..10adca8 100644
--- a/app/gegl/gimp-gegl-nodes.c
+++ b/app/gegl/gimp-gegl-nodes.c
@@ -171,8 +171,12 @@ gimp_gegl_mode_node_set_mode (GeglNode *node,
operation = "gimp:multiply";
break;
+ case GIMP_LAYER_MODE_SCREEN:
+ operation = "gimp:screen";
+ break;
+
case GIMP_LAYER_MODE_SCREEN_LEGACY:
- operation = "gimp:screen-mode";
+ operation = "gimp:screen-legacy";
break;
case GIMP_LAYER_MODE_OVERLAY_LEGACY:
@@ -310,6 +314,7 @@ gimp_gegl_mode_node_set_mode (GeglNode *node,
case GIMP_LAYER_MODE_BEHIND:
case GIMP_LAYER_MODE_MULTIPLY:
case GIMP_LAYER_MODE_MULTIPLY_LEGACY:
+ case GIMP_LAYER_MODE_SCREEN:
case GIMP_LAYER_MODE_SCREEN_LEGACY:
case GIMP_LAYER_MODE_ADDITION_LEGACY:
case GIMP_LAYER_MODE_SUBTRACT_LEGACY:
diff --git a/app/operations/Makefile.am b/app/operations/Makefile.am
index 27878df..9a39e8f 100644
--- a/app/operations/Makefile.am
+++ b/app/operations/Makefile.am
@@ -101,8 +101,6 @@ libappoperations_a_SOURCES = \
gimpoperationdissolvemode.h \
gimpoperationbehindmode.c \
gimpoperationbehindmode.h \
- gimpoperationscreenmode.c \
- gimpoperationscreenmode.h \
gimpoperationoverlaymode.c \
gimpoperationoverlaymode.h \
gimpoperationdifferencemode.c \
diff --git a/app/operations/gimp-operations.c b/app/operations/gimp-operations.c
index abbf7e1..37f6c0c 100644
--- a/app/operations/gimp-operations.c
+++ b/app/operations/gimp-operations.c
@@ -71,7 +71,8 @@
#include "gimpoperationbehindmode.h"
#include "layer-modes/gimpoperationmultiply.h"
#include "layer-modes-legacy/gimpoperationmultiplylegacy.h"
-#include "gimpoperationscreenmode.h"
+#include "layer-modes/gimpoperationscreen.h"
+#include "layer-modes-legacy/gimpoperationscreenlegacy.h"
#include "gimpoperationoverlaymode.h"
#include "gimpoperationdifferencemode.h"
#include "gimpoperationadditionmode.h"
diff --git a/app/operations/gimplayermodefunctions.c b/app/operations/gimplayermodefunctions.c
index 186cd9a..545c86b 100644
--- a/app/operations/gimplayermodefunctions.c
+++ b/app/operations/gimplayermodefunctions.c
@@ -31,7 +31,8 @@
#include "gimpoperationbehindmode.h"
#include "layer-modes/gimpoperationmultiply.h"
#include "layer-modes-legacy/gimpoperationmultiplylegacy.h"
-#include "gimpoperationscreenmode.h"
+#include "layer-modes/gimpoperationscreen.h"
+#include "layer-modes-legacy/gimpoperationscreenlegacy.h"
#include "gimpoperationoverlaymode.h"
#include "gimpoperationdifferencemode.h"
#include "gimpoperationadditionmode.h"
@@ -89,7 +90,11 @@ get_layer_mode_function (GimpLayerMode paint_mode,
break;
case GIMP_LAYER_MODE_SCREEN_LEGACY:
- func = gimp_operation_screen_mode_process_pixels;
+ func = gimp_operation_screen_legacy_process_pixels;
+ break;
+
+ case GIMP_LAYER_MODE_SCREEN:
+ func = gimp_operation_screen_process_pixels;
break;
case GIMP_LAYER_MODE_OVERLAY_LEGACY:
diff --git a/app/operations/layer-modes-legacy/Makefile.am b/app/operations/layer-modes-legacy/Makefile.am
index dd16e34..f9cccf0 100644
--- a/app/operations/layer-modes-legacy/Makefile.am
+++ b/app/operations/layer-modes-legacy/Makefile.am
@@ -18,4 +18,6 @@ libapplayermodeslegacy_a_SOURCES = \
gimpoperationmultiplylegacy.c \
gimpoperationmultiplylegacy.h \
gimpoperationdodgelegacy.c \
- gimpoperationdodgelegacy.h
+ gimpoperationdodgelegacy.h \
+ gimpoperationscreenlegacy.c \
+ gimpoperationscreenlegacy.h
diff --git a/app/operations/layer-modes/Makefile.am b/app/operations/layer-modes/Makefile.am
index 57c78d2..1a49775 100644
--- a/app/operations/layer-modes/Makefile.am
+++ b/app/operations/layer-modes/Makefile.am
@@ -23,7 +23,9 @@ libapplayermodes_generic_a_sources = \
gimpoperationdodge.c \
gimpoperationdodge.h \
gimpoperationmultiply.c \
- gimpoperationmultiply.h
+ gimpoperationmultiply.h \
+ gimpoperationscreen.c \
+ gimpoperationscreen.h
libapplayermodes_sse2_a_sources = \
gimpoperationnormal-sse2.c
diff --git a/app/widgets/gimpwidgets-constructors.c b/app/widgets/gimpwidgets-constructors.c
index ee6dfe0..69a4f04 100644
--- a/app/widgets/gimpwidgets-constructors.c
+++ b/app/widgets/gimpwidgets-constructors.c
@@ -104,12 +104,13 @@ gimp_paint_mode_menu_new (gboolean with_behind_mode,
GtkWidget *combo;
store = gimp_enum_store_new_with_values (GIMP_TYPE_LAYER_MODE,
- 27,
+ 30,
GIMP_LAYER_MODE_NORMAL,
GIMP_LAYER_MODE_NORMAL_NON_LINEAR,
GIMP_LAYER_MODE_DISSOLVE,
GIMP_LAYER_MODE_LIGHTEN_ONLY_LEGACY,
+ GIMP_LAYER_MODE_SCREEN,
GIMP_LAYER_MODE_SCREEN_LEGACY,
GIMP_LAYER_MODE_DODGE,
GIMP_LAYER_MODE_DODGE_LEGACY,
diff --git a/libgimp/gimpenums.h b/libgimp/gimpenums.h
index 006f97d..12e9f66 100644
--- a/libgimp/gimpenums.h
+++ b/libgimp/gimpenums.h
@@ -100,7 +100,8 @@ typedef enum
GIMP_LAYER_MODE_NORMAL,
GIMP_LAYER_MODE_MULTIPLY,
GIMP_LAYER_MODE_MULTIPLY_LINEAR,
- GIMP_LAYER_MODE_DODGE
+ GIMP_LAYER_MODE_DODGE,
+ GIMP_LAYER_MODE_SCREEN
} GimpLayerMode;
diff --git a/tools/pdbgen/enums.pl b/tools/pdbgen/enums.pl
index 95181d0..5071cfe 100644
--- a/tools/pdbgen/enums.pl
+++ b/tools/pdbgen/enums.pl
@@ -723,7 +723,7 @@ package Gimp::CodeGen::enums;
GIMP_LAYER_MODE_LCH_LIGHTNESS
GIMP_LAYER_MODE_NORMAL GIMP_LAYER_MODE_MULTIPLY
GIMP_LAYER_MODE_MULTIPLY_LINEAR
- GIMP_LAYER_MODE_DODGE) ],
+ GIMP_LAYER_MODE_DODGE GIMP_LAYER_MODE_SCREEN) ],
mapping => { GIMP_LAYER_MODE_NORMAL_NON_LINEAR => '0',
GIMP_LAYER_MODE_DISSOLVE => '1',
GIMP_LAYER_MODE_BEHIND => '2',
@@ -755,7 +755,8 @@ package Gimp::CodeGen::enums;
GIMP_LAYER_MODE_NORMAL => '28',
GIMP_LAYER_MODE_MULTIPLY => '29',
GIMP_LAYER_MODE_MULTIPLY_LINEAR => '30',
- GIMP_LAYER_MODE_DODGE => '31' }
+ GIMP_LAYER_MODE_DODGE => '31',
+ GIMP_LAYER_MODE_SCREEN => '32' }
},
GimpBrushApplicationMode =>
{ contig => 1,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]