RGtk2 (version 2.20.31)

gtkStockSetTranslateFunc: gtkStockSetTranslateFunc

Description

Sets a function to be used for translating the label of a stock item.

Usage

gtkStockSetTranslateFunc(domain, func, data)

Arguments

domain
the translation domain for which func shall be used
data
data to pass to func

Details

If no function is registered for a translation domain, 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" },
};

gchar * 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");

Since 2.8