mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 17:33:25 +00:00
libgimp: _gimp_gp_params_to_value_array() remove "gboolean full_copy"
With all the GValue and GimpValueArray copying involved, we can't really make a shallow copy anyway, so don't let the API pretend we could.
This commit is contained in:
parent
17f8cff6f6
commit
0f7f322fa5
5 changed files with 37 additions and 84 deletions
|
@ -574,7 +574,7 @@ gimp_plug_in_handle_proc_run (GimpPlugIn *plug_in,
|
||||||
procedure ? procedure->num_args : 0,
|
procedure ? procedure->num_args : 0,
|
||||||
proc_run->params,
|
proc_run->params,
|
||||||
proc_run->nparams,
|
proc_run->nparams,
|
||||||
FALSE, FALSE);
|
FALSE);
|
||||||
|
|
||||||
/* Execute the procedure even if gimp_pdb_lookup_procedure()
|
/* Execute the procedure even if gimp_pdb_lookup_procedure()
|
||||||
* returned NULL, gimp_pdb_execute_procedure_by_name_args() will
|
* returned NULL, gimp_pdb_execute_procedure_by_name_args() will
|
||||||
|
@ -645,7 +645,7 @@ gimp_plug_in_handle_proc_return (GimpPlugIn *plug_in,
|
||||||
proc_frame->procedure->num_values,
|
proc_frame->procedure->num_values,
|
||||||
proc_return->params,
|
proc_return->params,
|
||||||
proc_return->nparams,
|
proc_return->nparams,
|
||||||
TRUE, TRUE);
|
TRUE);
|
||||||
|
|
||||||
if (proc_frame->main_loop)
|
if (proc_frame->main_loop)
|
||||||
{
|
{
|
||||||
|
@ -681,7 +681,7 @@ gimp_plug_in_handle_temp_proc_return (GimpPlugIn *plug_in,
|
||||||
proc_frame->procedure->num_values,
|
proc_frame->procedure->num_values,
|
||||||
proc_return->params,
|
proc_return->params,
|
||||||
proc_return->nparams,
|
proc_return->nparams,
|
||||||
TRUE, TRUE);
|
TRUE);
|
||||||
|
|
||||||
gimp_plug_in_main_loop_quit (plug_in);
|
gimp_plug_in_main_loop_quit (plug_in);
|
||||||
gimp_plug_in_proc_frame_pop (plug_in);
|
gimp_plug_in_proc_frame_pop (plug_in);
|
||||||
|
|
|
@ -442,8 +442,7 @@ static void
|
||||||
gimp_gp_param_to_value (gpointer gimp,
|
gimp_gp_param_to_value (gpointer gimp,
|
||||||
const GPParam *param,
|
const GPParam *param,
|
||||||
GType type,
|
GType type,
|
||||||
GValue *value,
|
GValue *value)
|
||||||
gboolean full_copy)
|
|
||||||
{
|
{
|
||||||
g_return_if_fail (param != NULL);
|
g_return_if_fail (param != NULL);
|
||||||
g_return_if_fail (value != NULL);
|
g_return_if_fail (value != NULL);
|
||||||
|
@ -476,10 +475,7 @@ gimp_gp_param_to_value (gpointer gimp,
|
||||||
}
|
}
|
||||||
else if (G_VALUE_HOLDS_STRING (value))
|
else if (G_VALUE_HOLDS_STRING (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
g_value_set_string (value, param->data.d_string);
|
||||||
g_value_set_string (value, param->data.d_string);
|
|
||||||
else
|
|
||||||
g_value_set_static_string (value, param->data.d_string);
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_RGB (value))
|
else if (GIMP_VALUE_HOLDS_RGB (value))
|
||||||
{
|
{
|
||||||
|
@ -487,92 +483,51 @@ gimp_gp_param_to_value (gpointer gimp,
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_PARASITE (value))
|
else if (GIMP_VALUE_HOLDS_PARASITE (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
g_value_set_boxed (value, ¶m->data.d_parasite);
|
||||||
g_value_set_boxed (value, ¶m->data.d_parasite);
|
|
||||||
else
|
|
||||||
g_value_set_static_boxed (value, ¶m->data.d_parasite);
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_INT32_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_INT32_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_int32_array (value,
|
||||||
gimp_value_set_int32_array (value,
|
(gint32 *) param->data.d_array.data,
|
||||||
(gint32 *) param->data.d_array.data,
|
param->data.d_array.size /
|
||||||
param->data.d_array.size /
|
sizeof (gint32));
|
||||||
sizeof (gint32));
|
|
||||||
else
|
|
||||||
gimp_value_set_static_int32_array (value,
|
|
||||||
(gint32 *) param->data.d_array.data,
|
|
||||||
param->data.d_array.size /
|
|
||||||
sizeof (gint32));
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_INT16_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_INT16_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_int16_array (value,
|
||||||
gimp_value_set_int16_array (value,
|
(gint16 *) param->data.d_array.data,
|
||||||
(gint16 *) param->data.d_array.data,
|
param->data.d_array.size /
|
||||||
param->data.d_array.size /
|
sizeof (gint16));
|
||||||
sizeof (gint16));
|
|
||||||
else
|
|
||||||
gimp_value_set_static_int16_array (value,
|
|
||||||
(gint16 *) param->data.d_array.data,
|
|
||||||
param->data.d_array.size /
|
|
||||||
sizeof (gint16));
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_UINT8_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_UINT8_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_uint8_array (value,
|
||||||
gimp_value_set_uint8_array (value,
|
param->data.d_array.data,
|
||||||
param->data.d_array.data,
|
param->data.d_array.size /
|
||||||
param->data.d_array.size /
|
sizeof (guint8));
|
||||||
sizeof (guint8));
|
|
||||||
else
|
|
||||||
gimp_value_set_static_uint8_array (value,
|
|
||||||
param->data.d_array.data,
|
|
||||||
param->data.d_array.size /
|
|
||||||
sizeof (guint8));
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_FLOAT_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_FLOAT_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_float_array (value,
|
||||||
gimp_value_set_float_array (value,
|
(const gdouble *)
|
||||||
(const gdouble *)
|
param->data.d_array.data,
|
||||||
param->data.d_array.data,
|
param->data.d_array.size /
|
||||||
param->data.d_array.size /
|
sizeof (gdouble));
|
||||||
sizeof (gdouble));
|
|
||||||
else
|
|
||||||
gimp_value_set_static_float_array (value,
|
|
||||||
(const gdouble *)
|
|
||||||
param->data.d_array.data,
|
|
||||||
param->data.d_array.size /
|
|
||||||
sizeof (gdouble));
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_STRING_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_STRING_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_string_array (value,
|
||||||
gimp_value_set_string_array (value,
|
(const gchar **)
|
||||||
(const gchar **)
|
param->data.d_string_array.data,
|
||||||
param->data.d_string_array.data,
|
param->data.d_string_array.size);
|
||||||
param->data.d_string_array.size);
|
|
||||||
else
|
|
||||||
gimp_value_set_static_string_array (value,
|
|
||||||
(const gchar **)
|
|
||||||
param->data.d_string_array.data,
|
|
||||||
param->data.d_string_array.size);
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_RGB_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_RGB_ARRAY (value))
|
||||||
{
|
{
|
||||||
if (full_copy)
|
gimp_value_set_rgb_array (value,
|
||||||
gimp_value_set_rgb_array (value,
|
(GimpRGB *)
|
||||||
(GimpRGB *)
|
param->data.d_array.data,
|
||||||
param->data.d_array.data,
|
param->data.d_array.size /
|
||||||
param->data.d_array.size /
|
sizeof (GimpRGB));
|
||||||
sizeof (GimpRGB));
|
|
||||||
else
|
|
||||||
gimp_value_set_static_rgb_array (value,
|
|
||||||
(GimpRGB *)
|
|
||||||
param->data.d_array.data,
|
|
||||||
param->data.d_array.size /
|
|
||||||
sizeof (GimpRGB));
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_OBJECT_ARRAY (value))
|
else if (GIMP_VALUE_HOLDS_OBJECT_ARRAY (value))
|
||||||
{
|
{
|
||||||
|
@ -635,8 +590,7 @@ _gimp_gp_params_to_value_array (gpointer gimp,
|
||||||
gint n_pspecs,
|
gint n_pspecs,
|
||||||
const GPParam *params,
|
const GPParam *params,
|
||||||
gint n_params,
|
gint n_params,
|
||||||
gboolean return_values,
|
gboolean return_values)
|
||||||
gboolean full_copy)
|
|
||||||
{
|
{
|
||||||
GimpValueArray *args;
|
GimpValueArray *args;
|
||||||
gint i;
|
gint i;
|
||||||
|
@ -702,7 +656,7 @@ _gimp_gp_params_to_value_array (gpointer gimp,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gimp_gp_param_to_value (gimp, ¶ms[i], type, &value, full_copy);
|
gimp_gp_param_to_value (gimp, ¶ms[i], type, &value);
|
||||||
|
|
||||||
gimp_value_array_append (args, &value);
|
gimp_value_array_append (args, &value);
|
||||||
g_value_unset (&value);
|
g_value_unset (&value);
|
||||||
|
|
|
@ -34,8 +34,7 @@ GimpValueArray * _gimp_gp_params_to_value_array (gpointer gimp,
|
||||||
gint n_pspecs,
|
gint n_pspecs,
|
||||||
const GPParam *params,
|
const GPParam *params,
|
||||||
gint n_params,
|
gint n_params,
|
||||||
gboolean return_values,
|
gboolean return_values);
|
||||||
gboolean full_copy);
|
|
||||||
GPParam * _gimp_value_array_to_gp_params (const GimpValueArray *args,
|
GPParam * _gimp_value_array_to_gp_params (const GimpValueArray *args,
|
||||||
gboolean full_copy);
|
gboolean full_copy);
|
||||||
|
|
||||||
|
|
|
@ -313,7 +313,7 @@ gimp_pdb_run_procedure_array (GimpPDB *pdb,
|
||||||
NULL, 0,
|
NULL, 0,
|
||||||
proc_return->params,
|
proc_return->params,
|
||||||
proc_return->nparams,
|
proc_return->nparams,
|
||||||
TRUE, FALSE);
|
TRUE);
|
||||||
|
|
||||||
gimp_wire_destroy (&msg);
|
gimp_wire_destroy (&msg);
|
||||||
|
|
||||||
|
|
|
@ -1170,7 +1170,7 @@ gimp_plug_in_proc_run_internal (GimpPlugIn *plug_in,
|
||||||
NULL, 0,
|
NULL, 0,
|
||||||
proc_run->params,
|
proc_run->params,
|
||||||
proc_run->nparams,
|
proc_run->nparams,
|
||||||
FALSE, FALSE);
|
FALSE);
|
||||||
|
|
||||||
return_values = gimp_procedure_run (procedure, arguments);
|
return_values = gimp_procedure_run (procedure, arguments);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue