|  |  |  | GTK+ Reference Manual |  | 
|---|---|---|---|---|
#include <gtk/gtk.h>
                    GtkStockItem;
void                gtk_stock_add                       (const GtkStockItem *items,
                                                         guint n_items);
void                gtk_stock_add_static                (const GtkStockItem *items,
                                                         guint n_items);
GtkStockItem*       gtk_stock_item_copy                 (const GtkStockItem *item);
void                gtk_stock_item_free                 (GtkStockItem *item);
GSList*             gtk_stock_list_ids                  (void);
gboolean            gtk_stock_lookup                    (const gchar *stock_id,
                                                         GtkStockItem *item);
void                gtk_stock_set_translate_func        (const gchar *domain,
                                                         GtkTranslateFunc func,
                                                         gpointer data,
                                                         GtkDestroyNotify notify);
#define             GTK_STOCK_ABOUT
#define             GTK_STOCK_ADD
#define             GTK_STOCK_APPLY
#define             GTK_STOCK_BOLD
#define             GTK_STOCK_CANCEL
#define             GTK_STOCK_CDROM
#define             GTK_STOCK_CLEAR
#define             GTK_STOCK_CLOSE
#define             GTK_STOCK_COLOR_PICKER
#define             GTK_STOCK_CONVERT
#define             GTK_STOCK_CONNECT
#define             GTK_STOCK_COPY
#define             GTK_STOCK_CUT
#define             GTK_STOCK_DELETE
#define             GTK_STOCK_DIALOG_AUTHENTICATION
#define             GTK_STOCK_DIALOG_ERROR
#define             GTK_STOCK_DIALOG_INFO
#define             GTK_STOCK_DIALOG_QUESTION
#define             GTK_STOCK_DIALOG_WARNING
#define             GTK_STOCK_DIRECTORY
#define             GTK_STOCK_DISCONNECT
#define             GTK_STOCK_DND
#define             GTK_STOCK_DND_MULTIPLE
#define             GTK_STOCK_EDIT
#define             GTK_STOCK_EXECUTE
#define             GTK_STOCK_FILE
#define             GTK_STOCK_FIND
#define             GTK_STOCK_FIND_AND_REPLACE
#define             GTK_STOCK_FLOPPY
#define             GTK_STOCK_FULLSCREEN
#define             GTK_STOCK_GOTO_BOTTOM
#define             GTK_STOCK_GOTO_FIRST
#define             GTK_STOCK_GOTO_LAST
#define             GTK_STOCK_GOTO_TOP
#define             GTK_STOCK_GO_BACK
#define             GTK_STOCK_GO_DOWN
#define             GTK_STOCK_GO_FORWARD
#define             GTK_STOCK_GO_UP
#define             GTK_STOCK_HARDDISK
#define             GTK_STOCK_HELP
#define             GTK_STOCK_HOME
#define             GTK_STOCK_INDENT
#define             GTK_STOCK_INDEX
#define             GTK_STOCK_INFO
#define             GTK_STOCK_ITALIC
#define             GTK_STOCK_JUMP_TO
#define             GTK_STOCK_JUSTIFY_CENTER
#define             GTK_STOCK_JUSTIFY_FILL
#define             GTK_STOCK_JUSTIFY_LEFT
#define             GTK_STOCK_JUSTIFY_RIGHT
#define             GTK_STOCK_LEAVE_FULLSCREEN
#define             GTK_STOCK_MEDIA_FORWARD
#define             GTK_STOCK_MEDIA_NEXT
#define             GTK_STOCK_MEDIA_PAUSE
#define             GTK_STOCK_MEDIA_PLAY
#define             GTK_STOCK_MEDIA_PREVIOUS
#define             GTK_STOCK_MEDIA_RECORD
#define             GTK_STOCK_MEDIA_REWIND
#define             GTK_STOCK_MEDIA_STOP
#define             GTK_STOCK_MISSING_IMAGE
#define             GTK_STOCK_NETWORK
#define             GTK_STOCK_NEW
#define             GTK_STOCK_NO
#define             GTK_STOCK_OK
#define             GTK_STOCK_OPEN
#define             GTK_STOCK_ORIENTATION_LANDSCAPE
#define             GTK_STOCK_ORIENTATION_PORTRAIT
#define             GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE
#define             GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT
#define             GTK_STOCK_PASTE
#define             GTK_STOCK_PREFERENCES
#define             GTK_STOCK_PRINT
#define             GTK_STOCK_PRINT_PREVIEW
#define             GTK_STOCK_PROPERTIES
#define             GTK_STOCK_QUIT
#define             GTK_STOCK_REDO
#define             GTK_STOCK_REFRESH
#define             GTK_STOCK_REMOVE
#define             GTK_STOCK_REVERT_TO_SAVED
#define             GTK_STOCK_SAVE
#define             GTK_STOCK_SAVE_AS
#define             GTK_STOCK_SELECT_ALL
#define             GTK_STOCK_SELECT_COLOR
#define             GTK_STOCK_SELECT_FONT
#define             GTK_STOCK_SORT_ASCENDING
#define             GTK_STOCK_SORT_DESCENDING
#define             GTK_STOCK_SPELL_CHECK
#define             GTK_STOCK_STOP
#define             GTK_STOCK_STRIKETHROUGH
#define             GTK_STOCK_UNDELETE
#define             GTK_STOCK_UNDERLINE
#define             GTK_STOCK_UNDO
#define             GTK_STOCK_UNINDENT
#define             GTK_STOCK_YES
#define             GTK_STOCK_ZOOM_100
#define             GTK_STOCK_ZOOM_FIT
#define             GTK_STOCK_ZOOM_IN
#define             GTK_STOCK_ZOOM_OUT
Stock items represent commonly-used menu or toolbar items such as "Open" or "Exit". Each stock item is identified by a stock ID; stock IDs are just strings, but macros such as GTK_STOCK_OPEN are provided to avoid typing mistakes in the strings. Applications can register their own stock items in addition to those built-in to GTK+.
Each stock ID can be associated with a GtkStockItem, which contains the user-visible label, keyboard accelerator, and translation domain of the menu or toolbar item; and/or with an icon stored in a GtkIconFactory. See GtkIconFactory for more information on stock icons. The connection between a GtkStockItem and stock icons is purely conventional (by virtue of using the same stock ID); it's possible to register a stock item but no icon, and vice versa. Stock icons may have a RTL variant which gets used for right-to-left locales.
typedef struct {
  gchar *stock_id;
  gchar *label;
  GdkModifierType modifier;
  guint keyval;
  gchar *translation_domain;
} GtkStockItem;
void gtk_stock_add (const GtkStockItem *items, guint n_items);
Registers each of the stock items in items. If an item already
exists with the same stock ID as one of the items, the old item
gets replaced. The stock items are copied, so GTK+ does not hold
any pointer into items and items can be freed. Use
gtk_stock_add_static() if items is persistent and GTK+ need not
copy the array.
| items: | a GtkStockItem or array of items | 
| n_items: | number of GtkStockItem in items | 
void gtk_stock_add_static (const GtkStockItem *items, guint n_items);
Same as gtk_stock_add(), but doesn't copy items, so
items must persist until application exit.
| items: | a GtkStockItem or array of GtkStockItem | 
| n_items: | number of items | 
GtkStockItem* gtk_stock_item_copy (const GtkStockItem *item);
Copies a stock item, mostly useful for language bindings and not in applications.
| item: | a GtkStockItem | 
| Returns : | a new GtkStockItem | 
void gtk_stock_item_free (GtkStockItem *item);
Frees a stock item allocated on the heap, such as one returned by
gtk_stock_item_copy(). Also frees the fields inside the stock item,
if they are not NULL.
| item: | a GtkStockItem | 
GSList* gtk_stock_list_ids (void);
Retrieves a list of all known stock IDs added to a GtkIconFactory
or registered with gtk_stock_add(). The list must be freed with g_slist_free(),
and each string in the list must be freed with g_free().
| Returns : | a list of known stock IDs | 
gboolean            gtk_stock_lookup                    (const gchar *stock_id,
                                                         GtkStockItem *item);
Fills item with the registered values for stock_id, returning TRUE
if stock_id was known.
| stock_id: | a stock item name | 
| item: | stock item to initialize with values | 
| Returns : | TRUEifitemwas initialized | 
void                gtk_stock_set_translate_func        (const gchar *domain,
                                                         GtkTranslateFunc func,
                                                         gpointer data,
                                                         GtkDestroyNotify notify);
Sets a function to be used for translating the label of 
a stock item.
If no function is registered for a translation domain,
dgettext() is used.
| domain: | the translation domain for which funcshall be used | 
| func: | a GtkTranslateFunc | 
| data: | data to pass to func | 
| notify: | a GtkDestroyNotify that is called when datais 
  no longer needed | 
Since 2.8
#define GTK_STOCK_COLOR_PICKER "gtk-color-picker"
The "Color Picker" item.
 
Since 2.2
#define GTK_STOCK_DIALOG_AUTHENTICATION
The "Authentication" item.
 
Since 2.4
#define GTK_STOCK_DIALOG_QUESTION "gtk-dialog-question"
The "Question" item.
 
#define GTK_STOCK_DND_MULTIPLE "gtk-dnd-multiple"
The "Drag-And-Drop multiple" icon.
 
#define GTK_STOCK_FIND_AND_REPLACE "gtk-find-and-replace"
The "Find and Replace" item.
 
#define GTK_STOCK_LEAVE_FULLSCREEN "gtk-leave-fullscreen"
The "Leave Fullscreen" item.
 
Since 2.8
#define GTK_STOCK_MEDIA_FORWARD "gtk-media-forward"
The "Media Forward" item.
 RTL variant
RTL variant
 
Since 2.6
#define GTK_STOCK_MEDIA_NEXT "gtk-media-next"
The "Media Next" item.
 RTL variant
RTL variant
 
Since 2.6
#define GTK_STOCK_MEDIA_PAUSE "gtk-media-pause"
The "Media Pause" item.
 
Since 2.6
#define GTK_STOCK_MEDIA_PLAY "gtk-media-play"
The "Media Play" item.
 RTL variant
RTL variant
 
Since 2.6
#define GTK_STOCK_MEDIA_PREVIOUS "gtk-media-previous"
The "Media Previous" item.
 RTL variant
RTL variant
 
Since 2.6
#define GTK_STOCK_MEDIA_RECORD "gtk-media-record"
The "Media Record" item.
 
Since 2.6
#define GTK_STOCK_MEDIA_REWIND "gtk-media-rewind"
The "Media Rewind" item.
 RTL variant
RTL variant
 
Since 2.6
#define GTK_STOCK_MISSING_IMAGE "gtk-missing-image"
The "Missing image" icon.
 
#define GTK_STOCK_ORIENTATION_LANDSCAPE "gtk-orientation-landscape"
The "Landscape Orientation" item.
 
Since 2.10
#define GTK_STOCK_ORIENTATION_PORTRAIT "gtk-orientation-portrait"
The "Portrait Orientation" item.
 
Since 2.10
#define GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE "gtk-orientation-reverse-landscape"
The "Reverse Landscape Orientation" item.
 
Since 2.10
#define GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT "gtk-orientation-reverse-portrait"
The "Reverse Portrait Orientation" item.
 
Since 2.10
#define GTK_STOCK_PRINT_PREVIEW "gtk-print-preview"
The "Print Preview" item.
 
#define GTK_STOCK_REVERT_TO_SAVED "gtk-revert-to-saved"
The "Revert" item.
 RTL variant
RTL variant
 
#define GTK_STOCK_SELECT_ALL "gtk-select-all"
The "Select All" item.
 
Since 2.10
#define GTK_STOCK_SORT_ASCENDING "gtk-sort-ascending"
The "Ascending" item.
 
#define GTK_STOCK_SORT_DESCENDING "gtk-sort-descending"
The "Descending" item.
 
#define GTK_STOCK_STRIKETHROUGH "gtk-strikethrough"
The "Strikethrough" item.
 
#define GTK_STOCK_UNINDENT "gtk-unindent"
The "Unindent" item.
 RTL variant
RTL variant
 
Since 2.4