[gimp] app: add "title", "icon_name" and "help_id" to gimp_tool_gui_new()



commit bd9e59a9f010e537667c6f761de2fad7f9caa68e
Author: Michael Natterer <mitch gimp org>
Date:   Fri Jan 22 23:41:45 2016 +0100

    app: add "title", "icon_name" and "help_id" to gimp_tool_gui_new()
    
    so things are the same at the API and the inside, which makes
    GimpImageMapTool's use of GimpToolGui a little more obvious.

 app/display/gimptoolgui.c            |   21 ++++++++++++++++++---
 app/display/gimptoolgui.h            |    3 +++
 app/tools/gimpcolorpickertool.c      |    2 ++
 app/tools/gimpforegroundselecttool.c |    2 ++
 app/tools/gimpimagemaptool.c         |   13 ++++++-------
 app/tools/gimpmeasuretool.c          |    2 ++
 app/tools/gimptransformtool.c        |    2 +-
 7 files changed, 34 insertions(+), 11 deletions(-)
---
diff --git a/app/display/gimptoolgui.c b/app/display/gimptoolgui.c
index 00b6fe5..e0e9395 100644
--- a/app/display/gimptoolgui.c
+++ b/app/display/gimptoolgui.c
@@ -241,7 +241,10 @@ gimp_tool_gui_finalize (GObject *object)
  **/
 GimpToolGui *
 gimp_tool_gui_new (GimpToolInfo *tool_info,
+                   const gchar  *title,
                    const gchar  *description,
+                   const gchar  *icon_name,
+                   const gchar  *help_id,
                    GdkScreen    *screen,
                    gint          monitor,
                    gboolean      overlay,
@@ -258,11 +261,23 @@ gimp_tool_gui_new (GimpToolInfo *tool_info,
 
   private = GET_PRIVATE (gui);
 
+  if (! title)
+    title = tool_info->blurb;
+
+  if (! description)
+    description = tool_info->blurb;
+
+  if (! icon_name)
+    icon_name = gimp_viewable_get_icon_name (GIMP_VIEWABLE (tool_info));
+
+  if (! help_id)
+    help_id = tool_info->help_id;
+
   private->tool_info   = g_object_ref (tool_info);
-  private->title       = g_strdup (tool_info->blurb);
+  private->title       = g_strdup (title);
   private->description = g_strdup (description);
-  private->icon_name   = g_strdup (gimp_viewable_get_icon_name (GIMP_VIEWABLE (tool_info)));
-  private->help_id     = g_strdup (tool_info->help_id);
+  private->icon_name   = g_strdup (icon_name);
+  private->help_id     = g_strdup (help_id);
   private->overlay     = overlay;
 
   va_start (args, overlay);
diff --git a/app/display/gimptoolgui.h b/app/display/gimptoolgui.h
index 007a598..1de3333 100644
--- a/app/display/gimptoolgui.h
+++ b/app/display/gimptoolgui.h
@@ -53,7 +53,10 @@ struct _GimpToolGuiClass
 GType         gimp_tool_gui_get_type               (void) G_GNUC_CONST;
 
 GimpToolGui * gimp_tool_gui_new                    (GimpToolInfo     *tool_info,
+                                                    const gchar      *title,
                                                     const gchar      *description,
+                                                    const gchar      *icon_name,
+                                                    const gchar      *help_id,
                                                     GdkScreen        *screen,
                                                     gint              monitor,
                                                     gboolean          overlay,
diff --git a/app/tools/gimpcolorpickertool.c b/app/tools/gimpcolorpickertool.c
index 5670f50..e05aeb3 100644
--- a/app/tools/gimpcolorpickertool.c
+++ b/app/tools/gimpcolorpickertool.c
@@ -333,7 +333,9 @@ gimp_color_picker_tool_info_create (GimpColorPickerTool *picker_tool)
   shell = gimp_display_get_shell (tool->display);
 
   picker_tool->gui = gimp_tool_gui_new (tool->tool_info,
+                                        NULL,
                                         _("Color Picker Information"),
+                                        NULL, NULL,
                                         gtk_widget_get_screen (GTK_WIDGET (shell)),
                                         gimp_widget_get_monitor (GTK_WIDGET (shell)),
                                         TRUE,
diff --git a/app/tools/gimpforegroundselecttool.c b/app/tools/gimpforegroundselecttool.c
index e7b1fc4..e6e8074 100644
--- a/app/tools/gimpforegroundselecttool.c
+++ b/app/tools/gimpforegroundselecttool.c
@@ -299,7 +299,9 @@ gimp_foreground_select_tool_initialize (GimpTool     *tool,
     {
       fg_select->gui =
         gimp_tool_gui_new (tool->tool_info,
+                           NULL,
                            _("Dialog for foreground select"),
+                           NULL, NULL,
                            gtk_widget_get_screen (GTK_WIDGET (shell)),
                            gimp_widget_get_monitor (GTK_WIDGET (shell)),
                            TRUE,
diff --git a/app/tools/gimpimagemaptool.c b/app/tools/gimpimagemaptool.c
index 603e657..315bdeb 100644
--- a/app/tools/gimpimagemaptool.c
+++ b/app/tools/gimpimagemaptool.c
@@ -366,7 +366,10 @@ gimp_image_map_tool_initialize (GimpTool     *tool,
 
       im_tool->gui =
         gimp_tool_gui_new (tool_info,
+                           im_tool->title,
                            im_tool->description,
+                           im_tool->icon_name,
+                           im_tool->help_id,
                            gtk_widget_get_screen (GTK_WIDGET (shell)),
                            gimp_widget_get_monitor (GTK_WIDGET (shell)),
                            im_tool->overlay,
@@ -458,16 +461,12 @@ gimp_image_map_tool_initialize (GimpTool     *tool,
     }
   else
     {
+      gimp_tool_gui_set_title (im_tool->gui, im_tool->title);
       gimp_tool_gui_set_description (im_tool->gui, im_tool->description);
+      gimp_tool_gui_set_icon_name (im_tool->gui, im_tool->icon_name);
+      gimp_tool_gui_set_help_id (im_tool->gui, im_tool->help_id);
     }
 
-  /* FIXME move these into the block above once gimp_tool_gui_new()
-   * got more arguments
-   */
-  gimp_tool_gui_set_title (im_tool->gui, im_tool->title);
-  gimp_tool_gui_set_icon_name (im_tool->gui, im_tool->icon_name);
-  gimp_tool_gui_set_help_id (im_tool->gui, im_tool->help_id);
-
   gimp_tool_gui_set_shell (im_tool->gui, shell);
   gimp_tool_gui_set_viewable (im_tool->gui, GIMP_VIEWABLE (drawable));
 
diff --git a/app/tools/gimpmeasuretool.c b/app/tools/gimpmeasuretool.c
index a58f6eb..50c0392 100644
--- a/app/tools/gimpmeasuretool.c
+++ b/app/tools/gimpmeasuretool.c
@@ -1054,7 +1054,9 @@ gimp_measure_tool_dialog_new (GimpMeasureTool *measure)
   shell = gimp_display_get_shell (tool->display);
 
   gui = gimp_tool_gui_new (tool->tool_info,
+                           NULL,
                            _("Measure Distances and Angles"),
+                           NULL, NULL,
                            gtk_widget_get_screen (GTK_WIDGET (shell)),
                            gimp_widget_get_monitor (GTK_WIDGET (shell)),
                            TRUE,
diff --git a/app/tools/gimptransformtool.c b/app/tools/gimptransformtool.c
index 381b70b..5a140da 100644
--- a/app/tools/gimptransformtool.c
+++ b/app/tools/gimptransformtool.c
@@ -1649,7 +1649,7 @@ gimp_transform_tool_dialog (GimpTransformTool *tr_tool)
   icon_name = gimp_viewable_get_icon_name (GIMP_VIEWABLE (tool_info));
 
   tr_tool->gui = gimp_tool_gui_new (tool_info,
-                                    tool_info->blurb,
+                                    NULL, NULL, NULL, NULL,
                                     gtk_widget_get_screen (GTK_WIDGET (shell)),
                                     gimp_widget_get_monitor (GTK_WIDGET (shell)),
                                     TRUE,


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