diff options
author | azagaya <azagaya.games@gmail.com> | 2019-01-28 12:31:24 -0300 |
---|---|---|
committer | azagaya <azagaya.games@gmail.com> | 2019-02-11 08:52:09 -0300 |
commit | 7051685a779f2b1fa4322d6f8fbfaba71deea73f (patch) | |
tree | b7d5c0bb21e85f3cbfca1af51da775dc2468c4bb | |
parent | 70689ebffd95ab34e45bcbfdce3f6389033bfd44 (diff) |
Fixes differences between docs and item_selected and item_focused signals in optionbutton
Description in docs about item_selected and item_focused signals in optionbutton is fixed to match the real behaviour. Also, get_item_index function is added.
-rw-r--r-- | doc/classes/OptionButton.xml | 19 | ||||
-rw-r--r-- | scene/gui/option_button.cpp | 7 | ||||
-rw-r--r-- | scene/gui/option_button.h | 1 |
3 files changed, 22 insertions, 5 deletions
diff --git a/doc/classes/OptionButton.xml b/doc/classes/OptionButton.xml index c58c932b61..09b9167149 100644 --- a/doc/classes/OptionButton.xml +++ b/doc/classes/OptionButton.xml @@ -71,9 +71,18 @@ <argument index="0" name="idx" type="int"> </argument> <description> - Return the ID of the item at index "idx". - </description> - </method> + Return the ID of the item at index [code]idx[/code]. + </description> + </method> + <method name="get_item_index" qualifiers="const"> + <return type="int"> + </return> + <argument index="0" name="id" type="int"> + </argument> + <description> + Return the index of the item with the given [code]id[/code]. + </description> + </method> <method name="get_item_metadata" qualifiers="const"> <return type="Variant"> </return> @@ -198,14 +207,14 @@ <argument index="0" name="ID" type="int"> </argument> <description> - This signal is emitted when user navigated to an item using [code]ui_up[/code] or [code]ui_down[/code] action. ID of the item selected is passed as argument (if no IDs were added, ID will be just the item index). + This signal is emitted when user navigated to an item using [code]ui_up[/code] or [code]ui_down[/code] action. ID of the item selected is passed as argument. </description> </signal> <signal name="item_selected"> <argument index="0" name="ID" type="int"> </argument> <description> - This signal is emitted when the current item was changed by the user. ID of the item selected is passed as argument (if no IDs were added, ID will be just the item index). + This signal is emitted when the current item was changed by the user. Index of the item selected is passed as argument. </description> </signal> </signals> diff --git a/scene/gui/option_button.cpp b/scene/gui/option_button.cpp index 98f427cc07..b9b270ce0c 100644 --- a/scene/gui/option_button.cpp +++ b/scene/gui/option_button.cpp @@ -160,6 +160,12 @@ int OptionButton::get_item_id(int p_idx) const { return popup->get_item_id(p_idx); } + +int OptionButton::get_item_index(int p_id) const { + + return popup->get_item_index(p_id); +} + Variant OptionButton::get_item_metadata(int p_idx) const { return popup->get_item_metadata(p_idx); @@ -306,6 +312,7 @@ void OptionButton::_bind_methods() { ClassDB::bind_method(D_METHOD("get_item_text", "idx"), &OptionButton::get_item_text); ClassDB::bind_method(D_METHOD("get_item_icon", "idx"), &OptionButton::get_item_icon); ClassDB::bind_method(D_METHOD("get_item_id", "idx"), &OptionButton::get_item_id); + ClassDB::bind_method(D_METHOD("get_item_index", "id"), &OptionButton::get_item_index); ClassDB::bind_method(D_METHOD("get_item_metadata", "idx"), &OptionButton::get_item_metadata); ClassDB::bind_method(D_METHOD("is_item_disabled", "idx"), &OptionButton::is_item_disabled); ClassDB::bind_method(D_METHOD("get_item_count"), &OptionButton::get_item_count); diff --git a/scene/gui/option_button.h b/scene/gui/option_button.h index 121b4c002d..63b451377a 100644 --- a/scene/gui/option_button.h +++ b/scene/gui/option_button.h @@ -71,6 +71,7 @@ public: String get_item_text(int p_idx) const; Ref<Texture> get_item_icon(int p_idx) const; int get_item_id(int p_idx) const; + int get_item_index(int p_id) const; Variant get_item_metadata(int p_idx) const; bool is_item_disabled(int p_idx) const; |