mirror of https://github.com/GNOME/gimp.git
app: add new virtual function GimpProcedure::get_help_id()
Implement the new function in GimpPlugInProcedure and remove gimp_plug_in_procedure_get_help_id().
This commit is contained in:
parent
d21ab943c1
commit
7c0d7c6311
|
@ -332,13 +332,11 @@ plug_in_actions_add_proc (GimpActionGroup *group,
|
|||
entry.accelerator = NULL;
|
||||
entry.tooltip = gimp_procedure_get_blurb (GIMP_PROCEDURE (proc));
|
||||
entry.procedure = GIMP_PROCEDURE (proc);
|
||||
entry.help_id = gimp_plug_in_procedure_get_help_id (proc);
|
||||
entry.help_id = gimp_procedure_get_help_id (GIMP_PROCEDURE (proc));
|
||||
|
||||
gimp_action_group_add_procedure_actions (group, &entry, 1,
|
||||
G_CALLBACK (plug_in_run_cmd_callback));
|
||||
|
||||
g_free ((gchar *) entry.help_id);
|
||||
|
||||
if (proc->menu_label)
|
||||
{
|
||||
GList *list;
|
||||
|
|
|
@ -51,6 +51,7 @@ static gint64 gimp_procedure_get_memsize (GimpObject *object
|
|||
static const gchar * gimp_procedure_real_get_label (GimpProcedure *procedure);
|
||||
static const gchar * gimp_procedure_real_get_menu_label (GimpProcedure *procedure);
|
||||
static const gchar * gimp_procedure_real_get_blurb (GimpProcedure *procedure);
|
||||
static const gchar * gimp_procedure_real_get_help_id (GimpProcedure *procedure);
|
||||
static gboolean gimp_procedure_real_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object);
|
||||
static GimpValueArray * gimp_procedure_real_execute (GimpProcedure *procedure,
|
||||
|
@ -93,6 +94,7 @@ gimp_procedure_class_init (GimpProcedureClass *klass)
|
|||
klass->get_label = gimp_procedure_real_get_label;
|
||||
klass->get_menu_label = gimp_procedure_real_get_menu_label;
|
||||
klass->get_blurb = gimp_procedure_real_get_blurb;
|
||||
klass->get_help_id = gimp_procedure_real_get_help_id;
|
||||
klass->get_sensitive = gimp_procedure_real_get_sensitive;
|
||||
klass->execute = gimp_procedure_real_execute;
|
||||
klass->execute_async = gimp_procedure_real_execute_async;
|
||||
|
@ -184,6 +186,12 @@ gimp_procedure_real_get_blurb (GimpProcedure *procedure)
|
|||
return procedure->blurb;
|
||||
}
|
||||
|
||||
static const gchar *
|
||||
gimp_procedure_real_get_help_id (GimpProcedure *procedure)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gimp_procedure_real_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object)
|
||||
|
@ -353,6 +361,14 @@ gimp_procedure_get_blurb (GimpProcedure *procedure)
|
|||
return GIMP_PROCEDURE_GET_CLASS (procedure)->get_blurb (procedure);
|
||||
}
|
||||
|
||||
const gchar *
|
||||
gimp_procedure_get_help_id (GimpProcedure *procedure)
|
||||
{
|
||||
g_return_val_if_fail (GIMP_IS_PROCEDURE (procedure), NULL);
|
||||
|
||||
return GIMP_PROCEDURE_GET_CLASS (procedure)->get_help_id (procedure);
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_procedure_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object)
|
||||
|
|
|
@ -72,6 +72,7 @@ struct _GimpProcedureClass
|
|||
const gchar * (* get_label) (GimpProcedure *procedure);
|
||||
const gchar * (* get_menu_label) (GimpProcedure *procedure);
|
||||
const gchar * (* get_blurb) (GimpProcedure *procedure);
|
||||
const gchar * (* get_help_id) (GimpProcedure *procedure);
|
||||
gboolean (* get_sensitive) (GimpProcedure *procedure,
|
||||
GimpObject *object);
|
||||
|
||||
|
@ -122,6 +123,7 @@ void gimp_procedure_take_strings (GimpProcedure *procedure,
|
|||
const gchar * gimp_procedure_get_label (GimpProcedure *procedure);
|
||||
const gchar * gimp_procedure_get_menu_label (GimpProcedure *procedure);
|
||||
const gchar * gimp_procedure_get_blurb (GimpProcedure *procedure);
|
||||
const gchar * gimp_procedure_get_help_id (GimpProcedure *procedure);
|
||||
gboolean gimp_procedure_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object);
|
||||
|
||||
|
|
|
@ -67,6 +67,7 @@ static const gchar * gimp_plug_in_procedure_get_label (GimpProcedure *procedur
|
|||
static const gchar * gimp_plug_in_procedure_get_menu_label
|
||||
(GimpProcedure *procedure);
|
||||
static const gchar * gimp_plug_in_procedure_get_blurb (GimpProcedure *procedure);
|
||||
static const gchar * gimp_plug_in_procedure_get_help_id(GimpProcedure *procedure);
|
||||
static gboolean gimp_plug_in_procedure_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object);
|
||||
static GimpValueArray * gimp_plug_in_procedure_execute (GimpProcedure *procedure,
|
||||
|
@ -126,6 +127,7 @@ gimp_plug_in_procedure_class_init (GimpPlugInProcedureClass *klass)
|
|||
proc_class->get_label = gimp_plug_in_procedure_get_label;
|
||||
proc_class->get_menu_label = gimp_plug_in_procedure_get_menu_label;
|
||||
proc_class->get_blurb = gimp_plug_in_procedure_get_blurb;
|
||||
proc_class->get_help_id = gimp_plug_in_procedure_get_help_id;
|
||||
proc_class->get_sensitive = gimp_plug_in_procedure_get_sensitive;
|
||||
proc_class->execute = gimp_plug_in_procedure_execute;
|
||||
proc_class->execute_async = gimp_plug_in_procedure_execute_async;
|
||||
|
@ -139,7 +141,6 @@ gimp_plug_in_procedure_init (GimpPlugInProcedure *proc)
|
|||
{
|
||||
GIMP_PROCEDURE (proc)->proc_type = GIMP_PLUGIN;
|
||||
|
||||
proc->label = NULL;
|
||||
proc->icon_data_length = -1;
|
||||
}
|
||||
|
||||
|
@ -154,6 +155,7 @@ gimp_plug_in_procedure_finalize (GObject *object)
|
|||
g_list_free_full (proc->menu_paths, (GDestroyNotify) g_free);
|
||||
|
||||
g_free (proc->label);
|
||||
g_free (proc->help_id);
|
||||
|
||||
g_free (proc->icon_data);
|
||||
g_free (proc->image_types);
|
||||
|
@ -312,6 +314,25 @@ gimp_plug_in_procedure_get_blurb (GimpProcedure *procedure)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
static const gchar *
|
||||
gimp_plug_in_procedure_get_help_id (GimpProcedure *procedure)
|
||||
{
|
||||
GimpPlugInProcedure *proc = GIMP_PLUG_IN_PROCEDURE (procedure);
|
||||
const gchar *domain;
|
||||
|
||||
if (proc->help_id)
|
||||
return proc->help_id;
|
||||
|
||||
domain = gimp_plug_in_procedure_get_help_domain (proc);
|
||||
|
||||
if (domain)
|
||||
proc->help_id = g_strconcat (domain, "?", gimp_object_get_name (proc), NULL);
|
||||
else
|
||||
proc->help_id = g_strdup (gimp_object_get_name (proc));
|
||||
|
||||
return proc->help_id;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gimp_plug_in_procedure_get_sensitive (GimpProcedure *procedure,
|
||||
GimpObject *object)
|
||||
|
@ -861,21 +882,6 @@ gimp_plug_in_procedure_take_icon (GimpPlugInProcedure *proc,
|
|||
g_object_unref (icon_pixbuf);
|
||||
}
|
||||
|
||||
gchar *
|
||||
gimp_plug_in_procedure_get_help_id (const GimpPlugInProcedure *proc)
|
||||
{
|
||||
const gchar *domain;
|
||||
|
||||
g_return_val_if_fail (GIMP_IS_PLUG_IN_PROCEDURE (proc), NULL);
|
||||
|
||||
domain = gimp_plug_in_procedure_get_help_domain (proc);
|
||||
|
||||
if (domain)
|
||||
return g_strconcat (domain, "?", gimp_object_get_name (proc), NULL);
|
||||
|
||||
return g_strdup (gimp_object_get_name (proc));
|
||||
}
|
||||
|
||||
static GimpPlugInImageType
|
||||
image_types_parse (const gchar *name,
|
||||
const gchar *image_types)
|
||||
|
|
|
@ -45,6 +45,7 @@ struct _GimpPlugInProcedure
|
|||
gchar *menu_label;
|
||||
GList *menu_paths;
|
||||
gchar *label;
|
||||
gchar *help_id;
|
||||
GimpIconType icon_type;
|
||||
gint icon_data_length;
|
||||
guint8 *icon_data;
|
||||
|
@ -110,8 +111,6 @@ void gimp_plug_in_procedure_take_icon (GimpPlugInProcedure
|
|||
guint8 *data,
|
||||
gint data_length);
|
||||
|
||||
gchar * gimp_plug_in_procedure_get_help_id (const GimpPlugInProcedure *proc);
|
||||
|
||||
void gimp_plug_in_procedure_set_image_types (GimpPlugInProcedure *proc,
|
||||
const gchar *image_types);
|
||||
void gimp_plug_in_procedure_set_file_proc (GimpPlugInProcedure *proc,
|
||||
|
|
|
@ -139,7 +139,7 @@ gimp_file_proc_view_new (Gimp *gimp,
|
|||
if (! proc->prefixes_list) /* skip URL loaders */
|
||||
{
|
||||
const gchar *label = gimp_procedure_get_label (GIMP_PROCEDURE (proc));
|
||||
gchar *help_id = gimp_plug_in_procedure_get_help_id (proc);
|
||||
const gchar *help_id = gimp_procedure_get_help_id (GIMP_PROCEDURE (proc));
|
||||
GSList *list2;
|
||||
|
||||
if (label)
|
||||
|
@ -153,8 +153,6 @@ gimp_file_proc_view_new (Gimp *gimp,
|
|||
-1);
|
||||
}
|
||||
|
||||
g_free (help_id);
|
||||
|
||||
for (list2 = proc->extensions_list;
|
||||
list2;
|
||||
list2 = g_slist_next (list2))
|
||||
|
|
Loading…
Reference in New Issue