1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
5 A widget used to choose from a list of items
7 <!-- ##### SECTION Long_Description ##### -->
9 A #GtkComboBox is a widget that allows the user to choose from a
10 list of valid choices. The #GtkComboBox displays the selected
11 choice. When activated, the #GtkComboBox displays a popup
12 which allows the user to make a new choice. The style in which
13 the selected value is displayed, and the style of the popup is
14 determined by the current theme. It may be similar to a #GtkOptionMenu,
15 or similar to a Windows-style combo box.
19 Unlike its predecessors #GtkCombo and #GtkOptionMenu, the #GtkComboBox
20 uses the model-view pattern; the list of valid choices is specified in the
21 form of a tree model, and the display of the choices can be adapted to
22 the data in the model by using cell renderers, as you would in a tree view.
23 This is possible since #GtkComboBox implements the #GtkCellLayout interface.
24 The tree model holding the valid choices is not restricted to a flat list,
25 it can be a real tree, and the popup will reflect the tree structure.
29 In addition to the model-view API, #GtkComboBox offers a simple API which
30 is suitable for text-only combo boxes, and hides the complexity of managing
31 the data in a model. It consists of the functions gtk_combo_box_new_text(),
32 gtk_combo_box_append_text(), gtk_combo_box_insert_text(),
33 gtk_combo_box_prepend_text(), gtk_combo_box_remove_text() and
34 gtk_combo_box_get_active_text().
37 <!-- ##### SECTION See_Also ##### -->
39 #GtkComboBoxEntry, #GtkTreeModel, #GtkCellRenderer
42 <!-- ##### SECTION Stability_Level ##### -->
45 <!-- ##### SECTION Image ##### -->
48 <!-- ##### STRUCT GtkComboBox ##### -->
54 <!-- ##### SIGNAL GtkComboBox::changed ##### -->
59 @combobox: the object which received the signal.
61 <!-- ##### SIGNAL GtkComboBox::move-active ##### -->
66 @combobox: the object which received the signal.
69 <!-- ##### SIGNAL GtkComboBox::popdown ##### -->
74 @combobox: the object which received the signal.
77 <!-- ##### SIGNAL GtkComboBox::popup ##### -->
82 @combobox: the object which received the signal.
84 <!-- ##### ARG GtkComboBox:active ##### -->
89 <!-- ##### ARG GtkComboBox:add-tearoffs ##### -->
94 <!-- ##### ARG GtkComboBox:button-sensitivity ##### -->
99 <!-- ##### ARG GtkComboBox:column-span-column ##### -->
104 <!-- ##### ARG GtkComboBox:focus-on-click ##### -->
109 <!-- ##### ARG GtkComboBox:has-frame ##### -->
114 <!-- ##### ARG GtkComboBox:model ##### -->
119 <!-- ##### ARG GtkComboBox:popup-shown ##### -->
124 <!-- ##### ARG GtkComboBox:row-span-column ##### -->
129 <!-- ##### ARG GtkComboBox:tearoff-title ##### -->
134 <!-- ##### ARG GtkComboBox:wrap-width ##### -->
139 <!-- ##### ARG GtkComboBox:appears-as-list ##### -->
144 <!-- ##### ARG GtkComboBox:arrow-size ##### -->
149 <!-- ##### ARG GtkComboBox:shadow-type ##### -->
154 <!-- ##### FUNCTION gtk_combo_box_new ##### -->
163 <!-- ##### FUNCTION gtk_combo_box_new_with_model ##### -->
172 <!-- ##### FUNCTION gtk_combo_box_get_wrap_width ##### -->
181 <!-- ##### FUNCTION gtk_combo_box_set_wrap_width ##### -->
190 <!-- ##### FUNCTION gtk_combo_box_get_row_span_column ##### -->
199 <!-- ##### FUNCTION gtk_combo_box_set_row_span_column ##### -->
208 <!-- ##### FUNCTION gtk_combo_box_get_column_span_column ##### -->
217 <!-- ##### FUNCTION gtk_combo_box_set_column_span_column ##### -->
226 <!-- ##### FUNCTION gtk_combo_box_get_active ##### -->
235 <!-- ##### FUNCTION gtk_combo_box_set_active ##### -->
244 <!-- ##### FUNCTION gtk_combo_box_get_active_iter ##### -->
254 <!-- ##### FUNCTION gtk_combo_box_set_active_iter ##### -->
263 <!-- ##### FUNCTION gtk_combo_box_get_model ##### -->
272 <!-- ##### FUNCTION gtk_combo_box_set_model ##### -->
281 <!-- ##### FUNCTION gtk_combo_box_new_text ##### -->
290 <!-- ##### FUNCTION gtk_combo_box_append_text ##### -->
299 <!-- ##### FUNCTION gtk_combo_box_insert_text ##### -->
309 <!-- ##### FUNCTION gtk_combo_box_prepend_text ##### -->
318 <!-- ##### FUNCTION gtk_combo_box_remove_text ##### -->
327 <!-- ##### FUNCTION gtk_combo_box_get_active_text ##### -->
336 <!-- ##### FUNCTION gtk_combo_box_popup ##### -->
344 <!-- ##### FUNCTION gtk_combo_box_popdown ##### -->
352 <!-- ##### FUNCTION gtk_combo_box_get_popup_accessible ##### -->
361 <!-- ##### FUNCTION gtk_combo_box_get_row_separator_func ##### -->
370 <!-- ##### FUNCTION gtk_combo_box_set_row_separator_func ##### -->
381 <!-- ##### FUNCTION gtk_combo_box_set_add_tearoffs ##### -->
390 <!-- ##### FUNCTION gtk_combo_box_get_add_tearoffs ##### -->
399 <!-- ##### FUNCTION gtk_combo_box_set_title ##### -->
408 <!-- ##### FUNCTION gtk_combo_box_get_title ##### -->
417 <!-- ##### FUNCTION gtk_combo_box_set_focus_on_click ##### -->
426 <!-- ##### FUNCTION gtk_combo_box_get_focus_on_click ##### -->
435 <!-- ##### FUNCTION gtk_combo_box_set_button_sensitivity ##### -->
444 <!-- ##### FUNCTION gtk_combo_box_get_button_sensitivity ##### -->