## GOOptionMenu GOOptionMenu |

## Synopsis

    struct              GOOptionMenu;
    GtkWidget *         go_option_menu_get_history          (GOOptionMenu *option_menu);
    GtkWidget *         go_option_menu_new                  (void);
    GtkWidget *         go_option_menu_build                (const char *first_entry,
                                                             ...);
    void                go_option_menu_select_item          (GOOptionMenu *option_menu,
                                                             GtkMenuItem *item);
    void                go_option_menu_set_history          (GOOptionMenu *option_menu,
                                                             GSList *selection);
    void                go_option_menu_set_menu             (GOOptionMenu *option_menu,
                                                             GtkWidget *menu);
    GtkWidget *         go_option_menu_get_menu             (GOOptionMenu *option_menu);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkButton
                                     +----GOOptionMenu

## Implemented Interfaces

GOOptionMenu implements AtkImplementorIface, GtkBuildable, GtkActionable and GtkActivatable.

## Properties

      "menu"                     GtkMenu*              : Read / Write

## Signals

      "changed"                                        : Run Last

## Description

## Details

### struct GOOptionMenu

    struct GOOptionMenu;

### go_option_menu_get_history ()

    GtkWidget *         go_option_menu_get_history          (GOOptionMenu *option_menu);

Retrieves the currently selected menu item.

`option_menu` : | a GOOptionMenu
Returns : | the selected menu_item. [transfer none]

### go_option_menu_new ()

    GtkWidget *         go_option_menu_new                  (void);

### go_option_menu_build ()

    GtkWidget *         go_option_menu_build                (const char *first_entry,
                                                             ...);

`first_entry` : | text for first entry
`...` : | further values and text
Returns : | a new GOOptionMenu with a filled-in menu. This function takes a `NULL`-terminated list of string-integer pairs and fills in a menu with the given texts. Each menu entry will have a data property "value" sets to the given value. The menu is then placed inside a new GOOptionMenu which is then returned. [transfer full]

### go_option_menu_select_item ()

    void                go_option_menu_select_item          (GOOptionMenu *option_menu,
                                                             GtkMenuItem *item);

### go_option_menu_set_history ()

    void                go_option_menu_set_history          (GOOptionMenu *option_menu,
                                                             GSList *selection);

Selects an item. The last number in the list is the rank of the item to select in its menu and the previous ones are the ranks of the submenus containing the item to select.

`option_menu` : | GOOptionMenu
`selection` : | a list of indices giving the menu to select. [element-type GtkMenuItem]

### go_option_menu_set_menu ()

    void                go_option_menu_set_menu             (GOOptionMenu *option_menu,
                                                             GtkWidget *menu);

### go_option_menu_get_menu ()

    GtkWidget *         go_option_menu_get_menu             (GOOptionMenu *option_menu);

`option_menu` : | GOOptionMenu
Returns : | The currently set menu. [transfer none]

## Property Details

### The `"menu"` property

      "menu"                     GtkMenu*              : Read / Write

The menu of options.

## Signal Details

### The `"changed"` signal

    void                user_function                      (GOOptionMenu *gooptionmenu,
                                                            gpointer      user_data)         : Run Last

`gooptionmenu` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.