## GtkComboBoxText

GtkComboBoxText — A simple, text-only combo box

## Synopsis

    #include <gtk/gtk.h>

    struct              GtkComboBoxText;
    GtkWidget *         gtk_combo_box_text_new              (void);
    GtkWidget *         gtk_combo_box_text_new_with_entry   (void);
    void                gtk_combo_box_text_append_text      (GtkComboBoxText *combo_box,
                                                             const gchar *text);
    void                gtk_combo_box_text_insert_text      (GtkComboBoxText *combo_box,
                                                             gint position,
                                                             const gchar *text);
    void                gtk_combo_box_text_prepend_text     (GtkComboBoxText *combo_box,
                                                             const gchar *text);
    void                gtk_combo_box_text_remove           (GtkComboBoxText *combo_box,
                                                             gint position);
    gchar *             gtk_combo_box_text_get_active_text  (GtkComboBoxText *combo_box);

## Object Hierarchy

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

## Implemented Interfaces

GtkComboBoxText implements AtkImplementorIface, GtkBuildable, GtkCellLayout and GtkCellEditable.

## Description

A GtkComboBoxText is a simple variant of GtkComboBox that hides the model-view complexity for simple text-only use cases.

To create a GtkComboBoxText, use `gtk_combo_box_text_new()` or `gtk_combo_box_text_new_with_entry()`.

You can add items to a GtkComboBoxText with `gtk_combo_box_text_append_text()`, `gtk_combo_box_text_insert_text()` or `gtk_combo_box_text_prepend_text()` and remove options with `gtk_combo_box_text_remove()`.

If the GtkComboBoxText contains an entry (via the 'has-entry' property), its contents can be retrieved using `gtk_combo_box_text_get_active_text()`. The entry itself can be accessed by calling `gtk_bin_get_child()` on the combo box.

### GtkComboBoxText as GtkBuildable

The GtkComboBoxText implementation of the GtkBuildable interface supports adding items directly using the <items&gt element and specifying <item> elements for each item. Each <item> element supports the regular translation attributes "translatable", "context" and "comments".

Example 30. A UI definition fragment specifying GtkComboBoxText items

    1
    2
    3
    4
    5
    6
    7

    <object class="GtkComboBoxText">
      <items>
        <item translatable="yes">Factory</item>
        <item translatable="yes">Home</item>
        <item translatable="yes">Subway</item>
      </items>
    </object>

## Details

### struct GtkComboBoxText

    struct GtkComboBoxText;

### gtk_combo_box_text_new ()

    GtkWidget *         gtk_combo_box_text_new              (void);

Creates a new GtkComboBoxText, which is a GtkComboBox just displaying strings. See `gtk_combo_box_entry_new_with_text()`.

Returns : | A new GtkComboBoxText

Since 2.24

### gtk_combo_box_text_new_with_entry ()

    GtkWidget *         gtk_combo_box_text_new_with_entry   (void);

Creates a new GtkComboBoxText, which is a GtkComboBox just displaying strings. The combo box created by this function has an entry.

Returns : | a new GtkComboBoxText

Since 2.24

### gtk_combo_box_text_append_text ()

    void                gtk_combo_box_text_append_text      (GtkComboBoxText *combo_box,
                                                             const gchar *text);

Appends `string` to the list of strings stored in `combo_box`.

`combo_box` : | A GtkComboBoxText
`text` : | A string

Since 2.24

### gtk_combo_box_text_insert_text ()

    void                gtk_combo_box_text_insert_text      (GtkComboBoxText *combo_box,
                                                             gint position,
                                                             const gchar *text);

Inserts `string` at `position` in the list of strings stored in `combo_box`.

`combo_box` : | A GtkComboBoxText
`position` : | An index to insert `text`
`text` : | A string

Since 2.24

### gtk_combo_box_text_prepend_text ()

    void                gtk_combo_box_text_prepend_text     (GtkComboBoxText *combo_box,
                                                             const gchar *text);

Prepends `string` to the list of strings stored in `combo_box`.

`combo_box` : | A GtkComboBox
`text` : | A string

Since 2.24

### gtk_combo_box_text_remove ()

    void                gtk_combo_box_text_remove           (GtkComboBoxText *combo_box,
                                                             gint position);

Removes the string at `position` from `combo_box`.

`combo_box` : | A GtkComboBox
`position` : | Index of the item to remove

Since 2.24

### gtk_combo_box_text_get_active_text ()

    gchar *             gtk_combo_box_text_get_active_text  (GtkComboBoxText *combo_box);

Returns the currently active string in `combo_box`, or `NULL` if none is selected. If `combo_box` contains an entry, this function will return its contents (which will not necessarily be an item from the list).

`combo_box` : | A GtkComboBoxText
Returns : | a newly allocated string containing the currently active text. Must be freed with `g_free()`.

Since 2.24

## See Also

`GtkComboBox`