## GimpIntComboBox

GimpIntComboBox — A widget providing a popup menu of integer values (e.g. enums).

## Synopsis

                GimpIntComboBox;
    GtkWidget*  gimp_int_combo_box_new          (const gchar *first_label,
                                                 gint first_value,
                                                 ...);
    GtkWidget*  gimp_int_combo_box_new_valist   (const gchar *first_label,
                                                 gint first_value,
                                                 va_list values);
    GtkWidget*  gimp_int_combo_box_new_array    (gint n_values,
                                                 const gchar *labels[]);
    void        gimp_int_combo_box_prepend      (GimpIntComboBox *combo_box,
                                                 ...);
    void        gimp_int_combo_box_append       (GimpIntComboBox *combo_box,
                                                 ...);
    gboolean    gimp_int_combo_box_set_active   (GimpIntComboBox *combo_box,
                                                 gint value);
    gboolean    gimp_int_combo_box_get_active   (GimpIntComboBox *combo_box,
                                                 gint *value);
    gulong      gimp_int_combo_box_connect      (GimpIntComboBox *combo_box,
                                                 gint value,
                                                 GCallback callback,
                                                 gpointer data);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkComboBox
                                           +----GimpIntComboBox

## Implemented Interfaces

GimpIntComboBox implements AtkImplementorIface, GtkCellEditable and GtkCellLayout.

## Description

A widget providing a popup menu of integer values (e.g. enums).

## Details

### GimpIntComboBox

    typedef struct _GimpIntComboBox GimpIntComboBox;

### gimp_int_combo_box_new ()

    GtkWidget*  gimp_int_combo_box_new          (const gchar *first_label,
                                                 gint first_value,
                                                 ...);

Creates a GtkComboBox that has integer values associated with each item. The items to fill the combo box with are specified as a `NULL` terminated list of label/value pairs.

`first_label` : | the label of the first item
`first_value` : | the value of the first item
`...` : | a `NULL` terminated list of more label, value pairs
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### gimp_int_combo_box_new_valist ()

    GtkWidget*  gimp_int_combo_box_new_valist   (const gchar *first_label,
                                                 gint first_value,
                                                 va_list values);

A variant of `gimp_int_combo_box_new()` that takes a va_list of label/value pairs. Probably only useful for language bindings.

`first_label` : | the label of the first item
`first_value` : | the value of the first item
`values` : | a va_list with more values
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### gimp_int_combo_box_new_array ()

    GtkWidget*  gimp_int_combo_box_new_array    (gint n_values,
                                                 const gchar *labels[]);

A variant of `gimp_int_combo_box_new()` that takes an array of labels. The array indices are used as values.

`n_values` : | the number of values
`labels` : | an array of labels (array length must be `n_values`)
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### gimp_int_combo_box_prepend ()

    void        gimp_int_combo_box_prepend      (GimpIntComboBox *combo_box,
                                                 ...);

This function provides a convenient way to prepend items to a GimpIntComboBox. It prepends a row to the `combo_box`'s list store and calls `gtk_list_store_set()` for you.

The column number must be taken from the enum GimpIntStoreColumns.

`combo_box` : | a GimpIntComboBox
`...` : | pairs of column number and value, terminated with -1

Since GIMP 2.2

### gimp_int_combo_box_append ()

    void        gimp_int_combo_box_append       (GimpIntComboBox *combo_box,
                                                 ...);

This function provides a convenient way to append items to a GimpIntComboBox. It appends a row to the `combo_box`'s list store and calls `gtk_list_store_set()` for you.

The column number must be taken from the enum GimpIntStoreColumns.

`combo_box` : | a GimpIntComboBox
`...` : | pairs of column number and value, terminated with -1

Since GIMP 2.2

### gimp_int_combo_box_set_active ()

    gboolean    gimp_int_combo_box_set_active   (GimpIntComboBox *combo_box,
                                                 gint value);

Looks up the item that belongs to the given `value` and makes it the selected item in the `combo_box`.

`combo_box` : | a GimpIntComboBox
`value` : | an integer value
Returns : | `TRUE` on success or `FALSE` if there was no item for this value.

Since GIMP 2.2

### gimp_int_combo_box_get_active ()

    gboolean    gimp_int_combo_box_get_active   (GimpIntComboBox *combo_box,
                                                 gint *value);

Retrieves the value of the selected (active) item in the `combo_box`.

`combo_box` : | a GimpIntComboBox
`value` : | return location for the integer value
Returns : | `TRUE` if `value` has been set or `FALSE` if no item was active.

Since GIMP 2.2

### gimp_int_combo_box_connect ()

    gulong      gimp_int_combo_box_connect      (GimpIntComboBox *combo_box,
                                                 gint value,
                                                 GCallback callback,
                                                 gpointer data);

A convenience function that sets the inital `value` of a GimpIntComboBox and connects `callback` to the "changed" signal.

This function also calls the `callback` once after setting the initial `value`. This is often convenient when working with combo boxes that select a default active item (like for example gimp_drawable_combo_box_new). If you pass an invalid initial `value`, the `callback` will be called with the default item active.

`combo_box` : | a GimpIntComboBox
`value` : | the value to set
`callback` : | a callback to connect to the `combo_box`'s "changed" signal
`data` : | a pointer passed as data to `g_signal_connect()`
Returns : | the signal handler ID as returned by `g_signal_connect()`

Since GIMP 2.2