[gimp] app: commit seamless clone in progress when switching tools.
- From: Jehan Pagès <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: commit seamless clone in progress when switching tools.
- Date: Tue, 29 Apr 2014 21:18:53 +0000 (UTC)
commit cb93f2bd2710dc3927f9bc72639b16fa34d00ce5
Author: Jehan <jehan girinstud io>
Date: Mon Apr 28 01:37:18 2014 +1200
app: commit seamless clone in progress when switching tools.
app/tools/gimpseamlessclonetool.c | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
---
diff --git a/app/tools/gimpseamlessclonetool.c b/app/tools/gimpseamlessclonetool.c
index c095119..70a598d 100644
--- a/app/tools/gimpseamlessclonetool.c
+++ b/app/tools/gimpseamlessclonetool.c
@@ -155,6 +155,8 @@ static void gimp_seamless_clone_tool_start (GimpSeamlessClone
static void gimp_seamless_clone_tool_stop (GimpSeamlessCloneTool *sc,
gboolean display_change_only);
+static void gimp_seamless_clone_tool_commit (GimpSeamlessCloneTool *sc);
+
static void gimp_seamless_clone_tool_create_render_node (GimpSeamlessCloneTool *sc);
static void gimp_seamless_clone_tool_render_node_update (GimpSeamlessCloneTool *sc);
static void gimp_seamless_clone_tool_create_image_map (GimpSeamlessCloneTool *sc,
@@ -248,6 +250,7 @@ gimp_seamless_clone_tool_control (GimpTool *tool,
break;
case GIMP_TOOL_ACTION_COMMIT:
+ gimp_seamless_clone_tool_commit (sc);
break;
}
@@ -363,6 +366,25 @@ gimp_seamless_clone_tool_stop (GimpSeamlessCloneTool *sc,
}
static void
+gimp_seamless_clone_tool_commit (GimpSeamlessCloneTool *sc)
+{
+ GimpTool *tool = GIMP_TOOL (sc);
+
+ if (sc->image_map)
+ {
+ gimp_tool_control_push_preserve (tool->control, TRUE);
+
+ gimp_image_map_commit (sc->image_map, GIMP_PROGRESS (tool));
+ g_object_unref (sc->image_map);
+ sc->image_map = NULL;
+
+ gimp_tool_control_pop_preserve (tool->control);
+
+ gimp_image_flush (gimp_display_get_image (tool->display));
+ }
+}
+
+static void
gimp_seamless_clone_tool_button_press (GimpTool *tool,
const GimpCoords *coords,
guint32 time,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]