[gimp] app: remove the recent_settings container from GimpImageMapToolClass
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: remove the recent_settings container from GimpImageMapToolClass
- Date: Sat, 19 Mar 2016 21:17:11 +0000 (UTC)
commit 041659a2ab3c1f37e4c5ddd31aee5aeff74e6c0d
Author: Michael Natterer <mitch gimp org>
Date: Sat Mar 19 22:06:13 2016 +0100
app: remove the recent_settings container from GimpImageMapToolClass
and use gimp_gegl_config_get_container() locally where needed. This
also removes some special code from gimpoperationtool.c.
app/tools/gimpimagemaptool.c | 27 ++++++++++++++++++---------
app/tools/gimpimagemaptool.h | 2 --
app/tools/gimpoperationtool.c | 6 ------
3 files changed, 18 insertions(+), 17 deletions(-)
---
diff --git a/app/tools/gimpimagemaptool.c b/app/tools/gimpimagemaptool.c
index b71b462..61b5852 100644
--- a/app/tools/gimpimagemaptool.c
+++ b/app/tools/gimpimagemaptool.c
@@ -196,9 +196,6 @@ gimp_image_map_tool_class_init (GimpImageMapToolClass *klass)
static void
gimp_image_map_tool_base_init (GimpImageMapToolClass *klass)
{
- klass->recent_settings = gimp_list_new (GIMP_TYPE_SETTINGS, TRUE);
- gimp_list_set_sort_func (GIMP_LIST (klass->recent_settings),
- (GCompareFunc) gimp_settings_compare);
}
static void
@@ -390,16 +387,23 @@ gimp_image_map_tool_initialize (GimpTool *tool,
if (im_tool->config && klass->settings_name)
{
- GtkWidget *settings_ui;
- GFile *default_folder;
- GFile *settings_file;
+ GType type = G_TYPE_FROM_INSTANCE (im_tool->config);
+ GimpContainer *settings;
+ GFile *settings_file;
+ GFile *default_folder;
+ GtkWidget *settings_ui;
+
+ settings = gimp_gegl_config_get_container (type);
+ if (! gimp_list_get_sort_func (GIMP_LIST (settings)))
+ gimp_list_set_sort_func (GIMP_LIST (settings),
+ (GCompareFunc) gimp_settings_compare);
settings_file = gimp_tool_info_get_options_file (tool_info,
".settings");
default_folder = gimp_directory_file (klass->settings_name, NULL);
settings_ui = klass->get_settings_ui (im_tool,
- klass->recent_settings,
+ settings,
settings_file,
klass->import_dialog_title,
klass->export_dialog_title,
@@ -838,6 +842,12 @@ gimp_image_map_tool_get_operation (GimpImageMapTool *im_tool)
im_tool->config = NULL;
}
+ if (im_tool->default_config)
+ {
+ g_object_unref (im_tool->default_config);
+ im_tool->default_config = NULL;
+ }
+
if (im_tool->title)
{
g_free (im_tool->title);
@@ -912,8 +922,7 @@ gimp_image_map_tool_get_operation (GimpImageMapTool *im_tool)
gimp_tool_gui_set_help_id (im_tool->gui, im_tool->help_id);
}
- if (operation_name &&
- gegl_operation_get_key (operation_name, "position-dependent"))
+ if (gegl_operation_get_key (operation_name, "position-dependent"))
{
if (im_tool->gui)
gtk_widget_show (im_tool->region_combo);
diff --git a/app/tools/gimpimagemaptool.h b/app/tools/gimpimagemaptool.h
index 7faf30f..35e16d9 100644
--- a/app/tools/gimpimagemaptool.h
+++ b/app/tools/gimpimagemaptool.h
@@ -68,8 +68,6 @@ struct _GimpImageMapToolClass
const gchar *import_dialog_title;
const gchar *export_dialog_title;
- GimpContainer *recent_settings;
-
/* virtual functions */
gchar * (* get_operation) (GimpImageMapTool *im_tool,
gchar **title,
diff --git a/app/tools/gimpoperationtool.c b/app/tools/gimpoperationtool.c
index 8cb3096..3012595 100644
--- a/app/tools/gimpoperationtool.c
+++ b/app/tools/gimpoperationtool.c
@@ -328,18 +328,12 @@ gimp_operation_tool_get_settings_ui (GimpImageMapTool *im_tool,
GtkWidget **settings_box)
{
GimpOperationTool *tool = GIMP_OPERATION_TOOL (im_tool);
- GType type = G_TYPE_FROM_INSTANCE (im_tool->config);
GtkWidget *widget;
gchar *basename;
GFile *file;
gchar *import_title;
gchar *export_title;
- settings = gimp_gegl_config_get_container (type);
- if (! gimp_list_get_sort_func (GIMP_LIST (settings)))
- gimp_list_set_sort_func (GIMP_LIST (settings),
- (GCompareFunc) gimp_settings_compare);
-
basename = g_strconcat (G_OBJECT_TYPE_NAME (im_tool->config),
".settings", NULL);
file = gimp_directory_file ("filters", basename, NULL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]