Class
GtkDropDown
Description [src]
final class Gtk.DropDown : Gtk.Widget {
/* No available fields */
}
GtkDropDown
is a widget that allows the user to choose an item
from a list of options.
The GtkDropDown
displays the selected choice.
The options are given to GtkDropDown
in the form of GListModel
and how the individual options are represented is determined by
a GtkListItemFactory
. The default factory displays simple strings.
GtkDropDown
knows how to obtain strings from the items in a
GtkStringList
; for other models, you have to provide an expression
to find the strings via gtk_drop_down_set_expression()
.
GtkDropDown
can optionally allow search in the popup, which is
useful if the list of options is long. To enable the search entry,
use gtk_drop_down_set_enable_search()
.
Here is a UI definition example for GtkDropDown
with a simple model:
<object class="GtkDropDown">
<property name="model">
<object class="GtkStringList">
<items>
<item translatable="yes">Factory</item>
<item translatable="yes">Home</item>
<item translatable="yes">Subway</item>
</items>
</object>
</property>
</object>
CSS nodes
GtkDropDown
has a single CSS node with name dropdown,
with the button and popover nodes as children.
Accessibility
GtkDropDown
uses the GTK_ACCESSIBLE_ROLE_COMBO_BOX
role.
Constructors
gtk_drop_down_new
Creates a new GtkDropDown
.
gtk_drop_down_new_from_strings
Creates a new GtkDropDown
that is populated with
the strings.
Instance methods
gtk_drop_down_get_enable_search
Returns whether search is enabled.
gtk_drop_down_get_expression
Gets the expression set that is used to obtain strings from items.
gtk_drop_down_get_factory
Gets the factory that’s currently used to populate list items.
gtk_drop_down_get_list_factory
Gets the factory that’s currently used to populate list items in the popup.
gtk_drop_down_get_model
Gets the model that provides the displayed items.
gtk_drop_down_get_selected
Gets the position of the selected item.
gtk_drop_down_get_selected_item
Gets the selected item. If no item is selected, NULL
is returned.
gtk_drop_down_get_show_arrow
Returns whether to show an arrow within the widget.
Available since: 4.6
gtk_drop_down_set_enable_search
Sets whether a search entry will be shown in the popup that allows to search for items in the list.
gtk_drop_down_set_expression
Sets the expression that gets evaluated to obtain strings from items.
gtk_drop_down_set_factory
Sets the GtkListItemFactory
to use for populating list items.
gtk_drop_down_set_list_factory
Sets the GtkListItemFactory
to use for populating list items in the popup.
gtk_drop_down_set_model
Sets the GListModel
to use.
gtk_drop_down_set_selected
Selects the item at the given position.
gtk_drop_down_set_show_arrow
Sets whether an arrow will be displayed within the widget.
Available since: 4.6
Methods inherited from GtkAccessible (10)
gtk_accessible_get_accessible_role
Retrieves the GtkAccessibleRole
for the given GtkAccessible
.
gtk_accessible_reset_property
Resets the accessible property
to its default value.
gtk_accessible_reset_relation
Resets the accessible relation
to its default value.
gtk_accessible_reset_state
Resets the accessible state
to its default value.
gtk_accessible_update_property
Updates a list of accessible properties.
gtk_accessible_update_property_value
Updates an array of accessible properties.
gtk_accessible_update_relation
Updates a list of accessible relations.
gtk_accessible_update_relation_value
Updates an array of accessible relations.
gtk_accessible_update_state
Updates a list of accessible states. See the GtkAccessibleState
documentation for the value types of accessible states.
gtk_accessible_update_state_value
Updates an array of accessible states.
Methods inherited from GtkBuildable (1)
gtk_buildable_get_buildable_id
Gets the ID of the buildable
object.
Properties
Gtk.DropDown:enable-search
Whether to show a search entry in the popup.
Gtk.DropDown:expression
An expression to evaluate to obtain strings to match against the search term.
Gtk.DropDown:factory
Factory for populating list items.
Gtk.DropDown:list-factory
The factory for populating list items in the popup.
Gtk.DropDown:model
Model for the displayed items.
Gtk.DropDown:selected
The position of the selected item.
Gtk.DropDown:selected-item
The selected item.
Gtk.DropDown:show-arrow
Whether to show an arrow within the GtkDropDown widget.
Available since: 4.6
Properties inherited from GtkWidget (34)
Gtk.Widget:can-focus
Whether the widget or any of its descendents can accept the input focus.
Gtk.Widget:can-target
Whether the widget can receive pointer events.
Gtk.Widget:css-classes
A list of css classes applied to this widget.
Gtk.Widget:css-name
The name of this widget in the CSS tree.
Gtk.Widget:cursor
The cursor used by widget
.
Gtk.Widget:focus-on-click
Whether the widget should grab focus when it is clicked with the mouse.
Gtk.Widget:focusable
Whether this widget itself will accept the input focus.
Gtk.Widget:halign
How to distribute horizontal space if widget gets extra space.
Gtk.Widget:has-default
Whether the widget is the default widget.
Gtk.Widget:has-focus
Whether the widget has the input focus.
Gtk.Widget:has-tooltip
Enables or disables the emission of the ::query-tooltip signal on widget
.
Gtk.Widget:height-request
Override for height request of the widget.
Gtk.Widget:hexpand
Whether to expand horizontally.
Gtk.Widget:hexpand-set
Whether to use the hexpand
property.
Gtk.Widget:layout-manager
The GtkLayoutManager
instance to use to compute the preferred size
of the widget, and allocate its children.
Gtk.Widget:margin-bottom
Margin on bottom side of widget.
Gtk.Widget:margin-end
Margin on end of widget, horizontally.
Gtk.Widget:margin-start
Margin on start of widget, horizontally.
Gtk.Widget:margin-top
Margin on top side of widget.
Gtk.Widget:name
The name of the widget.
Gtk.Widget:opacity
The requested opacity of the widget.
Gtk.Widget:overflow
How content outside the widget’s content area is treated.
Gtk.Widget:parent
The parent widget of this widget.
Gtk.Widget:receives-default
Whether the widget will receive the default action when it is focused.
Gtk.Widget:root
The GtkRoot
widget of the widget tree containing this widget.
Gtk.Widget:scale-factor
The scale factor of the widget.
Gtk.Widget:sensitive
Whether the widget responds to input.
Gtk.Widget:tooltip-markup
Sets the text of tooltip to be the given string, which is marked up with Pango markup.
Gtk.Widget:tooltip-text
Sets the text of tooltip to be the given string.
Gtk.Widget:valign
How to distribute vertical space if widget gets extra space.
Gtk.Widget:vexpand
Whether to expand vertically.
Gtk.Widget:vexpand-set
Whether to use the vexpand
property.
Gtk.Widget:visible
Whether the widget is visible.
Gtk.Widget:width-request
Override for width request of the widget.
Properties inherited from GtkAccessible (1)
Gtk.Accessible:accessible-role
The accessible role of the given GtkAccessible
implementation.
Signals
Signals inherited from GtkWidget (13)
Gtk.Widget::destroy
Signals that all holders of a reference to the widget should release the reference that they hold.
Gtk.Widget::direction-changed
Emitted when the text direction of a widget changes.
Gtk.Widget::hide
Emitted when widget
is hidden.
Gtk.Widget::keynav-failed
Emitted if keyboard navigation fails.
Gtk.Widget::map
Emitted when widget
is going to be mapped.
Gtk.Widget::mnemonic-activate
Emitted when a widget is activated via a mnemonic.
Gtk.Widget::move-focus
Emitted when the focus is moved.
Gtk.Widget::query-tooltip
Emitted when the widgets tooltip is about to be shown.
Gtk.Widget::realize
Emitted when widget
is associated with a GdkSurface
.
Gtk.Widget::show
Emitted when widget
is shown.
Gtk.Widget::state-flags-changed
Emitted when the widget state changes.
Gtk.Widget::unmap
Emitted when widget
is going to be unmapped.
Gtk.Widget::unrealize
Emitted when the GdkSurface
associated with widget
is destroyed.
Signals inherited from GObject (1)
GObject.Object::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.