From ccafc8d3bdc5cd5670f146801781e915c00fad8e Mon Sep 17 00:00:00 2001 From: Sven Neumann Date: Wed, 14 Feb 2007 13:38:09 +0000 Subject: [PATCH] app/actions/plug-in-actions.c added utility function to retrieve the 2007-02-14 Sven Neumann * app/actions/plug-in-actions.c * app/plug-in/gimppluginprocedure.[ch]: added utility function to retrieve the translated blurb of a plug-in procedure. Make sure that gettext isn't called with the empty string. svn path=/trunk/; revision=21917 --- ChangeLog | 7 +++++++ app/actions/plug-in-actions.c | 18 +++++------------- app/plug-in/gimppluginprocedure.c | 17 +++++++++++++++++ app/plug-in/gimppluginprocedure.h | 2 ++ 4 files changed, 31 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8914c6c8f1..538ee2650d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-02-14 Sven Neumann + + * app/actions/plug-in-actions.c + * app/plug-in/gimppluginprocedure.[ch]: added utility function to + retrieve the translated blurb of a plug-in procedure. Make sure + that gettext isn't called with the empty string. + 2007-02-14 Sven Neumann * app/display/gimpstatusbar.c: when multi-line strings end up diff --git a/app/actions/plug-in-actions.c b/app/actions/plug-in-actions.c index 523b7be8e0..25c4172830 100644 --- a/app/actions/plug-in-actions.c +++ b/app/actions/plug-in-actions.c @@ -416,7 +416,6 @@ plug_in_actions_add_proc (GimpActionGroup *group, const gchar *locale_domain; const gchar *help_domain; const gchar *label; - const gchar *tooltip = NULL; gchar *path_original = NULL; gchar *path_translated = NULL; @@ -454,14 +453,11 @@ plug_in_actions_add_proc (GimpActionGroup *group, label = p2 + 1; } - if (GIMP_PROCEDURE (proc)->blurb) - tooltip = dgettext (locale_domain, GIMP_PROCEDURE (proc)->blurb); - entry.name = GIMP_OBJECT (proc)->name; entry.stock_id = gimp_plug_in_procedure_get_stock_id (proc); entry.label = label; entry.accelerator = NULL; - entry.tooltip = tooltip; + entry.tooltip = gimp_plug_in_procedure_get_blurb (proc, locale_domain); entry.procedure = proc; entry.help_id = gimp_plug_in_procedure_get_help_id (proc, help_domain); @@ -543,10 +539,9 @@ plug_in_actions_history_changed (GimpPlugInManager *manager, for (i = 0; i < gimp_plug_in_manager_history_length (manager); i++) { - GtkAction *action; - gchar *name = g_strdup_printf ("plug-in-recent-%02d", i + 1); - gchar *label; - const gchar *tooltip = NULL; + GtkAction *action; + gchar *name = g_strdup_printf ("plug-in-recent-%02d", i + 1); + gchar *label; action = gtk_action_group_get_action (GTK_ACTION_GROUP (group), name); g_free (name); @@ -558,15 +553,12 @@ plug_in_actions_history_changed (GimpPlugInManager *manager, label = gimp_plug_in_procedure_get_label (proc, domain); - if (GIMP_PROCEDURE (proc)->blurb) - tooltip = dgettext (domain, GIMP_PROCEDURE (proc)->blurb); - g_object_set (action, "visible", TRUE, "procedure", proc, "label", label, "stock-id", gimp_plug_in_procedure_get_stock_id (proc), - "tooltip", tooltip, + "tooltip", gimp_plug_in_procedure_get_blurb (proc, domain), NULL); g_free (label); diff --git a/app/plug-in/gimppluginprocedure.c b/app/plug-in/gimppluginprocedure.c index 462430dea8..0f400efec7 100644 --- a/app/plug-in/gimppluginprocedure.c +++ b/app/plug-in/gimppluginprocedure.c @@ -518,6 +518,23 @@ gimp_plug_in_procedure_get_label (const GimpPlugInProcedure *proc, return label; } +const gchar * +gimp_plug_in_procedure_get_blurb (const GimpPlugInProcedure *proc, + const gchar *locale_domain) +{ + GimpProcedure *procedure; + + g_return_val_if_fail (GIMP_IS_PLUG_IN_PROCEDURE (proc), NULL); + + procedure = GIMP_PROCEDURE (proc); + + /* do not to pass the empty string to gettext() */ + if (procedure->blurb && strlen (procedure->blurb)) + return dgettext (locale_domain, procedure->blurb); + + return NULL; +} + void gimp_plug_in_procedure_set_icon (GimpPlugInProcedure *proc, GimpIconType icon_type, diff --git a/app/plug-in/gimppluginprocedure.h b/app/plug-in/gimppluginprocedure.h index c3f64b2695..e9c99c4419 100644 --- a/app/plug-in/gimppluginprocedure.h +++ b/app/plug-in/gimppluginprocedure.h @@ -94,6 +94,8 @@ gboolean gimp_plug_in_procedure_add_menu_path (GimpPlugInProcedure gchar * gimp_plug_in_procedure_get_label (const GimpPlugInProcedure *proc, const gchar *locale_domain); +const gchar * gimp_plug_in_procedure_get_blurb (const GimpPlugInProcedure *proc, + const gchar *locale_domain); void gimp_plug_in_procedure_set_icon (GimpPlugInProcedure *proc, GimpIconType type, const guint8 *data,