logo top
Main Page   Widgets   Namespaces   Book  

Gtk::ComboBox Class Reference
[Widgets]

Inheritance diagram for Gtk::ComboBox:

Inheritance graph
[legend]
List of all members.

Detailed Description

A widget used to choose from a list of items.

A ComboBox is a widget that allows the user to choose from a list of valid choices. The ComboBox displays the selected choice. When activated, the ComboBox displays a popup which allows the user to make a new choice. The style in which the selected value is displayed, and the style of the popup is determined by the current theme. It may be similar to a OptionMenu, or similar to a Windows-style combo box.

The ComboBox uses the model-view pattern; the list of valid choices is specified in the form of a tree model, and the display of the choices can be adapted to the data in the model by using cell renderers, as you would in a tree view. This is possible since ComboBox implements the CellLayout interface. The tree model holding the valid choices is not restricted to a flat list, it can be a real tree, and the popup will reflect the tree structure.

See also ComboBoxText, which is specialised for a single text column.


Public Types

typedef TreeView::SlotRowSeparator SlotRowSeparator

Public Member Functions

virtual ~ComboBox ()
GtkComboBox* gobj ()
 Provides access to the underlying C GtkObject.
const GtkComboBox* gobj () const
 Provides access to the underlying C GtkObject.
 ComboBox ()
 ComboBox (const Glib::RefPtr<TreeModel>& model)
 Creates a new ComboBox with the model initialized to model.
void set_wrap_width (int width)
 Sets the wrap width of combo_box to be width .
int get_wrap_width () const
 Returns the wrap width which is used to determine the number of columns for the popup menu.
void set_row_span_column (int row_span)
 Sets the column with row span information for combo_box to be row_span .
int get_row_span_column () const
 Returns the column with row span information for combo_box .
void set_column_span_column (int column_span)
 Sets the column with column span information for combo_box to be column_span .
int get_column_span_column () const
 Returns the column with column span information for combo_box .
bool get_add_tearoffs () const
 Gets the current value of the :add-tearoffs property.
void set_add_tearoffs (bool add_tearoffs=true)
 Sets whether the popup menu should have a tearoff menu item.
bool get_focus_on_click () const
 Returns whether the combo box grabs focus when it is clicked with the mouse.
void set_focus_on_click (bool focus_on_click=true)
 Sets whether the combo box will grab focus when it is clicked with the mouse.
int get_active_row_number () const
 Returns the index of the currently active item, or -1 if there's no active item.
TreeModel::iterator get_active ()
 Gets an iterator that points to the current active item, if it exists.
TreeModel::const_iterator get_active () const
 Gets an iterator that points to the current active item, if it exists.
void set_active (int index)
 Sets the active item of combo_box to be the item at index .
void set_active (const TreeModel::iterator& iter)
 Sets the current active item to be the one referenced by iter .
void unset_active ()
 Causes no item to be active.
Glib::RefPtr<TreeModelget_model ()
 Returns the Gtk::TreeModel which is acting as data source for combo_box .
Glib::RefPtr<const TreeModelget_model () const
 Returns the Gtk::TreeModel which is acting as data source for combo_box .
void set_model (const Glib::RefPtr<TreeModel>& model)
 Sets the model used by combo_box to be model .
void set_row_separator_func (const SlotRowSeparator& slot)
 Sets the row separator function, which is used to determine whether a row should be drawn as a separator.
void unset_row_separator_func ()
 Causes no separators to be drawn.
void popup ()
 Pops up the menu or dropdown list of combo_box .
void popdown ()
 Hides the menu or dropdown list of combo_box .
Glib::RefPtr<Atk::Objectget_popup_accessible ()
 Gets the accessible object corresponding to the combo box's popup.
Glib::RefPtr<const Atk::Objectget_popup_accessible () const
 Gets the accessible object corresponding to the combo box's popup.
Glib::PropertyProxy< Glib::RefPtr<
TreeModel > > 
property_model ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
Glib::RefPtr<TreeModel >> 
property_model () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<int> property_wrap_width ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
int > 
property_wrap_width () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<int> property_row_span_column ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
int > 
property_row_span_column () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<int> property_column_span_column ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
int > 
property_column_span_column () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<int> property_active ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
int > 
property_active () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<bool> property_add_tearoffs ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
bool > 
property_add_tearoffs () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<bool> property_has_frame ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
bool > 
property_has_frame () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy<bool> property_focus_on_click ()
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly<
bool > 
property_focus_on_click () const
 You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::SignalProxy0<void> signal_changed ()

Protected Member Functions

virtual void on_changed ()

Related Functions

(Note that these are not member functions.)

Gtk::ComboBoxwrap (GtkComboBox* object, bool take_copy=false)


Member Typedef Documentation

typedef TreeView::SlotRowSeparator Gtk::ComboBox::SlotRowSeparator
 


Constructor & Destructor Documentation

virtual Gtk::ComboBox::~ComboBox (  )  [virtual]
 

Gtk::ComboBox::ComboBox (  ) 
 

Gtk::ComboBox::ComboBox ( const Glib::RefPtr<TreeModel>&  model  )  [explicit]
 

Creates a new ComboBox with the model initialized to model.


Member Function Documentation

TreeModel::const_iterator Gtk::ComboBox::get_active (  )  const
 

Gets an iterator that points to the current active item, if it exists.

Returns:
The iterator.

TreeModel::iterator Gtk::ComboBox::get_active (  ) 
 

Gets an iterator that points to the current active item, if it exists.

Returns:
The iterator.

int Gtk::ComboBox::get_active_row_number (  )  const
 

Returns the index of the currently active item, or -1 if there's no active item.

If the model is a non-flat treemodel, and the active item is not an immediate child of the root of the tree, this function returns gtk_tree_path_get_indices (path)[0], where path is the Gtk::TreePath of the active item.

Returns:
An integer which is the index of the currently active item, or -1 if there's no active item.
Since: 2.4.

bool Gtk::ComboBox::get_add_tearoffs (  )  const
 

Gets the current value of the :add-tearoffs property.

Returns:
The current value of the :add-tearoffs property.

int Gtk::ComboBox::get_column_span_column (  )  const
 

Returns the column with column span information for combo_box .

Returns:
The column span column.
Since: 2.6.

bool Gtk::ComboBox::get_focus_on_click (  )  const
 

Returns whether the combo box grabs focus when it is clicked with the mouse.

See set_focus_on_click().

Returns:
true if the combo box grabs focus when it is clicked with the mouse.
Since: 2.6.

Glib::RefPtr<const TreeModel> Gtk::ComboBox::get_model (  )  const
 

Returns the Gtk::TreeModel which is acting as data source for combo_box .

Returns:
A Gtk::TreeModel which was passed during construction.
Since: 2.4.

Glib::RefPtr<TreeModel> Gtk::ComboBox::get_model (  ) 
 

Returns the Gtk::TreeModel which is acting as data source for combo_box .

Returns:
A Gtk::TreeModel which was passed during construction.
Since: 2.4.

Glib::RefPtr<const Atk::Object> Gtk::ComboBox::get_popup_accessible (  )  const
 

Gets the accessible object corresponding to the combo box's popup.

This function is mostly intended for use by accessibility technologies; applications should have little use for it.

Returns:
The accessible object corresponding to the combo box's popup.
Since: 2.6.

Glib::RefPtr<Atk::Object> Gtk::ComboBox::get_popup_accessible (  ) 
 

Gets the accessible object corresponding to the combo box's popup.

This function is mostly intended for use by accessibility technologies; applications should have little use for it.

Returns:
The accessible object corresponding to the combo box's popup.
Since: 2.6.

int Gtk::ComboBox::get_row_span_column (  )  const
 

Returns the column with row span information for combo_box .

Returns:
The row span column.
Since: 2.6.

int Gtk::ComboBox::get_wrap_width (  )  const
 

Returns the wrap width which is used to determine the number of columns for the popup menu.

If the wrap width is larger than 1, the combo box is in table mode.

Returns:
The wrap width.
Since: 2.6.

const GtkComboBox* Gtk::ComboBox::gobj (  )  const [inline]
 

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Bin.

Reimplemented in Gtk::ComboBoxEntry.

GtkComboBox* Gtk::ComboBox::gobj (  )  [inline]
 

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Bin.

Reimplemented in Gtk::ComboBoxEntry.

virtual void Gtk::ComboBox::on_changed (  )  [protected, virtual]
 

void Gtk::ComboBox::popdown (  ) 
 

Hides the menu or dropdown list of combo_box .

This function is mostly intended for use by accessibility technologies; applications should have little use for it.

Since: 2.4

void Gtk::ComboBox::popup (  ) 
 

Pops up the menu or dropdown list of combo_box .

This function is mostly intended for use by accessibility technologies; applications should have little use for it.

Since: 2.4

Glib::PropertyProxy_ReadOnly<int> Gtk::ComboBox::property_active (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::ComboBox::property_active (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::ComboBox::property_add_tearoffs (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::ComboBox::property_add_tearoffs (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<int> Gtk::ComboBox::property_column_span_column (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::ComboBox::property_column_span_column (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::ComboBox::property_focus_on_click (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::ComboBox::property_focus_on_click (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<bool> Gtk::ComboBox::property_has_frame (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<bool> Gtk::ComboBox::property_has_frame (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<Glib::RefPtr<TreeModel>> Gtk::ComboBox::property_model (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<Glib::RefPtr<TreeModel>> Gtk::ComboBox::property_model (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<int> Gtk::ComboBox::property_row_span_column (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::ComboBox::property_row_span_column (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly<int> Gtk::ComboBox::property_wrap_width (  )  const
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy<int> Gtk::ComboBox::property_wrap_width (  ) 
 

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Gtk::ComboBox::set_active ( const TreeModel::iterator iter  ) 
 

Sets the current active item to be the one referenced by iter .

iter must correspond to a path of depth one.

Since: 2.4

Parameters:
iter The Gtk::TreeIter.

void Gtk::ComboBox::set_active ( int  index  ) 
 

Sets the active item of combo_box to be the item at index .

Since: 2.4

Parameters:
index An index in the model passed during construction, or -1 to have no active item.

void Gtk::ComboBox::set_add_tearoffs ( bool  add_tearoffs = true  ) 
 

Sets whether the popup menu should have a tearoff menu item.

Since: 2.6

Parameters:
add_tearoffs true to add tearoff menu items.

void Gtk::ComboBox::set_column_span_column ( int  column_span  ) 
 

Sets the column with column span information for combo_box to be column_span .

The column span column contains integers which indicate how many columns an item should span.

Since: 2.4

Parameters:
column_span A column in the model passed during construction.

void Gtk::ComboBox::set_focus_on_click ( bool  focus_on_click = true  ) 
 

Sets whether the combo box will grab focus when it is clicked with the mouse.

Making mouse clicks not grab focus is useful in places like toolbars where you don't want the keyboard focus removed from the main area of the application.

Since: 2.6

Parameters:
focus_on_click Whether the combo box grabs focus when clicked with the mouse.

void Gtk::ComboBox::set_model ( const Glib::RefPtr<TreeModel>&  model  ) 
 

Sets the model used by combo_box to be model .

Will unset a previously set model (if applicable). If model is 0, then it will unset the model.

Note that this function does not clear the cell renderers, you have to call gtk_combo_box_cell_layout_clear() yourself if you need to set up different cell renderers for the new model.

Since: 2.4

Parameters:
model A Gtk::TreeModel.

void Gtk::ComboBox::set_row_separator_func ( const SlotRowSeparator slot  ) 
 

Sets the row separator function, which is used to determine whether a row should be drawn as a separator.

See also unset_row_separator_func().

Parameters:
slot The callback.

void Gtk::ComboBox::set_row_span_column ( int  row_span  ) 
 

Sets the column with row span information for combo_box to be row_span .

The row span column contains integers which indicate how many rows an item should span.

Since: 2.4

Parameters:
row_span A column in the model passed during construction.

void Gtk::ComboBox::set_wrap_width ( int  width  ) 
 

Sets the wrap width of combo_box to be width .

The wrap width is basically the preferred number of columns when you want the popup to be layed out in a table.

Since: 2.4

Parameters:
width Preferred number of columns.

Glib::SignalProxy0<void> Gtk::ComboBox::signal_changed (  ) 
 

void Gtk::ComboBox::unset_active (  ) 
 

Causes no item to be active.

See also set_active().

void Gtk::ComboBox::unset_row_separator_func (  ) 
 

Causes no separators to be drawn.


Friends And Related Function Documentation

Gtk::ComboBox* wrap ( GtkComboBox*  object,
bool  take_copy = false
[related]
 

Parameters:
object The C instance
take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.


The documentation for this class was generated from the following file:
Generated for gtkmm 2.4 by Doxygen 1.3.9.1 © 1997-2001