DropDown
open class DropDown : Widget, DropDownProtocol
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 [classGtk.ListItemFactory
]. The default factory displays simple strings.
GtkDropDown
knows how to obtain strings from the items in a
[classGtk.StringList
]; for other models, you have to provide an expression
to find the strings via [methodGtk.DropDown.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 [methodGtk.DropDown.set_enable_search
].
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.
The DropDown
type acts as a reference-counted owner of an underlying GtkDropDown
instance.
It provides the methods that can operate on this data type through DropDownProtocol
conformance.
Use DropDown
as a strong reference or owner of a GtkDropDown
instance.
-
Designated initialiser from the underlying `C` data type.
This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the
DropDown
instance.Declaration
Swift
@inlinable public init(_ op: UnsafeMutablePointer<GtkDropDown>)
Parameters
op
pointer to the underlying object
-
Designated initialiser from a constant pointer to the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable public init(_ op: UnsafePointer<GtkDropDown>)
Parameters
op
pointer to the underlying object
-
Optional initialiser from a non-mutating
gpointer
to the underlyingC
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable override public init!(gpointer op: gpointer?)
Parameters
op
gpointer to the underlying object
-
Optional initialiser from a non-mutating
gconstpointer
to the underlyingC
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable override public init!(gconstpointer op: gconstpointer?)
Parameters
op
pointer to the underlying object
-
Optional initialiser from a constant pointer to the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable public init!(_ op: UnsafePointer<GtkDropDown>?)
Parameters
op
pointer to the underlying object
-
Optional initialiser from the underlying
C
data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable public init!(_ op: UnsafeMutablePointer<GtkDropDown>?)
Parameters
op
pointer to the underlying object
-
Designated initialiser from the underlying
C
data type. Will retainGtkDropDown
. i.e., ownership is transferred to theDropDown
instance.Declaration
Swift
@inlinable public init(retaining op: UnsafeMutablePointer<GtkDropDown>)
Parameters
op
pointer to the underlying object
-
Reference intialiser for a related type that implements
DropDownProtocol
Will retainGtkDropDown
.Declaration
Swift
@inlinable public init<T>(dropDown other: T) where T : DropDownProtocol
Parameters
other
an instance of a related type that implements
DropDownProtocol
-
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init<T>(cPointer p: UnsafeMutablePointer<T>)
Parameters
cPointer
pointer to the underlying object
-
Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)
Parameters
cPointer
pointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init(raw p: UnsafeRawPointer)
Parameters
p
raw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init(retainingRaw raw: UnsafeRawPointer)
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable public required init(raw p: UnsafeMutableRawPointer)
Parameters
p
mutable raw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable required public init(retainingRaw raw: UnsafeMutableRawPointer)
Parameters
raw
mutable raw pointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init(opaquePointer p: OpaquePointer)
Parameters
p
opaque pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
DropDownProtocol
.Declaration
Swift
@inlinable override public init(retainingOpaquePointer p: OpaquePointer)
Parameters
p
opaque pointer to the underlying object
-
Creates a new
GtkDropDown
.You may want to call [method
Gtk.DropDown.set_factory
] to set up a way to map its items to widgets.Declaration
Swift
@inlinable public init<ExpressionT, ListModelT>(model: ListModelT?, expression: ExpressionT?) where ExpressionT : ExpressionProtocol, ListModelT : ListModelProtocol
-
Creates a new
GtkDropDown
that is populated with the strings.Declaration
Swift
@inlinable public init(strings: UnsafePointer<UnsafePointer<CChar>?>!)
-
Creates a new
GtkDropDown
that is populated with the strings.Declaration
Swift
@inlinable public static func newFrom(strings: UnsafePointer<UnsafePointer<CChar>?>!) -> Widget!