app: move all GimpToolPresetEditor members to a private struct

This commit is contained in:
Michael Natterer
2012-01-23 00:56:21 +01:00
parent 6699ed185c
commit 313430b738
2 changed files with 40 additions and 28 deletions

View File

@ -37,6 +37,15 @@
#include "gimp-intl.h" #include "gimp-intl.h"
struct _GimpToolPresetEditorPrivate
{
GimpToolPreset *tool_preset_model;
GtkWidget *tool_icon;
GtkWidget *tool_label;
};
/* local function prototypes */ /* local function prototypes */
static void gimp_tool_preset_editor_constructed (GObject *object); static void gimp_tool_preset_editor_constructed (GObject *object);
@ -73,11 +82,16 @@ gimp_tool_preset_editor_class_init (GimpToolPresetEditorClass *klass)
editor_class->set_data = gimp_tool_preset_editor_set_data; editor_class->set_data = gimp_tool_preset_editor_set_data;
editor_class->title = _("Tool Preset Editor"); editor_class->title = _("Tool Preset Editor");
g_type_class_add_private (klass, sizeof (GimpToolPresetEditorPrivate));
} }
static void static void
gimp_tool_preset_editor_init (GimpToolPresetEditor *editor) gimp_tool_preset_editor_init (GimpToolPresetEditor *editor)
{ {
editor->priv = G_TYPE_INSTANCE_GET_PRIVATE (editor,
GIMP_TYPE_TOOL_PRESET_EDITOR,
GimpToolPresetEditorPrivate);
} }
static void static void
@ -93,7 +107,7 @@ gimp_tool_preset_editor_constructed (GObject *object)
if (G_OBJECT_CLASS (parent_class)->constructed) if (G_OBJECT_CLASS (parent_class)->constructed)
G_OBJECT_CLASS (parent_class)->constructed (object); G_OBJECT_CLASS (parent_class)->constructed (object);
preset = editor->tool_preset_model = preset = editor->priv->tool_preset_model =
g_object_new (GIMP_TYPE_TOOL_PRESET, g_object_new (GIMP_TYPE_TOOL_PRESET,
"gimp", data_editor->context->gimp, "gimp", data_editor->context->gimp,
NULL); NULL);
@ -106,18 +120,18 @@ gimp_tool_preset_editor_constructed (GObject *object)
gtk_box_pack_start (GTK_BOX (data_editor), hbox, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (data_editor), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox); gtk_widget_show (hbox);
editor->tool_icon = gtk_image_new (); editor->priv->tool_icon = gtk_image_new ();
gtk_box_pack_start (GTK_BOX (hbox), editor->tool_icon, gtk_box_pack_start (GTK_BOX (hbox), editor->priv->tool_icon,
FALSE, FALSE, 0); FALSE, FALSE, 0);
gtk_widget_show (editor->tool_icon); gtk_widget_show (editor->priv->tool_icon);
editor->tool_label = gtk_label_new (""); editor->priv->tool_label = gtk_label_new ("");
gimp_label_set_attributes (GTK_LABEL (editor->tool_label), gimp_label_set_attributes (GTK_LABEL (editor->priv->tool_label),
PANGO_ATTR_STYLE, PANGO_STYLE_ITALIC, PANGO_ATTR_STYLE, PANGO_STYLE_ITALIC,
-1); -1);
gtk_box_pack_start (GTK_BOX (hbox), editor->tool_label, gtk_box_pack_start (GTK_BOX (hbox), editor->priv->tool_label,
FALSE, FALSE, 0); FALSE, FALSE, 0);
gtk_widget_show (editor->tool_label); gtk_widget_show (editor->priv->tool_label);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2);
gtk_box_pack_start (GTK_BOX (data_editor), hbox, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (data_editor), hbox, FALSE, FALSE, 0);
@ -176,10 +190,10 @@ gimp_tool_preset_editor_finalize (GObject *object)
{ {
GimpToolPresetEditor *editor = GIMP_TOOL_PRESET_EDITOR (object); GimpToolPresetEditor *editor = GIMP_TOOL_PRESET_EDITOR (object);
if (editor->tool_preset_model) if (editor->priv->tool_preset_model)
{ {
g_object_unref (editor->tool_preset_model); g_object_unref (editor->priv->tool_preset_model);
editor->tool_preset_model = NULL; editor->priv->tool_preset_model = NULL;
} }
G_OBJECT_CLASS (parent_class)->finalize (object); G_OBJECT_CLASS (parent_class)->finalize (object);
@ -204,7 +218,7 @@ gimp_tool_preset_editor_set_data (GimpDataEditor *editor,
G_CALLBACK (gimp_tool_preset_editor_notify_data), G_CALLBACK (gimp_tool_preset_editor_notify_data),
editor); editor);
if (preset_editor->tool_preset_model) if (preset_editor->priv->tool_preset_model)
gimp_tool_preset_editor_sync_data (preset_editor); gimp_tool_preset_editor_sync_data (preset_editor);
} }
} }
@ -240,26 +254,26 @@ gimp_tool_preset_editor_sync_data (GimpToolPresetEditor *editor)
const gchar *stock_id; const gchar *stock_id;
gchar *label; gchar *label;
g_signal_handlers_block_by_func (editor->tool_preset_model, g_signal_handlers_block_by_func (editor->priv->tool_preset_model,
gimp_tool_preset_editor_notify_model, gimp_tool_preset_editor_notify_model,
editor); editor);
gimp_config_copy (GIMP_CONFIG (data_editor->data), gimp_config_copy (GIMP_CONFIG (data_editor->data),
GIMP_CONFIG (editor->tool_preset_model), GIMP_CONFIG (editor->priv->tool_preset_model),
GIMP_CONFIG_PARAM_SERIALIZE); GIMP_CONFIG_PARAM_SERIALIZE);
g_signal_handlers_unblock_by_func (editor->tool_preset_model, g_signal_handlers_unblock_by_func (editor->priv->tool_preset_model,
gimp_tool_preset_editor_notify_model, gimp_tool_preset_editor_notify_model,
editor); editor);
tool_info = editor->tool_preset_model->tool_options->tool_info; tool_info = editor->priv->tool_preset_model->tool_options->tool_info;
stock_id = gimp_viewable_get_stock_id (GIMP_VIEWABLE (tool_info)); stock_id = gimp_viewable_get_stock_id (GIMP_VIEWABLE (tool_info));
label = g_strdup_printf (_("%s Preset"), tool_info->blurb); label = g_strdup_printf (_("%s Preset"), tool_info->blurb);
gtk_image_set_from_stock (GTK_IMAGE (editor->tool_icon), gtk_image_set_from_stock (GTK_IMAGE (editor->priv->tool_icon),
stock_id, GTK_ICON_SIZE_MENU); stock_id, GTK_ICON_SIZE_MENU);
gtk_label_set_text (GTK_LABEL (editor->tool_label), label); gtk_label_set_text (GTK_LABEL (editor->priv->tool_label), label);
g_free (label); g_free (label);
} }
@ -277,7 +291,7 @@ gimp_tool_preset_editor_notify_model (GimpToolPreset *options,
gimp_tool_preset_editor_notify_data, gimp_tool_preset_editor_notify_data,
editor); editor);
gimp_config_copy (GIMP_CONFIG (editor->tool_preset_model), gimp_config_copy (GIMP_CONFIG (editor->priv->tool_preset_model),
GIMP_CONFIG (data_editor->data), GIMP_CONFIG (data_editor->data),
GIMP_CONFIG_PARAM_SERIALIZE); GIMP_CONFIG_PARAM_SERIALIZE);
@ -294,15 +308,15 @@ gimp_tool_preset_editor_notify_data (GimpToolPreset *options,
{ {
GimpDataEditor *data_editor = GIMP_DATA_EDITOR (editor); GimpDataEditor *data_editor = GIMP_DATA_EDITOR (editor);
g_signal_handlers_block_by_func (editor->tool_preset_model, g_signal_handlers_block_by_func (editor->priv->tool_preset_model,
gimp_tool_preset_editor_notify_model, gimp_tool_preset_editor_notify_model,
editor); editor);
gimp_config_copy (GIMP_CONFIG (data_editor->data), gimp_config_copy (GIMP_CONFIG (data_editor->data),
GIMP_CONFIG (editor->tool_preset_model), GIMP_CONFIG (editor->priv->tool_preset_model),
GIMP_CONFIG_PARAM_SERIALIZE); GIMP_CONFIG_PARAM_SERIALIZE);
g_signal_handlers_unblock_by_func (editor->tool_preset_model, g_signal_handlers_unblock_by_func (editor->priv->tool_preset_model,
gimp_tool_preset_editor_notify_model, gimp_tool_preset_editor_notify_model,
editor); editor);
} }

View File

@ -30,16 +30,14 @@
#define GIMP_TOOL_PRESET_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_TOOL_PRESET_EDITOR, GimpToolPresetEditorClass)) #define GIMP_TOOL_PRESET_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_TOOL_PRESET_EDITOR, GimpToolPresetEditorClass))
typedef struct _GimpToolPresetEditorPrivate GimpToolPresetEditorPrivate;
typedef struct _GimpToolPresetEditorClass GimpToolPresetEditorClass; typedef struct _GimpToolPresetEditorClass GimpToolPresetEditorClass;
struct _GimpToolPresetEditor struct _GimpToolPresetEditor
{ {
GimpDataEditor parent_instance; GimpDataEditor parent_instance;
GimpToolPreset *tool_preset_model; GimpToolPresetEditorPrivate *priv;
GtkWidget *tool_icon;
GtkWidget *tool_label;
}; };
struct _GimpToolPresetEditorClass struct _GimpToolPresetEditorClass