summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Alekseev <alexander.n.alekseev@gmail.com>2018-02-16 11:29:19 +0300
committerRĂ©mi Verschelde <rverschelde@gmail.com>2018-02-19 20:25:34 +0100
commit66c39b14261ee31244f864ebff7bdb6f3c55211f (patch)
tree90855f73354411fbd70c394757ff114134eaf4f5
parentbe67f2e4ba1bc2d36a9705328cf0b87aada9c3d7 (diff)
Fixes OptionButton selection index being reset to zero at instanciation
Bug: engine tries to set selected item before items were added during save scene/run project, because of wrong properties order. Fixes #10213.
-rw-r--r--scene/gui/option_button.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/scene/gui/option_button.cpp b/scene/gui/option_button.cpp
index 1a46921561..71c14810f6 100644
--- a/scene/gui/option_button.cpp
+++ b/scene/gui/option_button.cpp
@@ -318,8 +318,9 @@ void OptionButton::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_items"), &OptionButton::_set_items);
ClassDB::bind_method(D_METHOD("_get_items"), &OptionButton::_get_items);
- ADD_PROPERTY(PropertyInfo(Variant::INT, "selected"), "_select_int", "get_selected");
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "items", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_items", "_get_items");
+ // "selected" property must come after "items", otherwise GH-10213 occurs
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "selected"), "_select_int", "get_selected");
ADD_SIGNAL(MethodInfo("item_selected", PropertyInfo(Variant::INT, "ID")));
}