label
of
a stock item.gtkStockSetTranslateFunc(domain, func, data)
domain
func
shall be usedfunc
data
func
gDgettext()
is used.
The function is used for all stock items whose
translation.domain
matches domain
. Note that it is possible
to use strings different from the actual gettext translation domain
of your application for this, as long as your GtkTranslateFunc
uses
the correct domain when calling dgettext()
. This can be useful, e.g.
when dealing with message contexts:
GtkStockItem items[] = { { MY_ITEM1, NC_("odd items", "Item 1"), 0, 0, "odd-item-domain" }, { MY_ITEM2, NC_("even items", "Item 2"), 0, 0, "even-item-domain" }, };Since 2.8gchar * my_translate_func (const gchar *msgid, gpointer data) { gchar *msgctxt = data;
return (gchar*)g_dpgettext2 (GETTEXT_PACKAGE, msgctxt, msgid); }
/* ... */
gtk_stock_add (items, G_N_ELEMENTS (items)); gtk_stock_set_translate_func ("odd-item-domain", my_translate_func, "odd items"); gtk_stock_set_translate_func ("even-item-domain", my_translate_func, "even items");