gi-gtk-4.0.2: 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.ComboBoxText

Description

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

To create a GtkComboBoxText, use comboBoxTextNew or comboBoxTextNewWithEntry.

You can add items to a GtkComboBoxText with comboBoxTextAppendText, comboBoxTextInsertText or comboBoxTextPrependText and remove options with comboBoxTextRemove.

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

You should not call comboBoxSetModel or attempt to pack more cells into this combo box via its GtkCellLayout interface.

GtkComboBoxText as GtkBuildable

The GtkComboBoxText implementation of the GtkBuildable interface supports adding items directly using the <items> element and specifying <item> elements for each item. Each <item> element can specify the “id” corresponding to the appended text and also supports the regular translation attributes “translatable”, “context” and “comments”.

Here is a UI definition fragment specifying GtkComboBoxText items: > >class="GtkComboBoxText" > items > translatable="yes" id="factory"Factory/item > translatable="yes" id="home"Home/item > translatable="yes" id="subway"Subway/item > /items >/object

CSS nodes

plain code

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

GtkComboBoxText has a single CSS node with name combobox. It adds the style class .combo to the main CSS nodes of its entry and button children, and the .linked class to the node of its internal box.

Synopsis

Exported types

class (GObject o, IsDescendantOf ComboBoxText o) => IsComboBoxText o Source #

Type class for types which can be safely cast to ComboBoxText, for instance with toComboBoxText.

Instances

Instances details
(GObject o, IsDescendantOf ComboBoxText o) => IsComboBoxText o Source # 
Instance details

Defined in GI.Gtk.Objects.ComboBoxText

toComboBoxText :: (MonadIO m, IsComboBoxText o) => o -> m ComboBoxText Source #

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

Methods

Overloaded methods

append

comboBoxTextAppend Source #

Arguments

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

comboBox: A ComboBoxText

-> Maybe Text

id: a string ID for this value, or Nothing

-> Text

text: A string

-> m () 

Appends text to the list of strings stored in comboBox. If id is non-Nothing then it is used as the ID of the row.

This is the same as calling comboBoxTextInsert with a position of -1.

appendText

comboBoxTextAppendText Source #

Arguments

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

comboBox: A ComboBoxText

-> Text

text: A string

-> m () 

Appends text to the list of strings stored in comboBox.

This is the same as calling comboBoxTextInsertText with a position of -1.

getActiveText

comboBoxTextGetActiveText Source #

Arguments

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

comboBox: A ComboBoxText

-> m (Maybe Text)

Returns: a newly allocated string containing the currently active text. Must be freed with free.

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

insert

comboBoxTextInsert Source #

Arguments

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

comboBox: A ComboBoxText

-> Int32

position: An index to insert text

-> Maybe Text

id: a string ID for this value, or Nothing

-> Text

text: A string to display

-> m () 

Inserts text at position in the list of strings stored in comboBox. If id is non-Nothing then it is used as the ID of the row. See ComboBox:id-column.

If position is negative then text is appended.

insertText

comboBoxTextInsertText Source #

Arguments

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

comboBox: A ComboBoxText

-> Int32

position: An index to insert text

-> Text

text: A string

-> m () 

Inserts text at position in the list of strings stored in comboBox.

If position is negative then text is appended.

This is the same as calling comboBoxTextInsert with a Nothing ID string.

new

comboBoxTextNew Source #

Arguments

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

Returns: A new ComboBoxText

Creates a new ComboBoxText, which is a ComboBox just displaying strings.

newWithEntry

comboBoxTextNewWithEntry Source #

Arguments

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

Returns: a new ComboBoxText

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

prepend

comboBoxTextPrepend Source #

Arguments

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

comboBox: A ComboBox

-> Maybe Text

id: a string ID for this value, or Nothing

-> Text

text: a string

-> m () 

Prepends text to the list of strings stored in comboBox. If id is non-Nothing then it is used as the ID of the row.

This is the same as calling comboBoxTextInsert with a position of 0.

prependText

comboBoxTextPrependText Source #

Arguments

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

comboBox: A ComboBox

-> Text

text: A string

-> m () 

Prepends text to the list of strings stored in comboBox.

This is the same as calling comboBoxTextInsertText with a position of 0.

remove

comboBoxTextRemove Source #

Arguments

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

comboBox: A ComboBox

-> Int32

position: Index of the item to remove

-> m () 

Removes the string at position from comboBox.

removeAll

comboBoxTextRemoveAll Source #

Arguments

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

comboBox: A ComboBoxText

-> m () 

Removes all the text entries from the combo box.