OptionButton¶
Inherits: Button < BaseButton < Control < CanvasItem < Node < Object
Button control that provides selectable options when pressed.
Description¶
OptionButton is a type button that provides a selectable list of items when pressed. The item selected becomes the "current" item and is displayed as the button text.
See also BaseButton which contains common properties and methods associated with this node.
Note: The ID values used for items are limited to 32 bits, not full 64 bits of int. This has a range of -2^32
to 2^32 - 1
, i.e. -2147483648
to 2147483647
.
Properties¶
action_mode |
|
|
align |
|
|
|
||
toggle_mode |
|
Methods¶
void |
add_icon_item ( Texture texture, String label, int id=-1 ) |
void |
|
void |
add_separator ( ) |
void |
clear ( ) |
get_item_count ( ) const |
|
get_item_icon ( int idx ) const |
|
get_item_id ( int idx ) const |
|
get_item_index ( int id ) const |
|
get_item_metadata ( int idx ) const |
|
get_item_text ( int idx ) const |
|
get_item_tooltip ( int idx ) const |
|
get_popup ( ) const |
|
get_selected_id ( ) const |
|
get_selected_metadata ( ) const |
|
is_item_disabled ( int idx ) const |
|
void |
remove_item ( int idx ) |
void |
|
void |
set_item_disabled ( int idx, bool disabled ) |
void |
set_item_icon ( int idx, Texture texture ) |
void |
set_item_id ( int idx, int id ) |
void |
set_item_metadata ( int idx, Variant metadata ) |
void |
set_item_text ( int idx, String text ) |
void |
set_item_tooltip ( int idx, String tooltip ) |
Theme Properties¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Signals¶
item_focused ( int index )
Emitted when the user navigates to an item using the ui_up
or ui_down
actions. The index of the item selected is passed as argument.
item_selected ( int index )
Emitted when the current item has been changed by the user. The index of the item selected is passed as argument.
Property Descriptions¶
int selected = -1
int get_selected ( )
The index of the currently selected item, or -1
if no item is selected.
Method Descriptions¶
void add_icon_item ( Texture texture, String label, int id=-1 )
Adds an item, with a texture
icon, text label
and (optionally) id
. If no id
is passed, the item index will be used as the item's ID. New items are appended at the end.
void add_item ( String label, int id=-1 )
Adds an item, with text label
and (optionally) id
. If no id
is passed, the item index will be used as the item's ID. New items are appended at the end.
void add_separator ( )
Adds a separator to the list of items. Separators help to group items. Separator also takes up an index and is appended at the end.
void clear ( )
Clears all the items in the OptionButton.
int get_item_count ( ) const
Returns the amount of items in the OptionButton, including separators.
Texture get_item_icon ( int idx ) const
Returns the icon of the item at index idx
.
int get_item_id ( int idx ) const
Returns the ID of the item at index idx
.
int get_item_index ( int id ) const
Returns the index of the item with the given id
.
Variant get_item_metadata ( int idx ) const
Retrieves the metadata of an item. Metadata may be any type and can be used to store extra information about an item, such as an external string ID.
String get_item_text ( int idx ) const
Returns the text of the item at index idx
.
String get_item_tooltip ( int idx ) const
Returns the tooltip of the item at index idx
.
PopupMenu get_popup ( ) const
Returns the PopupMenu contained in this button.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible property.
int get_selected_id ( ) const
Returns the ID of the selected item, or -1
if no item is selected.
Variant get_selected_metadata ( ) const
Gets the metadata of the selected item. Metadata for items can be set using set_item_metadata.
bool is_item_disabled ( int idx ) const
Returns true
if the item at index idx
is disabled.
void remove_item ( int idx )
Removes the item at index idx
.
void select ( int idx )
Selects an item by index and makes it the current item. This will work even if the item is disabled.
Passing -1
as the index deselects any currently selected item.
void set_item_disabled ( int idx, bool disabled )
Sets whether the item at index idx
is disabled.
Disabled items are drawn differently in the dropdown and are not selectable by the user. If the current selected item is set as disabled, it will remain selected.
void set_item_icon ( int idx, Texture texture )
Sets the icon of the item at index idx
.
void set_item_id ( int idx, int id )
Sets the ID of the item at index idx
.
void set_item_metadata ( int idx, Variant metadata )
Sets the metadata of an item. Metadata may be of any type and can be used to store extra information about an item, such as an external string ID.
void set_item_text ( int idx, String text )
Sets the text of the item at index idx
.
void set_item_tooltip ( int idx, String tooltip )
Sets the tooltip of the item at index idx
.
Theme Property Descriptions¶
Color font_color = Color( 0.88, 0.88, 0.88, 1 )
Default text Color of the OptionButton.
Color font_color_disabled = Color( 0.9, 0.9, 0.9, 0.2 )
Text Color used when the OptionButton is disabled.
Color font_color_focus = Color( 0.94, 0.94, 0.94, 1 )
Text Color used when the OptionButton is focused. Only replaces the normal text color of the button. Disabled, hovered, and pressed states take precedence over this color.
Color font_color_hover = Color( 0.94, 0.94, 0.94, 1 )
Text Color used when the OptionButton is being hovered.
Color font_color_pressed = Color( 1, 1, 1, 1 )
Text Color used when the OptionButton is being pressed.
int arrow_margin = 2
The horizontal space between the arrow icon and the right edge of the button.
int hseparation = 2
The horizontal space between OptionButton's icon and text.
Font font
Font of the OptionButton's text.
Texture arrow
The arrow icon to be drawn on the right end of the button.
StyleBox disabled
StyleBox used when the OptionButton is disabled.
StyleBox focus
StyleBox used when the OptionButton is focused. It is displayed over the current StyleBox, so using StyleBoxEmpty will just disable the focus visual effect.
StyleBox hover
StyleBox used when the OptionButton is being hovered.
StyleBox normal
Default StyleBox for the OptionButton.
StyleBox pressed
StyleBox used when the OptionButton is being pressed.