gi-gtk-3.0.32: Gtk bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gtk.Objects.ComboBox

Description

A GtkComboBox is a widget that allows the user to choose from a list of valid choices. The GtkComboBox displays the selected choice. When activated, the GtkComboBox 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 Windows-style combo box.

The GtkComboBox 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 GtkComboBox 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.

To allow the user to enter values not in the model, the “has-entry” property allows the GtkComboBox to contain a Entry. This entry can be accessed by calling binGetChild on the combo box.

For a simple list of textual choices, the model-view API of GtkComboBox can be a bit overwhelming. In this case, ComboBoxText offers a simple alternative. Both GtkComboBox and ComboBoxText can contain an entry.

CSS nodes

plain code

combobox
├── box.linked
│   ╰── button.combo
│       ╰── box
│           ├── cellview
│           ╰── arrow
╰── window.popup

A normal combobox contains a box with the .linked class, a button with the .combo class and inside those buttons, there are a cellview and an arrow.

plain code

combobox
├── box.linked
│   ├── entry.combo
│   ╰── button.combo
│       ╰── box
│           ╰── arrow
╰── window.popup

A GtkComboBox with an entry has a single CSS node with name combobox. It contains a box with the .linked class. That box contains an entry and a button, both with the .combo class added. The button also contains another node with name arrow.

Synopsis

Exported types

newtype ComboBox Source #

Memory-managed wrapper type.

Constructors

ComboBox (ManagedPtr ComboBox) 

Instances

Instances details
Eq ComboBox Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBox

IsGValue ComboBox Source #

Convert ComboBox to and from GValue with toGValue and fromGValue.

Instance details

Defined in GI.Gtk.Objects.ComboBox

GObject ComboBox Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBox

Methods

gobjectType :: IO GType #

HasParentTypes ComboBox Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBox

type ParentTypes ComboBox Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBox

class (GObject o, IsDescendantOf ComboBox o) => IsComboBox o Source #

Type class for types which can be safely cast to ComboBox, for instance with toComboBox.

Instances

Instances details
(GObject o, IsDescendantOf ComboBox o) => IsComboBox o Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBox

toComboBox :: (MonadIO m, IsComboBox o) => o -> m ComboBox Source #

Cast to ComboBox, for types for which this is known to be safe. For general casts, use castTo.

noComboBox :: Maybe ComboBox Source #

A convenience alias for Nothing :: Maybe ComboBox.

Methods

Overloaded methods

getActive

comboBoxGetActive Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m Int32

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

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 TreePath of the active item.

Since: 2.4

getActiveId

comboBoxGetActiveId Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m (Maybe Text)

Returns: the ID of the active row, or Nothing

Returns the ID of the active row of comboBox. This value is taken from the active row and the column specified by the ComboBox:id-column property of comboBox (see comboBoxSetIdColumn).

The returned value is an interned string which means that you can compare the pointer by value to other interned strings and that you must not free it.

If the ComboBox:id-column property of comboBox is not set, or if no row is active, or if the active row has a Nothing ID value, then Nothing is returned.

Since: 3.0

getActiveIter

comboBoxGetActiveIter Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m (Bool, TreeIter)

Returns: True if iter was set, False otherwise

Sets iter to point to the currently active item, if any item is active. Otherwise, iter is left unchanged.

Since: 2.4

getAddTearoffs

comboBoxGetAddTearoffs Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m Bool

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

Deprecated: (Since version 3.10)

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

getButtonSensitivity

comboBoxGetButtonSensitivity Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m SensitivityType

Returns: SensitivityTypeOn if the dropdown button is sensitive when the model is empty, SensitivityTypeOff if the button is always insensitive or SensitivityTypeAuto if it is only sensitive as long as the model has one item to be selected.

Returns whether the combo box sets the dropdown button sensitive or not when there are no items in the model.

Since: 2.14

getColumnSpanColumn

comboBoxGetColumnSpanColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m Int32

Returns: the column span column.

Returns the column with column span information for comboBox.

Since: 2.6

getEntryTextColumn

comboBoxGetEntryTextColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox.

-> m Int32

Returns: A column in the data source model of comboBox.

Returns the column which comboBox is using to get the strings from to display in the internal entry.

Since: 2.24

getFocusOnClick

comboBoxGetFocusOnClick Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

combo: a ComboBox

-> m Bool

Returns: True if the combo box grabs focus when it is clicked with the mouse.

Deprecated: (Since version 3.20)Use widgetGetFocusOnClick instead

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

Since: 2.6

getHasEntry

comboBoxGetHasEntry Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m Bool

Returns: whether there is an entry in comboBox.

Returns whether the combo box has an entry.

Since: 2.24

getIdColumn

comboBoxGetIdColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m Int32

Returns: A column in the data source model of comboBox.

Returns the column which comboBox is using to get string IDs for values from.

Since: 3.0

getModel

comboBoxGetModel Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m TreeModel

Returns: A TreeModel which was passed during construction.

Returns the TreeModel which is acting as data source for comboBox.

Since: 2.4

getPopupAccessible

comboBoxGetPopupAccessible Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m Object

Returns: the accessible object corresponding to the combo box’s popup.

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.

Since: 2.6

getPopupFixedWidth

comboBoxGetPopupFixedWidth Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m Bool

Returns: True if the popup uses a fixed width

Gets whether the popup uses a fixed width matching the allocated width of the combo box.

Since: 3.0

getRowSpanColumn

comboBoxGetRowSpanColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m Int32

Returns: the row span column.

Returns the column with row span information for comboBox.

Since: 2.6

getTitle

comboBoxGetTitle Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m Text

Returns: the menu’s title in tearoff mode. This is an internal copy of the string which must not be freed.

Deprecated: (Since version 3.10)

Gets the current title of the menu in tearoff mode. See comboBoxSetAddTearoffs.

Since: 2.10

getWrapWidth

comboBoxGetWrapWidth Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> m Int32

Returns: the wrap width.

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.

Since: 2.6

new

comboBoxNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> m ComboBox

Returns: A new ComboBox.

Creates a new empty ComboBox.

Since: 2.4

newWithArea

comboBoxNewWithArea Source #

Arguments

:: (HasCallStack, MonadIO m, IsCellArea a) 
=> a

area: the CellArea to use to layout cell renderers

-> m ComboBox

Returns: A new ComboBox.

Creates a new empty ComboBox using area to layout cells.

newWithAreaAndEntry

comboBoxNewWithAreaAndEntry Source #

Arguments

:: (HasCallStack, MonadIO m, IsCellArea a) 
=> a

area: the CellArea to use to layout cell renderers

-> m ComboBox

Returns: A new ComboBox.

Creates a new empty ComboBox with an entry.

The new combo box will use area to layout cells.

newWithEntry

comboBoxNewWithEntry Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> m ComboBox

Returns: A new ComboBox.

Creates a new empty ComboBox with an entry.

Since: 2.24

newWithModel

comboBoxNewWithModel Source #

Arguments

:: (HasCallStack, MonadIO m, IsTreeModel a) 
=> a

model: A TreeModel.

-> m ComboBox

Returns: A new ComboBox.

Creates a new ComboBox with the model initialized to model.

Since: 2.4

newWithModelAndEntry

comboBoxNewWithModelAndEntry Source #

Arguments

:: (HasCallStack, MonadIO m, IsTreeModel a) 
=> a

model: A TreeModel

-> m ComboBox

Returns: A new ComboBox

Creates a new empty ComboBox with an entry and with the model initialized to model.

Since: 2.24

popdown

comboBoxPopdown Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m () 

Hides the menu or dropdown list of comboBox.

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

Since: 2.4

popup

comboBoxPopup Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> m () 

Pops up the menu or dropdown list of comboBox.

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

Before calling this, comboBox must be mapped, or nothing will happen.

Since: 2.4

popupForDevice

comboBoxPopupForDevice Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a, IsDevice b) 
=> a

comboBox: a ComboBox

-> b

device: a Device

-> m () 

Pops up the menu or dropdown list of comboBox, the popup window will be grabbed so only device and its associated pointer/keyboard are the only GdkDevices able to send events to it.

Since: 3.0

setActive

comboBoxSetActive Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Int32

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

-> m () 

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

Since: 2.4

setActiveId

comboBoxSetActiveId Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> Maybe Text

activeId: the ID of the row to select, or Nothing

-> m Bool

Returns: True if a row with a matching ID was found. If a Nothing activeId was given to unset the active row, the function always returns True.

Changes the active row of comboBox to the one that has an ID equal to activeId, or unsets the active row if activeId is Nothing. Rows having a Nothing ID string cannot be made active by this function.

If the ComboBox:id-column property of comboBox is unset or if no row has the given ID then the function does nothing and returns False.

Since: 3.0

setActiveIter

comboBoxSetActiveIter Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Maybe TreeIter

iter: The TreeIter, or Nothing

-> m () 

Sets the current active item to be the one referenced by iter, or unsets the active item if iter is Nothing.

Since: 2.4

setAddTearoffs

comboBoxSetAddTearoffs Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> Bool

addTearoffs: True to add tearoff menu items

-> m () 

Deprecated: (Since version 3.10)

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

Since: 2.6

setButtonSensitivity

comboBoxSetButtonSensitivity Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> SensitivityType

sensitivity: specify the sensitivity of the dropdown button

-> m () 

Sets whether the dropdown button of the combo box should be always sensitive (SensitivityTypeOn), never sensitive (SensitivityTypeOff) or only if there is at least one item to display (SensitivityTypeAuto).

Since: 2.14

setColumnSpanColumn

comboBoxSetColumnSpanColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Int32

columnSpan: A column in the model passed during construction

-> m () 

Sets the column with column span information for comboBox to be columnSpan. The column span column contains integers which indicate how many columns an item should span.

Since: 2.4

setEntryTextColumn

comboBoxSetEntryTextColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Int32

textColumn: A column in model to get the strings from for the internal entry

-> m () 

Sets the model column which comboBox should use to get strings from to be textColumn. The column textColumn in the model of comboBox must be of type G_TYPE_STRING.

This is only relevant if comboBox has been created with ComboBox:has-entry as True.

Since: 2.24

setFocusOnClick

comboBoxSetFocusOnClick Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

combo: a ComboBox

-> Bool

focusOnClick: whether the combo box grabs focus when clicked with the mouse

-> m () 

Deprecated: (Since version 3.20)Use widgetSetFocusOnClick instead

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

setIdColumn

comboBoxSetIdColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Int32

idColumn: A column in model to get string IDs for values from

-> m () 

Sets the model column which comboBox should use to get string IDs for values from. The column idColumn in the model of comboBox must be of type G_TYPE_STRING.

Since: 3.0

setModel

comboBoxSetModel Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a, IsTreeModel b) 
=> a

comboBox: A ComboBox

-> Maybe b

model: A TreeModel

-> m () 

Sets the model used by comboBox to be model. Will unset a previously set model (if applicable). If model is Nothing, then it will unset the model.

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

Since: 2.4

setPopupFixedWidth

comboBoxSetPopupFixedWidth Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> Bool

fixed: whether to use a fixed popup width

-> m () 

Specifies whether the popup’s width should be a fixed width matching the allocated width of the combo box.

Since: 3.0

setRowSeparatorFunc

comboBoxSetRowSeparatorFunc Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> TreeViewRowSeparatorFunc

func: a TreeViewRowSeparatorFunc

-> m () 

Sets the row separator function, which is used to determine whether a row should be drawn as a separator. If the row separator function is Nothing, no separators are drawn. This is the default value.

Since: 2.6

setRowSpanColumn

comboBoxSetRowSpanColumn Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox.

-> Int32

rowSpan: A column in the model passed during construction.

-> m () 

Sets the column with row span information for comboBox to be rowSpan. The row span column contains integers which indicate how many rows an item should span.

Since: 2.4

setTitle

comboBoxSetTitle Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: a ComboBox

-> Text

title: a title for the menu in tearoff mode

-> m () 

Deprecated: (Since version 3.10)

Sets the menu’s title in tearoff mode.

Since: 2.10

setWrapWidth

comboBoxSetWrapWidth Source #

Arguments

:: (HasCallStack, MonadIO m, IsComboBox a) 
=> a

comboBox: A ComboBox

-> Int32

width: Preferred number of columns

-> m () 

Sets the wrap width of comboBox 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

Properties

active

The item which is currently active. If the model is a non-flat treemodel, and the active item is not an immediate child of the root of the tree, this property has the value gtk_tree_path_get_indices (path)[0], where path is the TreePath of the active item.

Since: 2.4

constructComboBoxActive :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “active” property. This is rarely needed directly, but it is used by new.

getComboBoxActive :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “active” property. When overloading is enabled, this is equivalent to

get comboBox #active

setComboBoxActive :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “active” property. When overloading is enabled, this is equivalent to

set comboBox [ #active := value ]

activeId

The value of the ID column of the active row.

Since: 3.0

clearComboBoxActiveId :: (MonadIO m, IsComboBox o) => o -> m () Source #

Set the value of the “active-id” property to Nothing. When overloading is enabled, this is equivalent to

clear #activeId

constructComboBoxActiveId :: IsComboBox o => Text -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “active-id” property. This is rarely needed directly, but it is used by new.

getComboBoxActiveId :: (MonadIO m, IsComboBox o) => o -> m (Maybe Text) Source #

Get the value of the “active-id” property. When overloading is enabled, this is equivalent to

get comboBox #activeId

setComboBoxActiveId :: (MonadIO m, IsComboBox o) => o -> Text -> m () Source #

Set the value of the “active-id” property. When overloading is enabled, this is equivalent to

set comboBox [ #activeId := value ]

addTearoffs

The add-tearoffs property controls whether generated menus have tearoff menu items.

Note that this only affects menu style combo boxes.

Since: 2.6

constructComboBoxAddTearoffs :: IsComboBox o => Bool -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “add-tearoffs” property. This is rarely needed directly, but it is used by new.

getComboBoxAddTearoffs :: (MonadIO m, IsComboBox o) => o -> m Bool Source #

Get the value of the “add-tearoffs” property. When overloading is enabled, this is equivalent to

get comboBox #addTearoffs

setComboBoxAddTearoffs :: (MonadIO m, IsComboBox o) => o -> Bool -> m () Source #

Set the value of the “add-tearoffs” property. When overloading is enabled, this is equivalent to

set comboBox [ #addTearoffs := value ]

buttonSensitivity

Whether the dropdown button is sensitive when the model is empty.

Since: 2.14

constructComboBoxButtonSensitivity :: IsComboBox o => SensitivityType -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “button-sensitivity” property. This is rarely needed directly, but it is used by new.

getComboBoxButtonSensitivity :: (MonadIO m, IsComboBox o) => o -> m SensitivityType Source #

Get the value of the “button-sensitivity” property. When overloading is enabled, this is equivalent to

get comboBox #buttonSensitivity

setComboBoxButtonSensitivity :: (MonadIO m, IsComboBox o) => o -> SensitivityType -> m () Source #

Set the value of the “button-sensitivity” property. When overloading is enabled, this is equivalent to

set comboBox [ #buttonSensitivity := value ]

cellArea

The CellArea used to layout cell renderers for this combo box.

If no area is specified when creating the combo box with comboBoxNewWithArea a horizontally oriented CellAreaBox will be used.

Since: 3.0

constructComboBoxCellArea :: (IsComboBox o, IsCellArea a) => a -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “cell-area” property. This is rarely needed directly, but it is used by new.

getComboBoxCellArea :: (MonadIO m, IsComboBox o) => o -> m (Maybe CellArea) Source #

Get the value of the “cell-area” property. When overloading is enabled, this is equivalent to

get comboBox #cellArea

columnSpanColumn

If this is set to a non-negative value, it must be the index of a column of type G_TYPE_INT in the model. The value in that column for each item will determine how many columns that item will span in the popup. Therefore, values in this column must be greater than zero, and the sum of an item’s column position + span should not exceed ComboBox:wrap-width.

Since: 2.4

constructComboBoxColumnSpanColumn :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “column-span-column” property. This is rarely needed directly, but it is used by new.

getComboBoxColumnSpanColumn :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “column-span-column” property. When overloading is enabled, this is equivalent to

get comboBox #columnSpanColumn

setComboBoxColumnSpanColumn :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “column-span-column” property. When overloading is enabled, this is equivalent to

set comboBox [ #columnSpanColumn := value ]

entryTextColumn

The column in the combo box's model to associate with strings from the entry if the combo was created with ComboBox:has-entry = True.

Since: 2.24

constructComboBoxEntryTextColumn :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “entry-text-column” property. This is rarely needed directly, but it is used by new.

getComboBoxEntryTextColumn :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “entry-text-column” property. When overloading is enabled, this is equivalent to

get comboBox #entryTextColumn

setComboBoxEntryTextColumn :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “entry-text-column” property. When overloading is enabled, this is equivalent to

set comboBox [ #entryTextColumn := value ]

hasEntry

Whether the combo box has an entry.

Since: 2.24

constructComboBoxHasEntry :: IsComboBox o => Bool -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “has-entry” property. This is rarely needed directly, but it is used by new.

getComboBoxHasEntry :: (MonadIO m, IsComboBox o) => o -> m Bool Source #

Get the value of the “has-entry” property. When overloading is enabled, this is equivalent to

get comboBox #hasEntry

hasFrame

The has-frame property controls whether a frame is drawn around the entry.

Since: 2.6

constructComboBoxHasFrame :: IsComboBox o => Bool -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “has-frame” property. This is rarely needed directly, but it is used by new.

getComboBoxHasFrame :: (MonadIO m, IsComboBox o) => o -> m Bool Source #

Get the value of the “has-frame” property. When overloading is enabled, this is equivalent to

get comboBox #hasFrame

setComboBoxHasFrame :: (MonadIO m, IsComboBox o) => o -> Bool -> m () Source #

Set the value of the “has-frame” property. When overloading is enabled, this is equivalent to

set comboBox [ #hasFrame := value ]

idColumn

The column in the combo box's model that provides string IDs for the values in the model, if != -1.

Since: 3.0

constructComboBoxIdColumn :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “id-column” property. This is rarely needed directly, but it is used by new.

getComboBoxIdColumn :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “id-column” property. When overloading is enabled, this is equivalent to

get comboBox #idColumn

setComboBoxIdColumn :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “id-column” property. When overloading is enabled, this is equivalent to

set comboBox [ #idColumn := value ]

model

The model from which the combo box takes the values shown in the list.

Since: 2.4

clearComboBoxModel :: (MonadIO m, IsComboBox o) => o -> m () Source #

Set the value of the “model” property to Nothing. When overloading is enabled, this is equivalent to

clear #model

constructComboBoxModel :: (IsComboBox o, IsTreeModel a) => a -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “model” property. This is rarely needed directly, but it is used by new.

getComboBoxModel :: (MonadIO m, IsComboBox o) => o -> m TreeModel Source #

Get the value of the “model” property. When overloading is enabled, this is equivalent to

get comboBox #model

setComboBoxModel :: (MonadIO m, IsComboBox o, IsTreeModel a) => o -> a -> m () Source #

Set the value of the “model” property. When overloading is enabled, this is equivalent to

set comboBox [ #model := value ]

popupFixedWidth

Whether the popup's width should be a fixed width matching the allocated width of the combo box.

Since: 3.0

constructComboBoxPopupFixedWidth :: IsComboBox o => Bool -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “popup-fixed-width” property. This is rarely needed directly, but it is used by new.

getComboBoxPopupFixedWidth :: (MonadIO m, IsComboBox o) => o -> m Bool Source #

Get the value of the “popup-fixed-width” property. When overloading is enabled, this is equivalent to

get comboBox #popupFixedWidth

setComboBoxPopupFixedWidth :: (MonadIO m, IsComboBox o) => o -> Bool -> m () Source #

Set the value of the “popup-fixed-width” property. When overloading is enabled, this is equivalent to

set comboBox [ #popupFixedWidth := value ]

popupShown

Whether the combo boxes dropdown is popped up. Note that this property is mainly useful, because it allows you to connect to notify[popupShown](#signal:popupShown).

Since: 2.10

getComboBoxPopupShown :: (MonadIO m, IsComboBox o) => o -> m Bool Source #

Get the value of the “popup-shown” property. When overloading is enabled, this is equivalent to

get comboBox #popupShown

rowSpanColumn

If this is set to a non-negative value, it must be the index of a column of type G_TYPE_INT in the model. The value in that column for each item will determine how many rows that item will span in the popup. Therefore, values in this column must be greater than zero.

Since: 2.4

constructComboBoxRowSpanColumn :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “row-span-column” property. This is rarely needed directly, but it is used by new.

getComboBoxRowSpanColumn :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “row-span-column” property. When overloading is enabled, this is equivalent to

get comboBox #rowSpanColumn

setComboBoxRowSpanColumn :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “row-span-column” property. When overloading is enabled, this is equivalent to

set comboBox [ #rowSpanColumn := value ]

tearoffTitle

A title that may be displayed by the window manager when the popup is torn-off.

Since: 2.10

clearComboBoxTearoffTitle :: (MonadIO m, IsComboBox o) => o -> m () Source #

Set the value of the “tearoff-title” property to Nothing. When overloading is enabled, this is equivalent to

clear #tearoffTitle

constructComboBoxTearoffTitle :: IsComboBox o => Text -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “tearoff-title” property. This is rarely needed directly, but it is used by new.

getComboBoxTearoffTitle :: (MonadIO m, IsComboBox o) => o -> m (Maybe Text) Source #

Get the value of the “tearoff-title” property. When overloading is enabled, this is equivalent to

get comboBox #tearoffTitle

setComboBoxTearoffTitle :: (MonadIO m, IsComboBox o) => o -> Text -> m () Source #

Set the value of the “tearoff-title” property. When overloading is enabled, this is equivalent to

set comboBox [ #tearoffTitle := value ]

wrapWidth

If wrap-width is set to a positive value, items in the popup will be laid out along multiple columns, starting a new row on reaching the wrap width.

Since: 2.4

constructComboBoxWrapWidth :: IsComboBox o => Int32 -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “wrap-width” property. This is rarely needed directly, but it is used by new.

getComboBoxWrapWidth :: (MonadIO m, IsComboBox o) => o -> m Int32 Source #

Get the value of the “wrap-width” property. When overloading is enabled, this is equivalent to

get comboBox #wrapWidth

setComboBoxWrapWidth :: (MonadIO m, IsComboBox o) => o -> Int32 -> m () Source #

Set the value of the “wrap-width” property. When overloading is enabled, this is equivalent to

set comboBox [ #wrapWidth := value ]

Signals

changed

type C_ComboBoxChangedCallback = Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type ComboBoxChangedCallback = IO () Source #

The changed signal is emitted when the active item is changed. The can be due to the user selecting a different item from the list, or due to a call to comboBoxSetActiveIter. It will also be emitted while typing into the entry of a combo box with an entry.

Since: 2.4

afterComboBoxChanged :: (IsComboBox a, MonadIO m) => a -> ComboBoxChangedCallback -> m SignalHandlerId Source #

Connect a signal handler for the changed signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after comboBox #changed callback

onComboBoxChanged :: (IsComboBox a, MonadIO m) => a -> ComboBoxChangedCallback -> m SignalHandlerId Source #

Connect a signal handler for the changed signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on comboBox #changed callback

formatEntryText

type C_ComboBoxFormatEntryTextCallback = Ptr () -> CString -> Ptr () -> IO CString Source #

Type for the callback on the (unwrapped) C side.

type ComboBoxFormatEntryTextCallback Source #

Arguments

 = Text

path: the GtkTreePath string from the combo box's current model to format text for

-> IO Text

Returns: a newly allocated string representing path for the current GtkComboBox model.

For combo boxes that are created with an entry (See GtkComboBox:has-entry).

A signal which allows you to change how the text displayed in a combo box's entry is displayed.

Connect a signal handler which returns an allocated string representing path. That string will then be used to set the text in the combo box's entry. The default signal handler uses the text from the GtkComboBox[entryTextColumn](#signal:entryTextColumn) model column.

Here's an example signal handler which fetches data from the model and displays it in the entry.

C code

static gchar*
format_entry_text_callback (GtkComboBox *combo,
                            const gchar *path,
                            gpointer     user_data)
{
  GtkTreeIter iter;
  GtkTreeModel model;
  gdouble      value;

  model = gtk_combo_box_get_model (combo);

  gtk_tree_model_get_iter_from_string (model, &iter, path);
  gtk_tree_model_get (model, &iter,
                      THE_DOUBLE_VALUE_COLUMN, &value,
                      -1);

  return g_strdup_printf ("%g", value);
}

Since: 3.4

afterComboBoxFormatEntryText :: (IsComboBox a, MonadIO m) => a -> ComboBoxFormatEntryTextCallback -> m SignalHandlerId Source #

Connect a signal handler for the formatEntryText signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after comboBox #formatEntryText callback

onComboBoxFormatEntryText :: (IsComboBox a, MonadIO m) => a -> ComboBoxFormatEntryTextCallback -> m SignalHandlerId Source #

Connect a signal handler for the formatEntryText signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on comboBox #formatEntryText callback

moveActive

type C_ComboBoxMoveActiveCallback = Ptr () -> CUInt -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type ComboBoxMoveActiveCallback Source #

Arguments

 = ScrollType

scrollType: a ScrollType

-> IO () 

The moveActive signal is a [keybinding signal][GtkBindingSignal] which gets emitted to move the active selection.

Since: 2.12

afterComboBoxMoveActive :: (IsComboBox a, MonadIO m) => a -> ComboBoxMoveActiveCallback -> m SignalHandlerId Source #

Connect a signal handler for the moveActive signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after comboBox #moveActive callback

onComboBoxMoveActive :: (IsComboBox a, MonadIO m) => a -> ComboBoxMoveActiveCallback -> m SignalHandlerId Source #

Connect a signal handler for the moveActive signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on comboBox #moveActive callback

popdown

type C_ComboBoxPopdownCallback = Ptr () -> Ptr () -> IO CInt Source #

Type for the callback on the (unwrapped) C side.

type ComboBoxPopdownCallback = IO Bool Source #

The popdown signal is a [keybinding signal][GtkBindingSignal] which gets emitted to popdown the combo box list.

The default bindings for this signal are Alt+Up and Escape.

Since: 2.12

afterComboBoxPopdown :: (IsComboBox a, MonadIO m) => a -> ComboBoxPopdownCallback -> m SignalHandlerId Source #

Connect a signal handler for the popdown signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after comboBox #popdown callback

onComboBoxPopdown :: (IsComboBox a, MonadIO m) => a -> ComboBoxPopdownCallback -> m SignalHandlerId Source #

Connect a signal handler for the popdown signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on comboBox #popdown callback

popup

type C_ComboBoxPopupCallback = Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type ComboBoxPopupCallback = IO () Source #

The popup signal is a [keybinding signal][GtkBindingSignal] which gets emitted to popup the combo box list.

The default binding for this signal is Alt+Down.

Since: 2.12

afterComboBoxPopup :: (IsComboBox a, MonadIO m) => a -> ComboBoxPopupCallback -> m SignalHandlerId Source #

Connect a signal handler for the popup signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after comboBox #popup callback

mk_ComboBoxPopupCallback :: C_ComboBoxPopupCallback -> IO (FunPtr C_ComboBoxPopupCallback) Source #

Generate a function pointer callable from C code, from a C_ComboBoxPopupCallback.

onComboBoxPopup :: (IsComboBox a, MonadIO m) => a -> ComboBoxPopupCallback -> m SignalHandlerId Source #

Connect a signal handler for the popup signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on comboBox #popup callback