[gimp] app: add a GimpContext parameter to all functions which create GimpData
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: add a GimpContext parameter to all functions which create GimpData
- Date: Mon, 5 Apr 2010 11:27:02 +0000 (UTC)
commit 430b0e551718622650ce1bec3748741cc9b5d400
Author: Michael Natterer <mitch gimp org>
Date: Mon Apr 5 13:24:54 2010 +0200
app: add a GimpContext parameter to all functions which create GimpData
and pass a context whereever needed. Fix up gimp_tool_preset_new()
to actually make a copy of the context's active tool's options.
app/actions/data-commands.c | 9 +++++--
app/core/gimp-gradients.c | 5 +++-
app/core/gimpbrush.c | 7 +++--
app/core/gimpbrush.h | 5 ++-
app/core/gimpcontext.c | 30 ++++++++++++----------------
app/core/gimpdatafactory.c | 12 +++++++---
app/core/gimpdatafactory.h | 11 ++++++---
app/core/gimpdynamics.c | 7 +++--
app/core/gimpdynamics.h | 5 ++-
app/core/gimpgradient.c | 7 +++--
app/core/gimpgradient.h | 5 ++-
app/core/gimppalette-import.c | 37 +++++++++++++++++++++++-----------
app/core/gimppalette-import.h | 6 ++++-
app/core/gimppalette-load.c | 25 ++++++++++++++---------
app/core/gimppalette-load.h | 15 +++++++++----
app/core/gimppalette.c | 7 +++--
app/core/gimppalette.h | 5 ++-
app/core/gimppattern.c | 7 +++--
app/core/gimppattern.h | 5 ++-
app/core/gimptoolpreset.c | 30 +++++++++++++++++++++------
app/core/gimptoolpreset.h | 6 ++--
app/dialogs/palette-import-dialog.c | 6 ++++-
app/pdb/brush-cmds.c | 3 +-
app/pdb/gradient-cmds.c | 3 +-
app/pdb/palette-cmds.c | 3 +-
app/widgets/gimpselectiondata.c | 8 +++---
tools/pdbgen/pdb/brush.pdb | 3 +-
tools/pdbgen/pdb/gradient.pdb | 3 +-
tools/pdbgen/pdb/palette.pdb | 3 +-
29 files changed, 175 insertions(+), 103 deletions(-)
---
diff --git a/app/actions/data-commands.c b/app/actions/data-commands.c
index 66fb5a8..34ef598 100644
--- a/app/actions/data-commands.c
+++ b/app/actions/data-commands.c
@@ -121,13 +121,16 @@ data_new_cmd_callback (GtkAction *action,
if (gimp_data_factory_view_has_data_new_func (view))
{
- GimpContext *context;
- GimpData *data;
+ GimpDataFactory *factory;
+ GimpContext *context;
+ GimpData *data;
+
+ factory = gimp_data_factory_view_get_data_factory (view);
context =
gimp_container_view_get_context (GIMP_CONTAINER_EDITOR (view)->view);
- data = gimp_data_factory_data_new (gimp_data_factory_view_get_data_factory (view), _("Untitled"));
+ data = gimp_data_factory_data_new (factory, _("Untitled"), context);
if (data)
{
diff --git a/app/core/gimp-gradients.c b/app/core/gimp-gradients.c
index 13052ab..dd6749f 100644
--- a/app/core/gimp-gradients.c
+++ b/app/core/gimp-gradients.c
@@ -114,7 +114,10 @@ gimp_gradients_add_gradient (Gimp *gimp,
const gchar *name,
const gchar *id)
{
- GimpGradient *gradient = GIMP_GRADIENT (gimp_gradient_new (name));
+ GimpGradient *gradient;
+
+ gradient = GIMP_GRADIENT (gimp_gradient_new (name,
+ gimp_get_user_context (gimp)));
gimp_data_make_internal (GIMP_DATA (gradient), id);
diff --git a/app/core/gimpbrush.c b/app/core/gimpbrush.c
index f297b54..aa8cf0e 100644
--- a/app/core/gimpbrush.c
+++ b/app/core/gimpbrush.c
@@ -399,7 +399,8 @@ gimp_brush_get_checksum (GimpTagged *tagged)
/* public functions */
GimpData *
-gimp_brush_new (const gchar *name)
+gimp_brush_new (const gchar *name,
+ GimpContext *context)
{
g_return_val_if_fail (name != NULL, NULL);
@@ -409,13 +410,13 @@ gimp_brush_new (const gchar *name)
}
GimpData *
-gimp_brush_get_standard (void)
+gimp_brush_get_standard (GimpContext *context)
{
static GimpData *standard_brush = NULL;
if (! standard_brush)
{
- standard_brush = gimp_brush_new ("Standard");
+ standard_brush = gimp_brush_new ("Standard", context);
gimp_data_clean (standard_brush);
gimp_data_make_internal (standard_brush, "gimp-brush-standard");
diff --git a/app/core/gimpbrush.h b/app/core/gimpbrush.h
index 2a1e96d..50d4484 100644
--- a/app/core/gimpbrush.h
+++ b/app/core/gimpbrush.h
@@ -80,8 +80,9 @@ struct _GimpBrushClass
GType gimp_brush_get_type (void) G_GNUC_CONST;
-GimpData * gimp_brush_new (const gchar *name);
-GimpData * gimp_brush_get_standard (void);
+GimpData * gimp_brush_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_brush_get_standard (GimpContext *context);
GimpBrush * gimp_brush_select_brush (GimpBrush *brush,
const GimpCoords *last_coords,
diff --git a/app/core/gimpcontext.c b/app/core/gimpcontext.c
index d34621e..cc23e4a 100644
--- a/app/core/gimpcontext.c
+++ b/app/core/gimpcontext.c
@@ -2490,7 +2490,7 @@ gimp_context_brush_list_thaw (GimpContainer *container,
brush = gimp_context_find_object (context, container,
context->brush_name,
- gimp_brush_get_standard ());
+ gimp_brush_get_standard (context));
gimp_context_real_set_brush (context, brush);
}
@@ -2520,7 +2520,7 @@ gimp_context_real_set_brush (GimpContext *context,
GimpBrush *brush)
{
if (! standard_brush)
- standard_brush = GIMP_BRUSH (gimp_brush_get_standard ());
+ standard_brush = GIMP_BRUSH (gimp_brush_get_standard (context));
if (context->brush == brush)
return;
@@ -2630,7 +2630,7 @@ gimp_context_dynamics_list_thaw (GimpContainer *container,
dynamics = gimp_context_find_object (context, container,
context->dynamics_name,
- gimp_dynamics_get_standard ());
+ gimp_dynamics_get_standard (context));
gimp_context_real_set_dynamics (context, dynamics);
}
@@ -2641,7 +2641,7 @@ gimp_context_real_set_dynamics (GimpContext *context,
{
if (! standard_dynamics)
{
- standard_dynamics = GIMP_DYNAMICS (gimp_dynamics_get_standard ());
+ standard_dynamics = GIMP_DYNAMICS (gimp_dynamics_get_standard (context));
}
if (context->dynamics == dynamics)
@@ -2736,7 +2736,7 @@ gimp_context_pattern_list_thaw (GimpContainer *container,
pattern = gimp_context_find_object (context, container,
context->pattern_name,
- gimp_pattern_get_standard ());
+ gimp_pattern_get_standard (context));
gimp_context_real_set_pattern (context, pattern);
}
@@ -2766,7 +2766,7 @@ gimp_context_real_set_pattern (GimpContext *context,
GimpPattern *pattern)
{
if (! standard_pattern)
- standard_pattern = GIMP_PATTERN (gimp_pattern_get_standard ());
+ standard_pattern = GIMP_PATTERN (gimp_pattern_get_standard (context));
if (context->pattern == pattern)
return;
@@ -2858,7 +2858,7 @@ gimp_context_gradient_list_thaw (GimpContainer *container,
gradient = gimp_context_find_object (context, container,
context->gradient_name,
- gimp_gradient_get_standard ());
+ gimp_gradient_get_standard (context));
gimp_context_real_set_gradient (context, gradient);
}
@@ -2888,7 +2888,7 @@ gimp_context_real_set_gradient (GimpContext *context,
GimpGradient *gradient)
{
if (! standard_gradient)
- standard_gradient = GIMP_GRADIENT (gimp_gradient_get_standard ());
+ standard_gradient = GIMP_GRADIENT (gimp_gradient_get_standard (context));
if (context->gradient == gradient)
return;
@@ -2980,7 +2980,7 @@ gimp_context_palette_list_thaw (GimpContainer *container,
palette = gimp_context_find_object (context, container,
context->palette_name,
- gimp_palette_get_standard ());
+ gimp_palette_get_standard (context));
gimp_context_real_set_palette (context, palette);
}
@@ -3010,7 +3010,7 @@ gimp_context_real_set_palette (GimpContext *context,
GimpPalette *palette)
{
if (! standard_palette)
- standard_palette = GIMP_PALETTE (gimp_palette_get_standard ());
+ standard_palette = GIMP_PALETTE (gimp_palette_get_standard (context));
if (context->palette == palette)
return;
@@ -3120,7 +3120,7 @@ gimp_context_tool_preset_list_thaw (GimpContainer *container,
tool_preset = gimp_context_find_object (context, container,
context->tool_preset_name,
- gimp_tool_preset_get_standard ());
+ gimp_tool_preset_get_standard (context));
gimp_context_real_set_tool_preset (context, tool_preset);
}
@@ -3130,14 +3130,10 @@ gimp_context_real_set_tool_preset (GimpContext *context,
GimpToolPreset *tool_preset)
{
if (! standard_tool_preset)
- {
- standard_tool_preset = GIMP_TOOL_PRESET (gimp_tool_preset_get_standard ());
- }
+ standard_tool_preset = GIMP_TOOL_PRESET (gimp_tool_preset_get_standard (context));
if (context->tool_preset == tool_preset)
- {
- return;
- }
+ return;
if (context->tool_preset_name && tool_preset != standard_tool_preset)
{
diff --git a/app/core/gimpdatafactory.c b/app/core/gimpdatafactory.c
index 9074bbf..bcae27f 100644
--- a/app/core/gimpdatafactory.c
+++ b/app/core/gimpdatafactory.c
@@ -478,15 +478,17 @@ gimp_data_factory_data_free (GimpDataFactory *factory)
GimpData *
gimp_data_factory_data_new (GimpDataFactory *factory,
- const gchar *name)
+ const gchar *name,
+ GimpContext *context)
{
g_return_val_if_fail (GIMP_IS_DATA_FACTORY (factory), NULL);
g_return_val_if_fail (name != NULL, NULL);
g_return_val_if_fail (*name != '\0', NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
if (factory->priv->data_new_func)
{
- GimpData *data = factory->priv->data_new_func (name);
+ GimpData *data = factory->priv->data_new_func (name, context);
if (data)
{
@@ -574,12 +576,14 @@ gimp_data_factory_data_delete (GimpDataFactory *factory,
}
GimpData *
-gimp_data_factory_data_get_standard (GimpDataFactory *factory)
+gimp_data_factory_data_get_standard (GimpDataFactory *factory,
+ GimpContext *context)
{
g_return_val_if_fail (GIMP_IS_DATA_FACTORY (factory), NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
if (factory->priv->data_get_standard_func)
- return factory->priv->data_get_standard_func ();
+ return factory->priv->data_get_standard_func (context);
return NULL;
}
diff --git a/app/core/gimpdatafactory.h b/app/core/gimpdatafactory.h
index bad6033..13b4b1d 100644
--- a/app/core/gimpdatafactory.h
+++ b/app/core/gimpdatafactory.h
@@ -25,10 +25,11 @@
#include "gimpobject.h"
-typedef GimpData * (* GimpDataNewFunc) (const gchar *name);
+typedef GimpData * (* GimpDataNewFunc) (const gchar *name,
+ GimpContext *context);
typedef GList * (* GimpDataLoadFunc) (const gchar *filename,
GError **error);
-typedef GimpData * (* GimpDataGetStandardFunc) (void);
+typedef GimpData * (* GimpDataGetStandardFunc) (GimpContext *context);
typedef struct _GimpDataFactoryLoaderEntry GimpDataFactoryLoaderEntry;
@@ -83,14 +84,16 @@ void gimp_data_factory_data_save (GimpDataFactory *factory);
void gimp_data_factory_data_free (GimpDataFactory *factory);
GimpData * gimp_data_factory_data_new (GimpDataFactory *factory,
- const gchar *name);
+ const gchar *name,
+ GimpContext *context);
GimpData * gimp_data_factory_data_duplicate (GimpDataFactory *factory,
GimpData *data);
gboolean gimp_data_factory_data_delete (GimpDataFactory *factory,
GimpData *data,
gboolean delete_from_disk,
GError **error);
-GimpData * gimp_data_factory_data_get_standard (GimpDataFactory *factory);
+GimpData * gimp_data_factory_data_get_standard (GimpDataFactory *factory,
+ GimpContext *context);
gboolean gimp_data_factory_data_save_single (GimpDataFactory *factory,
GimpData *data,
GError **error);
diff --git a/app/core/gimpdynamics.c b/app/core/gimpdynamics.c
index 95458aa..91d0a12 100644
--- a/app/core/gimpdynamics.c
+++ b/app/core/gimpdynamics.c
@@ -378,7 +378,8 @@ gimp_dynamics_get_extension (GimpData *data)
/* public functions */
GimpData *
-gimp_dynamics_new (const gchar *name)
+gimp_dynamics_new (const gchar *name,
+ GimpContext *context)
{
return g_object_new (GIMP_TYPE_DYNAMICS,
"name", name,
@@ -386,13 +387,13 @@ gimp_dynamics_new (const gchar *name)
}
GimpData *
-gimp_dynamics_get_standard (void)
+gimp_dynamics_get_standard (GimpContext *context)
{
static GimpData *standard_dynamics = NULL;
if (! standard_dynamics)
{
- standard_dynamics = gimp_dynamics_new ("Standard dynamics");
+ standard_dynamics = gimp_dynamics_new ("Standard dynamics", context);
gimp_data_clean (standard_dynamics);
gimp_data_make_internal (standard_dynamics, "gimp-dynamics-standard");
diff --git a/app/core/gimpdynamics.h b/app/core/gimpdynamics.h
index 824429f..a81e183 100644
--- a/app/core/gimpdynamics.h
+++ b/app/core/gimpdynamics.h
@@ -56,8 +56,9 @@ struct _GimpDynamicsClass
GType gimp_dynamics_get_type (void) G_GNUC_CONST;
-GimpData * gimp_dynamics_new (const gchar *name);
-GimpData * gimp_dynamics_get_standard (void);
+GimpData * gimp_dynamics_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_dynamics_get_standard (GimpContext *context);
GimpDynamicsOutput * gimp_dynamics_get_output (GimpDynamics *dynamics,
GimpDynamicsOutputType type);
diff --git a/app/core/gimpgradient.c b/app/core/gimpgradient.c
index 43fd925..8e5b74a 100644
--- a/app/core/gimpgradient.c
+++ b/app/core/gimpgradient.c
@@ -322,7 +322,8 @@ gimp_gradient_get_checksum (GimpTagged *tagged)
/* public functions */
GimpData *
-gimp_gradient_new (const gchar *name)
+gimp_gradient_new (const gchar *name,
+ GimpContext *context)
{
GimpGradient *gradient;
@@ -339,13 +340,13 @@ gimp_gradient_new (const gchar *name)
}
GimpData *
-gimp_gradient_get_standard (void)
+gimp_gradient_get_standard (GimpContext *context)
{
static GimpData *standard_gradient = NULL;
if (! standard_gradient)
{
- standard_gradient = gimp_gradient_new ("Standard");
+ standard_gradient = gimp_gradient_new ("Standard", context);
gimp_data_clean (standard_gradient);
gimp_data_make_internal (standard_gradient, "gimp-gradient-standard");
diff --git a/app/core/gimpgradient.h b/app/core/gimpgradient.h
index 123e065..2dbff60 100644
--- a/app/core/gimpgradient.h
+++ b/app/core/gimpgradient.h
@@ -67,8 +67,9 @@ struct _GimpGradientClass
GType gimp_gradient_get_type (void) G_GNUC_CONST;
-GimpData * gimp_gradient_new (const gchar *name);
-GimpData * gimp_gradient_get_standard (void);
+GimpData * gimp_gradient_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_gradient_get_standard (GimpContext *context);
GimpGradientSegment * gimp_gradient_get_color_at (GimpGradient *gradient,
GimpContext *context,
diff --git a/app/core/gimppalette-import.c b/app/core/gimppalette-import.c
index 0fb9504..5baf31a 100644
--- a/app/core/gimppalette-import.c
+++ b/app/core/gimppalette-import.c
@@ -65,7 +65,7 @@ gimp_palette_import_from_gradient (GimpGradient *gradient,
g_return_val_if_fail (palette_name != NULL, NULL);
g_return_val_if_fail (n_colors > 1, NULL);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
dx = 1.0 / (n_colors - 1);
@@ -225,12 +225,15 @@ gimp_palette_import_create_image_palette (gpointer data,
static GimpPalette *
gimp_palette_import_make_palette (GHashTable *table,
const gchar *palette_name,
+ GimpContext *context,
gint n_colors)
{
- GimpPalette *palette = GIMP_PALETTE (gimp_palette_new (palette_name));
- GSList *list = NULL;
+ GimpPalette *palette;
+ GSList *list = NULL;
GSList *iter;
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
+
if (! table)
return palette;
@@ -356,6 +359,7 @@ gimp_palette_import_extract (GimpImage *image,
GimpPalette *
gimp_palette_import_from_image (GimpImage *image,
+ GimpContext *context,
const gchar *palette_name,
gint n_colors,
gint threshold,
@@ -367,6 +371,7 @@ gimp_palette_import_from_image (GimpImage *image,
gint width, height;
g_return_val_if_fail (GIMP_IS_IMAGE (image), NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
g_return_val_if_fail (palette_name != NULL, NULL);
g_return_val_if_fail (n_colors > 1, NULL);
g_return_val_if_fail (threshold > 0, NULL);
@@ -398,7 +403,8 @@ gimp_palette_import_from_image (GimpImage *image,
x, y, width, height,
n_colors, threshold);
- return gimp_palette_import_make_palette (colors, palette_name, n_colors);
+ return gimp_palette_import_make_palette (colors, palette_name, context,
+ n_colors);
}
@@ -406,6 +412,7 @@ gimp_palette_import_from_image (GimpImage *image,
GimpPalette *
gimp_palette_import_from_indexed_image (GimpImage *image,
+ GimpContext *context,
const gchar *palette_name)
{
GimpPalette *palette;
@@ -415,10 +422,11 @@ gimp_palette_import_from_indexed_image (GimpImage *image,
GimpRGB color;
g_return_val_if_fail (GIMP_IS_IMAGE (image), NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
g_return_val_if_fail (gimp_image_base_type (image) == GIMP_INDEXED, NULL);
g_return_val_if_fail (palette_name != NULL, NULL);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
colormap = gimp_image_get_colormap (image);
n_colors = gimp_image_get_colormap_size (image);
@@ -446,6 +454,7 @@ gimp_palette_import_from_indexed_image (GimpImage *image,
GimpPalette *
gimp_palette_import_from_drawable (GimpDrawable *drawable,
+ GimpContext *context,
const gchar *palette_name,
gint n_colors,
gint threshold,
@@ -457,6 +466,7 @@ gimp_palette_import_from_drawable (GimpDrawable *drawable,
gint off_x, off_y;
g_return_val_if_fail (GIMP_IS_DRAWABLE (drawable), NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
g_return_val_if_fail (gimp_item_is_attached (GIMP_ITEM (drawable)), NULL);
g_return_val_if_fail (palette_name != NULL, NULL);
g_return_val_if_fail (n_colors > 1, NULL);
@@ -485,19 +495,22 @@ gimp_palette_import_from_drawable (GimpDrawable *drawable,
x, y, width, height,
n_colors, threshold);
- return gimp_palette_import_make_palette (colors, palette_name, n_colors);
+ return gimp_palette_import_make_palette (colors, palette_name, context,
+ n_colors);
}
/* create a palette from a file **********************************/
GimpPalette *
-gimp_palette_import_from_file (const gchar *filename,
+gimp_palette_import_from_file (GimpContext *context,
+ const gchar *filename,
const gchar *palette_name,
GError **error)
{
GList *palette_list = NULL;
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
g_return_val_if_fail (filename != NULL, NULL);
g_return_val_if_fail (palette_name != NULL, NULL);
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
@@ -509,23 +522,23 @@ gimp_palette_import_from_file (const gchar *filename,
break;
case GIMP_PALETTE_FILE_FORMAT_ACT:
- palette_list = gimp_palette_load_act (filename, error);
+ palette_list = gimp_palette_load_act (context, filename, error);
break;
case GIMP_PALETTE_FILE_FORMAT_RIFF_PAL:
- palette_list = gimp_palette_load_riff (filename, error);
+ palette_list = gimp_palette_load_riff (context, filename, error);
break;
case GIMP_PALETTE_FILE_FORMAT_PSP_PAL:
- palette_list = gimp_palette_load_psp (filename, error);
+ palette_list = gimp_palette_load_psp (context, filename, error);
break;
case GIMP_PALETTE_FILE_FORMAT_ACO:
- palette_list = gimp_palette_load_aco (filename, error);
+ palette_list = gimp_palette_load_aco (context, filename, error);
break;
case GIMP_PALETTE_FILE_FORMAT_CSS:
- palette_list = gimp_palette_load_css (filename, error);
+ palette_list = gimp_palette_load_css (context, filename, error);
break;
default:
diff --git a/app/core/gimppalette-import.h b/app/core/gimppalette-import.h
index f84c42c..6bb61ce 100644
--- a/app/core/gimppalette-import.h
+++ b/app/core/gimppalette-import.h
@@ -25,18 +25,22 @@ GimpPalette * gimp_palette_import_from_gradient (GimpGradient *gradient,
const gchar *palette_name,
gint n_colors);
GimpPalette * gimp_palette_import_from_image (GimpImage *image,
+ GimpContext *context,
const gchar *palette_name,
gint n_colors,
gint treshold,
gboolean selection_only);
GimpPalette * gimp_palette_import_from_indexed_image (GimpImage *image,
+ GimpContext *context,
const gchar *palette_name);
GimpPalette * gimp_palette_import_from_drawable (GimpDrawable *drawable,
+ GimpContext *context,
const gchar *palette_name,
gint n_colors,
gint threshold,
gboolean selection_only);
-GimpPalette * gimp_palette_import_from_file (const gchar *filename,
+GimpPalette * gimp_palette_import_from_file (GimpContext *context,
+ const gchar *filename,
const gchar *palette_name,
GError **error);
diff --git a/app/core/gimppalette-load.c b/app/core/gimppalette-load.c
index 440c071..233f612 100644
--- a/app/core/gimppalette-load.c
+++ b/app/core/gimppalette-load.c
@@ -250,7 +250,8 @@ gimp_palette_load (const gchar *filename,
}
GList *
-gimp_palette_load_act (const gchar *filename,
+gimp_palette_load_act (GimpContext *context,
+ const gchar *filename,
GError **error)
{
GimpPalette *palette;
@@ -274,7 +275,7 @@ gimp_palette_load_act (const gchar *filename,
}
palette_name = g_filename_display_basename (filename);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
g_free (palette_name);
while (read (fd, color_bytes, 3) == 3)
@@ -295,7 +296,8 @@ gimp_palette_load_act (const gchar *filename,
}
GList *
-gimp_palette_load_riff (const gchar *filename,
+gimp_palette_load_riff (GimpContext *context,
+ const gchar *filename,
GError **error)
{
GimpPalette *palette;
@@ -319,7 +321,7 @@ gimp_palette_load_riff (const gchar *filename,
}
palette_name = g_filename_display_basename (filename);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
g_free (palette_name);
lseek (fd, 28, SEEK_SET);
@@ -343,7 +345,8 @@ gimp_palette_load_riff (const gchar *filename,
}
GList *
-gimp_palette_load_psp (const gchar *filename,
+gimp_palette_load_psp (GimpContext *context,
+ const gchar *filename,
GError **error)
{
GimpPalette *palette;
@@ -375,7 +378,7 @@ gimp_palette_load_psp (const gchar *filename,
}
palette_name = g_filename_display_basename (filename);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
g_free (palette_name);
lseek (fd, 16, SEEK_SET);
@@ -434,7 +437,8 @@ gimp_palette_load_psp (const gchar *filename,
}
GList *
-gimp_palette_load_aco (const gchar *filename,
+gimp_palette_load_aco (GimpContext *context,
+ const gchar *filename,
GError **error)
{
GimpPalette *palette;
@@ -476,7 +480,7 @@ gimp_palette_load_aco (const gchar *filename,
}
palette_name = g_filename_display_basename (filename);
- palette = GIMP_PALETTE (gimp_palette_new (palette_name));
+ palette = GIMP_PALETTE (gimp_palette_new (palette_name, context));
g_free (palette_name);
format_version = header[1] + (header[0] << 8);
@@ -602,7 +606,8 @@ gimp_palette_load_aco (const gchar *filename,
GList *
-gimp_palette_load_css (const gchar *filename,
+gimp_palette_load_css (GimpContext *context,
+ const gchar *filename,
GError **error)
{
GimpPalette *palette;
@@ -630,7 +635,7 @@ gimp_palette_load_css (const gchar *filename,
}
name = g_filename_display_basename (filename);
- palette = GIMP_PALETTE (gimp_palette_new (name));
+ palette = GIMP_PALETTE (gimp_palette_new (name, context));
g_free (name);
do
diff --git a/app/core/gimppalette-load.h b/app/core/gimppalette-load.h
index 2566e42..46d631b 100644
--- a/app/core/gimppalette-load.h
+++ b/app/core/gimppalette-load.h
@@ -36,15 +36,20 @@ typedef enum
GList * gimp_palette_load (const gchar *filename,
GError **error);
-GList * gimp_palette_load_act (const gchar *filename,
+GList * gimp_palette_load_act (GimpContext *context,
+ const gchar *filename,
GError **error);
-GList * gimp_palette_load_riff (const gchar *filename,
+GList * gimp_palette_load_riff (GimpContext *context,
+ const gchar *filename,
GError **error);
-GList * gimp_palette_load_psp (const gchar *filename,
+GList * gimp_palette_load_psp (GimpContext *context,
+ const gchar *filename,
GError **error);
-GList * gimp_palette_load_aco (const gchar *filename,
+GList * gimp_palette_load_aco (GimpContext *context,
+ const gchar *filename,
GError **error);
-GList * gimp_palette_load_css (const gchar *filename,
+GList * gimp_palette_load_css (GimpContext *context,
+ const gchar *filename,
GError **error);
GimpPaletteFileFormat gimp_palette_load_detect_format (const gchar *filename);
diff --git a/app/core/gimppalette.c b/app/core/gimppalette.c
index c6993eb..9f1bce3 100644
--- a/app/core/gimppalette.c
+++ b/app/core/gimppalette.c
@@ -272,7 +272,8 @@ gimp_palette_get_description (GimpViewable *viewable,
}
GimpData *
-gimp_palette_new (const gchar *name)
+gimp_palette_new (const gchar *name,
+ GimpContext *context)
{
g_return_val_if_fail (name != NULL, NULL);
g_return_val_if_fail (*name != '\0', NULL);
@@ -283,13 +284,13 @@ gimp_palette_new (const gchar *name)
}
GimpData *
-gimp_palette_get_standard (void)
+gimp_palette_get_standard (GimpContext *context)
{
static GimpData *standard_palette = NULL;
if (! standard_palette)
{
- standard_palette = gimp_palette_new ("Standard");
+ standard_palette = gimp_palette_new ("Standard", context);
gimp_data_clean (standard_palette);
gimp_data_make_internal (standard_palette, "gimp-palette-standard");
diff --git a/app/core/gimppalette.h b/app/core/gimppalette.h
index 9bec7d5..c65e5b2 100644
--- a/app/core/gimppalette.h
+++ b/app/core/gimppalette.h
@@ -60,8 +60,9 @@ struct _GimpPaletteClass
GType gimp_palette_get_type (void) G_GNUC_CONST;
-GimpData * gimp_palette_new (const gchar *name);
-GimpData * gimp_palette_get_standard (void);
+GimpData * gimp_palette_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_palette_get_standard (GimpContext *context);
GimpPaletteEntry * gimp_palette_add_entry (GimpPalette *palette,
gint position,
diff --git a/app/core/gimppattern.c b/app/core/gimppattern.c
index d0502b2..c57d337 100644
--- a/app/core/gimppattern.c
+++ b/app/core/gimppattern.c
@@ -209,7 +209,8 @@ gimp_pattern_get_checksum (GimpTagged *tagged)
}
GimpData *
-gimp_pattern_new (const gchar *name)
+gimp_pattern_new (const gchar *name,
+ GimpContext *context)
{
GimpPattern *pattern;
guchar *data;
@@ -236,13 +237,13 @@ gimp_pattern_new (const gchar *name)
}
GimpData *
-gimp_pattern_get_standard (void)
+gimp_pattern_get_standard (GimpContext *context)
{
static GimpData *standard_pattern = NULL;
if (! standard_pattern)
{
- standard_pattern = gimp_pattern_new ("Standard");
+ standard_pattern = gimp_pattern_new ("Standard", context);
gimp_data_clean (standard_pattern);
gimp_data_make_internal (standard_pattern, "gimp-pattern-standard");
diff --git a/app/core/gimppattern.h b/app/core/gimppattern.h
index 47f2a17..dc1158b 100644
--- a/app/core/gimppattern.h
+++ b/app/core/gimppattern.h
@@ -47,8 +47,9 @@ struct _GimpPatternClass
GType gimp_pattern_get_type (void) G_GNUC_CONST;
-GimpData * gimp_pattern_new (const gchar *name);
-GimpData * gimp_pattern_get_standard (void);
+GimpData * gimp_pattern_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_pattern_get_standard (GimpContext *context);
TempBuf * gimp_pattern_get_mask (const GimpPattern *pattern);
diff --git a/app/core/gimptoolpreset.c b/app/core/gimptoolpreset.c
index 5ebb82e..1b99177 100644
--- a/app/core/gimptoolpreset.c
+++ b/app/core/gimptoolpreset.c
@@ -24,6 +24,7 @@
#include "core-types.h"
+#include "gimptoolinfo.h"
#include "gimptooloptions.h"
#include "gimptoolpreset.h"
#include "gimptoolpreset-load.h"
@@ -84,8 +85,8 @@ gimp_tool_preset_class_init (GimpToolPresetClass *klass)
GIMP_CONFIG_INSTALL_PROP_OBJECT (object_class, PROP_TOOL_OPTIONS,
"tool-options", NULL,
- GIMP_TYPE_TOOL_PRESET,
- GIMP_CONFIG_PARAM_AGGREGATE);
+ GIMP_TYPE_TOOL_OPTIONS,
+ GIMP_PARAM_STATIC_STRINGS);
}
static void
@@ -190,22 +191,37 @@ gimp_tool_preset_get_extension (GimpData *data)
/* public functions */
GimpData *
-gimp_tool_preset_new (const gchar *name)
+gimp_tool_preset_new (const gchar *name,
+ GimpContext *context)
{
+ GimpToolInfo *tool_info;
+ const gchar *stock_id;
+
+ g_return_val_if_fail (name != NULL, NULL);
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
+
+ tool_info = gimp_context_get_tool (context);
+
+ stock_id = gimp_viewable_get_stock_id (GIMP_VIEWABLE (tool_info));
+
return g_object_new (GIMP_TYPE_TOOL_PRESET,
- "name", name,
- // "tool-options", options,
+ "name", name,
+ "stock-id", stock_id,
+ "tool-options", tool_info->tool_options,
NULL);
}
GimpData *
-gimp_tool_preset_get_standard (void)
+gimp_tool_preset_get_standard (GimpContext *context)
{
static GimpData *standard_tool_preset = NULL;
+ g_return_val_if_fail (GIMP_IS_CONTEXT (context), NULL);
+
if (! standard_tool_preset)
{
- standard_tool_preset = gimp_tool_preset_new ("Standard tool preset");
+ standard_tool_preset = gimp_tool_preset_new ("Standard tool preset",
+ context);
gimp_data_clean (standard_tool_preset);
gimp_data_make_internal (standard_tool_preset, "gimp-tool-preset-standard");
diff --git a/app/core/gimptoolpreset.h b/app/core/gimptoolpreset.h
index 8fce4c6..2e3a387 100644
--- a/app/core/gimptoolpreset.h
+++ b/app/core/gimptoolpreset.h
@@ -47,9 +47,9 @@ struct _GimpToolPresetClass
GType gimp_tool_preset_get_type (void) G_GNUC_CONST;
-GimpData * gimp_tool_preset_new (const gchar *name);
-
-GimpData * gimp_tool_preset_get_standard (void);
+GimpData * gimp_tool_preset_new (const gchar *name,
+ GimpContext *context);
+GimpData * gimp_tool_preset_get_standard (GimpContext *context);
#endif /* __GIMP_TOOL_PRESET_H__ */
diff --git a/app/dialogs/palette-import-dialog.c b/app/dialogs/palette-import-dialog.c
index 132f745..d3a3e3c 100644
--- a/app/dialogs/palette-import-dialog.c
+++ b/app/dialogs/palette-import-dialog.c
@@ -807,11 +807,13 @@ palette_import_make_palette (ImportDialog *dialog)
if (gimp_image_base_type (image) == GIMP_INDEXED)
{
palette = gimp_palette_import_from_indexed_image (image,
+ dialog->context,
palette_name);
}
else if (sample_merged)
{
palette = gimp_palette_import_from_image (image,
+ dialog->context,
palette_name,
n_colors,
threshold,
@@ -824,6 +826,7 @@ palette_import_make_palette (ImportDialog *dialog)
drawable = GIMP_DRAWABLE (gimp_image_get_active_layer (image));
palette = gimp_palette_import_from_drawable (drawable,
+ dialog->context,
palette_name,
n_colors,
threshold,
@@ -840,7 +843,8 @@ palette_import_make_palette (ImportDialog *dialog)
filename =
gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog->file_chooser));
- palette = gimp_palette_import_from_file (filename,
+ palette = gimp_palette_import_from_file (dialog->context,
+ filename,
palette_name, &error);
g_free (filename);
diff --git a/app/pdb/brush-cmds.c b/app/pdb/brush-cmds.c
index f15300e..be8e562 100644
--- a/app/pdb/brush-cmds.c
+++ b/app/pdb/brush-cmds.c
@@ -56,7 +56,8 @@ brush_new_invoker (GimpProcedure *procedure,
if (success)
{
- GimpData *data = gimp_data_factory_data_new (gimp->brush_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->brush_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
diff --git a/app/pdb/gradient-cmds.c b/app/pdb/gradient-cmds.c
index 2c1c68e..a66be6d 100644
--- a/app/pdb/gradient-cmds.c
+++ b/app/pdb/gradient-cmds.c
@@ -105,7 +105,8 @@ gradient_new_invoker (GimpProcedure *procedure,
if (success)
{
- GimpData *data = gimp_data_factory_data_new (gimp->gradient_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->gradient_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
diff --git a/app/pdb/palette-cmds.c b/app/pdb/palette-cmds.c
index b6197d2..a538088 100644
--- a/app/pdb/palette-cmds.c
+++ b/app/pdb/palette-cmds.c
@@ -56,7 +56,8 @@ palette_new_invoker (GimpProcedure *procedure,
if (success)
{
- GimpData *data = gimp_data_factory_data_new (gimp->palette_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->palette_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
diff --git a/app/widgets/gimpselectiondata.c b/app/widgets/gimpselectiondata.c
index 567d8cf..ff0c589 100644
--- a/app/widgets/gimpselectiondata.c
+++ b/app/widgets/gimpselectiondata.c
@@ -595,7 +595,7 @@ gimp_selection_data_get_brush (GtkSelectionData *selection,
return (GimpBrush *)
gimp_selection_data_get_object (selection,
gimp_data_factory_get_container (gimp->brush_factory),
- GIMP_OBJECT (gimp_brush_get_standard ()));
+ GIMP_OBJECT (gimp_brush_get_standard (gimp_get_user_context (gimp))));
}
GimpPattern *
@@ -608,7 +608,7 @@ gimp_selection_data_get_pattern (GtkSelectionData *selection,
return (GimpPattern *)
gimp_selection_data_get_object (selection,
gimp_data_factory_get_container (gimp->pattern_factory),
- GIMP_OBJECT (gimp_pattern_get_standard ()));
+ GIMP_OBJECT (gimp_pattern_get_standard (gimp_get_user_context (gimp))));
}
GimpGradient *
@@ -621,7 +621,7 @@ gimp_selection_data_get_gradient (GtkSelectionData *selection,
return (GimpGradient *)
gimp_selection_data_get_object (selection,
gimp_data_factory_get_container (gimp->gradient_factory),
- GIMP_OBJECT (gimp_gradient_get_standard ()));
+ GIMP_OBJECT (gimp_gradient_get_standard (gimp_get_user_context (gimp))));
}
GimpPalette *
@@ -634,7 +634,7 @@ gimp_selection_data_get_palette (GtkSelectionData *selection,
return (GimpPalette *)
gimp_selection_data_get_object (selection,
gimp_data_factory_get_container (gimp->palette_factory),
- GIMP_OBJECT (gimp_palette_get_standard ()));
+ GIMP_OBJECT (gimp_palette_get_standard (gimp_get_user_context (gimp))));
}
GimpFont *
diff --git a/tools/pdbgen/pdb/brush.pdb b/tools/pdbgen/pdb/brush.pdb
index 1cd575b..5ebfc66 100644
--- a/tools/pdbgen/pdb/brush.pdb
+++ b/tools/pdbgen/pdb/brush.pdb
@@ -35,7 +35,8 @@ sub brush_new {
%invoke = (
code => <<'CODE'
{
- GimpData *data = gimp_data_factory_data_new (gimp->brush_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->brush_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
diff --git a/tools/pdbgen/pdb/gradient.pdb b/tools/pdbgen/pdb/gradient.pdb
index 1695604..8e7befe 100644
--- a/tools/pdbgen/pdb/gradient.pdb
+++ b/tools/pdbgen/pdb/gradient.pdb
@@ -33,7 +33,8 @@ sub gradient_new {
%invoke = (
code => <<'CODE'
{
- GimpData *data = gimp_data_factory_data_new (gimp->gradient_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->gradient_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
diff --git a/tools/pdbgen/pdb/palette.pdb b/tools/pdbgen/pdb/palette.pdb
index daea659..a3891f5 100644
--- a/tools/pdbgen/pdb/palette.pdb
+++ b/tools/pdbgen/pdb/palette.pdb
@@ -35,7 +35,8 @@ sub palette_new {
%invoke = (
code => <<'CODE'
{
- GimpData *data = gimp_data_factory_data_new (gimp->palette_factory, name);
+ GimpData *data = gimp_data_factory_data_new (gimp->palette_factory,
+ name, context);
if (data)
actual_name = g_strdup (gimp_object_get_name (data));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]