## ComboBox ComboBox |

## Synopsis

    #define             COMBO_BOX_TYPE
    #define             COMBO_BOX                           (obj)
    #define             COMBO_BOX_CLASS                     (klass)
    #define             IS_COMBO_BOX                        (obj)
                        ComboBoxPrivate;
                        ComboBox;
    GtkType             combo_box_get_type                  (void);
    void                combo_box_construct                 (ComboBox *combo_box,
                                                             GtkWidget *display_widget,
                                                             GtkWidget *optional_pop_down_widget);
    void                combo_box_get_pos                   (ComboBox *combo_box,
                                                             int *x,
                                                             int *y);
    GtkWidget *         combo_box_new                       (GtkWidget *display_widget,
                                                             GtkWidget *optional_pop_down_widget);
    void                combo_box_popup_hide                (ComboBox *combo_box);
    void                combo_box_set_display               (ComboBox *combo_box,
                                                             GtkWidget *display_widget);
    void                combo_box_set_title                 (ComboBox *combo,
                                                             const gchar *title);
    void                combo_box_set_tearable              (ComboBox *combo,
                                                             gboolean tearable);
    void                combo_box_set_arrow_sensitive       (ComboBox *combo,
                                                             gboolean sensitive);
    void                combo_box_set_arrow_relief          (ComboBox *cc,
                                                             GtkReliefStyle relief);

## Description

## Details

### COMBO_BOX_TYPE

    #define COMBO_BOX_TYPE  (combo_box_get_type ())

### COMBO_BOX()

    #define COMBO_BOX(obj)	GTK_CHECK_CAST (obj, combo_box_get_type (), ComboBox)

### COMBO_BOX_CLASS()

    #define             COMBO_BOX_CLASS(klass)

### IS_COMBO_BOX()

    #define IS_COMBO_BOX(obj)  GTK_CHECK_TYPE (obj, combo_box_get_type ())

### ComboBoxPrivate

    typedef struct _ComboBoxPrivate ComboBoxPrivate;

### ComboBox

    typedef struct {
      GtkHBox hbox;
      ComboBoxPrivate *priv;
    } ComboBox;

### combo_box_get_type ()

    GtkType             combo_box_get_type                  (void);

### combo_box_construct ()

    void                combo_box_construct                 (ComboBox *combo_box,
                                                             GtkWidget *display_widget,
                                                             GtkWidget *optional_pop_down_widget);

### combo_box_get_pos ()

    void                combo_box_get_pos                   (ComboBox *combo_box,
                                                             int *x,
                                                             int *y);

### combo_box_new ()

    GtkWidget *         combo_box_new                       (GtkWidget *display_widget,
                                                             GtkWidget *optional_pop_down_widget);

### combo_box_popup_hide ()

    void                combo_box_popup_hide                (ComboBox *combo_box);

Hide popup, but not when it is torn off. This is the external interface - for subclasses and apps which expect a regular combo which doesn't do tearoffs.

`combo_box` : | Combo box

### combo_box_set_display ()

    void                combo_box_set_display               (ComboBox *combo_box,
                                                             GtkWidget *display_widget);

Sets the displayed widget for the `combo_box` to be `display_widget`

`combo_box` : | the Combo Box to modify
`display_widget` : | The widget to be displayed

### combo_box_set_title ()

    void                combo_box_set_title                 (ComboBox *combo,
                                                             const gchar *title);

Set a title to display over the tearoff window.

FIXME:

This should really change the title even when the popup is already torn off. I guess the tearoff window could attach a listener to title change or something. But I don't think we need the functionality, so I didn't bother to investigate.

`combo` : | Combo box
`title` : | Title

### combo_box_set_tearable ()

    void                combo_box_set_tearable              (ComboBox *combo,
                                                             gboolean tearable);

controls whether the combo box's pop up widget can be torn off.

`combo` : | Combo box
`tearable` : | whether to allow the `combo` to be tearable

### combo_box_set_arrow_sensitive ()

    void                combo_box_set_arrow_sensitive       (ComboBox *combo,
                                                             gboolean sensitive);

Toggle the sensitivity of the arrow button

`combo` : | Combo box
`sensitive` : | Sensitivity value

### combo_box_set_arrow_relief ()

    void                combo_box_set_arrow_relief          (ComboBox *cc,
                                                             GtkReliefStyle relief);