static GimpValueArray *
palette_new_invoker (GimpProcedure         *procedure,
                     Gimp                  *gimp,
                     GimpContext           *context,
                     GimpProgress          *progress,
                     const GimpValueArray  *args,
                     GError               **error)
{
  gboolean success = TRUE;
  GimpValueArray *return_vals;
  const gchar *name;
  gchar *actual_name = NULL;

  name = g_value_get_string (gimp_value_array_index (args, 0));

  if (success)
    {
      GimpData *data = gimp_data_factory_data_new (gimp->palette_factory,
                                                   context, name);

      if (data)
        actual_name = g_strdup (gimp_object_get_name (data));
      else
        success = FALSE;
    }

  return_vals = gimp_procedure_get_return_values (procedure, success,
                                                  error ? *error : NULL);

  if (success)
    g_value_take_string (gimp_value_array_index (return_vals, 1), actual_name);

  return return_vals;
}
Exemple #2
0
static GValueArray *
palette_new_invoker (GimpProcedure     *procedure,
                     Gimp              *gimp,
                     GimpContext       *context,
                     GimpProgress      *progress,
                     const GValueArray *args)
{
  gboolean success = TRUE;
  GValueArray *return_vals;
  const gchar *name;
  gchar *actual_name = NULL;

  name = g_value_get_string (&args->values[0]);

  if (success)
    {
      GimpData *data = gimp_data_factory_data_new (gimp->palette_factory, name);

      if (data)
        actual_name = g_strdup (gimp_object_get_name (GIMP_OBJECT (data)));
      else
        success = FALSE;
    }

  return_vals = gimp_procedure_get_return_values (procedure, success);

  if (success)
    g_value_take_string (&return_vals->values[1], actual_name);

  return return_vals;
}
void
tool_options_save_new_preset_cmd_callback (GtkAction *action,
        gpointer   user_data)
{
    GimpEditor  *editor  = GIMP_EDITOR (user_data);
    Gimp        *gimp    = gimp_editor_get_ui_manager (editor)->gimp;
    GimpContext *context = gimp_get_user_context (gimp);
    GimpData    *data;

    data = gimp_data_factory_data_new (context->gimp->tool_preset_factory,
                                       context, _("Untitled"));

    tool_options_show_preset_editor (gimp, editor, GIMP_TOOL_PRESET (data));
}