[gimp] app: add gimp_tool_widget_add_transform_guides()



commit ad660a3c880a4f822f99aaf8bfca6023db18212a
Author: Michael Natterer <mitch gimp org>
Date:   Tue Jun 13 20:36:09 2017 +0200

    app: add gimp_tool_widget_add_transform_guides()

 app/display/gimptoolwidget.c |   25 +++++++++++++++++++++++++
 app/display/gimptoolwidget.h |   33 +++++++++++++++++++++------------
 2 files changed, 46 insertions(+), 12 deletions(-)
---
diff --git a/app/display/gimptoolwidget.c b/app/display/gimptoolwidget.c
index 30a87f4..6cb9fe6 100644
--- a/app/display/gimptoolwidget.c
+++ b/app/display/gimptoolwidget.c
@@ -28,6 +28,7 @@
 #include "gimpcanvasgroup.h"
 #include "gimpcanvashandle.h"
 #include "gimpcanvasline.h"
+#include "gimpcanvastransformguides.h"
 #include "gimpdisplayshell.h"
 #include "gimptoolwidget.h"
 
@@ -376,6 +377,30 @@ gimp_tool_widget_add_handle (GimpToolWidget   *widget,
   return item;
 }
 
+GimpCanvasItem *
+gimp_tool_widget_add_transform_guides (GimpToolWidget    *widget,
+                                       const GimpMatrix3 *transform,
+                                       gdouble            x1,
+                                       gdouble            y1,
+                                       gdouble            x2,
+                                       gdouble            y2,
+                                       GimpGuidesType     type,
+                                       gint               n_guides)
+{
+  GimpCanvasItem *item;
+
+  g_return_val_if_fail (GIMP_IS_TOOL_WIDGET (widget), NULL);
+
+  item = gimp_canvas_transform_guides_new (widget->private->shell,
+                                           transform, x1, y1, x2, y2,
+                                           type, n_guides);
+
+  gimp_tool_widget_add_item (widget, item);
+  g_object_unref (item);
+
+  return item;
+}
+
 gboolean
 gimp_tool_widget_button_press (GimpToolWidget      *widget,
                                const GimpCoords    *coords,
diff --git a/app/display/gimptoolwidget.h b/app/display/gimptoolwidget.h
index d6d7ac4..b93d9ed 100644
--- a/app/display/gimptoolwidget.h
+++ b/app/display/gimptoolwidget.h
@@ -117,18 +117,27 @@ void               gimp_tool_widget_pop_group        (GimpToolWidget  *widget);
 
 /*  for subclasses, convenience functions to add specific items
  */
-GimpCanvasItem * gimp_tool_widget_add_line   (GimpToolWidget   *widget,
-                                              gdouble           x1,
-                                              gdouble           y1,
-                                              gdouble           x2,
-                                              gdouble           y2);
-GimpCanvasItem * gimp_tool_widget_add_handle (GimpToolWidget   *widget,
-                                              GimpHandleType    type,
-                                              gdouble           x,
-                                              gdouble           y,
-                                              gint              width,
-                                              gint              height,
-                                              GimpHandleAnchor  anchor);
+GimpCanvasItem * gimp_tool_widget_add_line   (GimpToolWidget    *widget,
+                                              gdouble            x1,
+                                              gdouble            y1,
+                                              gdouble            x2,
+                                              gdouble            y2);
+GimpCanvasItem * gimp_tool_widget_add_handle (GimpToolWidget    *widget,
+                                              GimpHandleType     type,
+                                              gdouble            x,
+                                              gdouble            y,
+                                              gint               width,
+                                              gint               height,
+                                              GimpHandleAnchor   anchor);
+GimpCanvasItem * gimp_tool_widget_add_transform_guides
+                                             (GimpToolWidget    *widget,
+                                              const GimpMatrix3 *transform,
+                                              gdouble            x1,
+                                              gdouble            y1,
+                                              gdouble            x2,
+                                              gdouble            y2,
+                                              GimpGuidesType     type,
+                                              gint               n_guides);
 
 /*  for tools, to be called from the respective GimpTool method
  *  implementations


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