[gimp] app: follow the GEGL invert -> invert-linear vs. invert-gamma change
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: follow the GEGL invert -> invert-linear vs. invert-gamma change
- Date: Sun, 23 Jun 2013 22:47:53 +0000 (UTC)
commit f56f6d125563ca2ad5eb5663b39ba0ff2f22f038
Author: Michael Natterer <mitch gimp org>
Date: Mon Jun 24 00:45:04 2013 +0200
app: follow the GEGL invert -> invert-linear vs. invert-gamma change
and invert masks using invert-linear and other drawables using
invert-gamma. drawable_invert_cmd_callback() still always uses
invert-gamma even though it can be used on layer masks.
app/actions/drawable-commands.c | 3 ++-
app/core/gimpchannel.c | 8 ++++----
app/gegl/gimp-gegl-apply-operation.c | 30 +++++++++++++++++++++++++-----
app/gegl/gimp-gegl-apply-operation.h | 7 ++++++-
app/pdb/color-cmds.c | 2 +-
app/tools/gimpgegltool.c | 3 ++-
tools/pdbgen/pdb/color.pdb | 2 +-
7 files changed, 41 insertions(+), 14 deletions(-)
---
diff --git a/app/actions/drawable-commands.c b/app/actions/drawable-commands.c
index e697a86..50d61b3 100644
--- a/app/actions/drawable-commands.c
+++ b/app/actions/drawable-commands.c
@@ -67,8 +67,9 @@ drawable_invert_cmd_callback (GtkAction *action,
return_if_no_drawable (image, drawable, data);
return_if_no_display (display, data);
+ /* FIXME invert masks? */
gimp_drawable_apply_operation_by_name (drawable, GIMP_PROGRESS (display),
- _("Invert"), "gegl:invert",
+ _("Invert"), "gegl:invert-gamma",
NULL);
gimp_image_flush (image);
}
diff --git a/app/core/gimpchannel.c b/app/core/gimpchannel.c
index 83f44e7..300869d 100644
--- a/app/core/gimpchannel.c
+++ b/app/core/gimpchannel.c
@@ -430,7 +430,7 @@ gimp_channel_get_node (GimpFilter *filter)
g_warn_if_fail (channel->invert_node == NULL);
channel->invert_node = gegl_node_new_child (node,
- "operation", "gegl:invert",
+ "operation", "gegl:invert-linear",
NULL);
if (channel->show_masked)
@@ -1299,9 +1299,9 @@ gimp_channel_real_invert (GimpChannel *channel,
}
else
{
- gimp_gegl_apply_invert (gimp_drawable_get_buffer (drawable),
- NULL, NULL,
- gimp_drawable_get_buffer (drawable));
+ gimp_gegl_apply_invert_linear (gimp_drawable_get_buffer (drawable),
+ NULL, NULL,
+ gimp_drawable_get_buffer (drawable));
channel->bounds_known = FALSE;
diff --git a/app/gegl/gimp-gegl-apply-operation.c b/app/gegl/gimp-gegl-apply-operation.c
index 43385a6..439e3c6 100644
--- a/app/gegl/gimp-gegl-apply-operation.c
+++ b/app/gegl/gimp-gegl-apply-operation.c
@@ -232,10 +232,10 @@ gimp_gegl_apply_gaussian_blur (GeglBuffer *src_buffer,
}
void
-gimp_gegl_apply_invert (GeglBuffer *src_buffer,
- GimpProgress *progress,
- const gchar *undo_desc,
- GeglBuffer *dest_buffer)
+gimp_gegl_apply_invert_gamma (GeglBuffer *src_buffer,
+ GimpProgress *progress,
+ const gchar *undo_desc,
+ GeglBuffer *dest_buffer)
{
GeglNode *node;
@@ -244,7 +244,7 @@ gimp_gegl_apply_invert (GeglBuffer *src_buffer,
g_return_if_fail (GEGL_IS_BUFFER (dest_buffer));
node = gegl_node_new_child (NULL,
- "operation", "gegl:invert",
+ "operation", "gegl:invert-gamma",
NULL);
gimp_gegl_apply_operation (src_buffer, progress, undo_desc,
@@ -252,6 +252,26 @@ gimp_gegl_apply_invert (GeglBuffer *src_buffer,
g_object_unref (node);
}
+void
+gimp_gegl_apply_invert_linear (GeglBuffer *src_buffer,
+ GimpProgress *progress,
+ const gchar *undo_desc,
+ GeglBuffer *dest_buffer)
+{
+ GeglNode *node;
+
+ g_return_if_fail (GEGL_IS_BUFFER (src_buffer));
+ g_return_if_fail (progress == NULL || GIMP_IS_PROGRESS (progress));
+ g_return_if_fail (GEGL_IS_BUFFER (dest_buffer));
+
+ node = gegl_node_new_child (NULL,
+ "operation", "gegl:invert-linear",
+ NULL);
+
+ gimp_gegl_apply_operation (src_buffer, progress, undo_desc,
+ node, dest_buffer, NULL);
+ g_object_unref (node);
+}
void
gimp_gegl_apply_opacity (GeglBuffer *src_buffer,
diff --git a/app/gegl/gimp-gegl-apply-operation.h b/app/gegl/gimp-gegl-apply-operation.h
index 11365d7..14e3822 100644
--- a/app/gegl/gimp-gegl-apply-operation.h
+++ b/app/gegl/gimp-gegl-apply-operation.h
@@ -63,7 +63,12 @@ void gimp_gegl_apply_gaussian_blur (GeglBuffer *src_buffer,
gdouble std_dev_x,
gdouble std_dev_y);
-void gimp_gegl_apply_invert (GeglBuffer *src_buffer,
+void gimp_gegl_apply_invert_gamma (GeglBuffer *src_buffer,
+ GimpProgress *progress,
+ const gchar *undo_desc,
+ GeglBuffer *dest_buffer);
+
+void gimp_gegl_apply_invert_linear (GeglBuffer *src_buffer,
GimpProgress *progress,
const gchar *undo_desc,
GeglBuffer *dest_buffer);
diff --git a/app/pdb/color-cmds.c b/app/pdb/color-cmds.c
index 05724a3..cda0ddd 100644
--- a/app/pdb/color-cmds.c
+++ b/app/pdb/color-cmds.c
@@ -385,7 +385,7 @@ invert_invoker (GimpProcedure *procedure,
{
gimp_drawable_apply_operation_by_name (drawable, progress,
_("Invert"),
- "gegl:invert",
+ "gegl:invert-gamma",
NULL);
}
else
diff --git a/app/tools/gimpgegltool.c b/app/tools/gimpgegltool.c
index 3b444ad..2435556 100644
--- a/app/tools/gimpgegltool.c
+++ b/app/tools/gimpgegltool.c
@@ -132,7 +132,8 @@ gimp_gegl_tool_operation_blacklisted (const gchar *name,
"gegl:fractal-trace",
"gegl:gaussian-blur",
"gegl:grid",
- "gegl:invert",
+ "gegl:invert-linear",
+ "gegl:invert-gamma",
"gegl:lens-distortion",
"gegl:mono-mixer",
"gegl:motion-blur-circular",
diff --git a/tools/pdbgen/pdb/color.pdb b/tools/pdbgen/pdb/color.pdb
index 55bec29..a6430b7 100644
--- a/tools/pdbgen/pdb/color.pdb
+++ b/tools/pdbgen/pdb/color.pdb
@@ -388,7 +388,7 @@ HELP
{
gimp_drawable_apply_operation_by_name (drawable, progress,
_("Invert"),
- "gegl:invert",
+ "gegl:invert-gamma",
NULL);
}
else
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]