## GimpItemComboBox GimpItemComboBox |

## Synopsis

    gboolean            (*GimpItemConstraintFunc)           (gint32 image_id,
                                                             gint32 item_id,
                                                             gpointer data);
                        GimpDrawableComboBox;
    typedef             GimpDrawableConstraintFunc;
    GtkWidget *         gimp_drawable_combo_box_new         (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);
                        GimpChannelComboBox;
    GtkWidget *         gimp_channel_combo_box_new          (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);
                        GimpLayerComboBox;
    GtkWidget *         gimp_layer_combo_box_new            (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);
                        GimpVectorsComboBox;
    typedef             GimpVectorsConstraintFunc;
    GtkWidget *         gimp_vectors_combo_box_new          (GimpVectorsConstraintFunc constraint,
                                                             gpointer data);

## Object Hierarchy

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

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

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

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

## Implemented Interfaces

GimpDrawableComboBox implements GtkBuildable, GtkCellLayout, GtkCellEditable and AtkImplementorIface.

GimpChannelComboBox implements GtkBuildable, GtkCellLayout, GtkCellEditable and AtkImplementorIface.

GimpLayerComboBox implements GtkBuildable, GtkCellLayout, GtkCellEditable and AtkImplementorIface.

GimpVectorsComboBox implements GtkBuildable, GtkCellLayout, GtkCellEditable and AtkImplementorIface.

## Description

## Details

### GimpItemConstraintFunc ()

    gboolean            (*GimpItemConstraintFunc)           (gint32 image_id,
                                                             gint32 item_id,
                                                             gpointer data);

`image_id` : |
`item_id` : |
`data` : |
Returns : |

### GimpDrawableComboBox

    typedef struct _GimpDrawableComboBox GimpDrawableComboBox;

### GimpDrawableConstraintFunc

    typedef GimpItemConstraintFunc GimpDrawableConstraintFunc;

### gimp_drawable_combo_box_new ()

    GtkWidget *         gimp_drawable_combo_box_new         (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);

Creates a new GimpIntComboBox filled with all currently opened drawables. If a `constraint` function is specified, it is called for each drawable and only if the function returns `TRUE`, the drawable is added to the combobox.

You should use `gimp_int_combo_box_connect()` to initialize and connect the combo. Use `gimp_int_combo_box_set_active()` to get the active drawable ID and `gimp_int_combo_box_get_active()` to retrieve the ID of the selected drawable.

`constraint` : | a GimpDrawableConstraintFunc or `NULL`
`data` : | a pointer that is passed to `constraint`
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### GimpChannelComboBox

    typedef struct _GimpChannelComboBox GimpChannelComboBox;

### gimp_channel_combo_box_new ()

    GtkWidget *         gimp_channel_combo_box_new          (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);

Creates a new GimpIntComboBox filled with all currently opened channels. See `gimp_drawable_combo_box_new()` for more information.

`constraint` : | a GimpDrawableConstraintFunc or `NULL`
`data` : | a pointer that is passed to `constraint`
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### GimpLayerComboBox

    typedef struct _GimpLayerComboBox GimpLayerComboBox;

### gimp_layer_combo_box_new ()

    GtkWidget *         gimp_layer_combo_box_new            (GimpDrawableConstraintFunc constraint,
                                                             gpointer data);

Creates a new GimpIntComboBox filled with all currently opened layers. See `gimp_drawable_combo_box_new()` for more information.

`constraint` : | a GimpDrawableConstraintFunc or `NULL`
`data` : | a pointer that is passed to `constraint`
Returns : | a new GimpIntComboBox.

Since GIMP 2.2

### GimpVectorsComboBox

    typedef struct _GimpVectorsComboBox GimpVectorsComboBox;

### GimpVectorsConstraintFunc

    typedef GimpItemConstraintFunc GimpVectorsConstraintFunc;

### gimp_vectors_combo_box_new ()

    GtkWidget *         gimp_vectors_combo_box_new          (GimpVectorsConstraintFunc constraint,
                                                             gpointer data);

Creates a new GimpIntComboBox filled with all currently opened vectors objects. If a `constraint` function is specified, it is called for each vectors object and only if the function returns `TRUE`, the vectors object is added to the combobox.

You should use `gimp_int_combo_box_connect()` to initialize and connect the combo. Use `gimp_int_combo_box_set_active()` to set the active vectors ID and `gimp_int_combo_box_get_active()` to retrieve the ID of the selected vectors object.

`constraint` : | a GimpVectorsConstraintFunc or `NULL`
`data` : | a pointer that is passed to `constraint`
Returns : | a new GimpIntComboBox.

Since GIMP 2.4