Merge pull request #14548 from volzhs/fix-out-of-size

Fix Index p_current=0 error at starting editor
This commit is contained in:
Rémi Verschelde 2017-12-11 13:02:53 +01:00 committed by GitHub
commit 1401b07d32
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 3 deletions

View file

@ -294,13 +294,17 @@ void TabContainer::_notification(int p_what) {
}
} break;
case NOTIFICATION_THEME_CHANGED: {
if (get_tab_count() > 0) {
call_deferred("set_current_tab", get_current_tab()); //wait until all changed theme
}
call_deferred("_on_theme_changed"); //wait until all changed theme
} break;
}
}
void TabContainer::_on_theme_changed() {
if (get_tab_count() > 0) {
set_current_tab(get_current_tab());
}
}
int TabContainer::_get_tab_width(int p_index) const {
ERR_FAIL_INDEX_V(p_index, get_tab_count(), 0);
@ -658,6 +662,7 @@ void TabContainer::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_popup"), &TabContainer::get_popup);
ClassDB::bind_method(D_METHOD("_child_renamed_callback"), &TabContainer::_child_renamed_callback);
ClassDB::bind_method(D_METHOD("_on_theme_changed"), &TabContainer::_on_theme_changed);
ADD_SIGNAL(MethodInfo("tab_changed", PropertyInfo(Variant::INT, "tab")));
ADD_SIGNAL(MethodInfo("tab_selected", PropertyInfo(Variant::INT, "tab")));

View file

@ -60,6 +60,7 @@ private:
Vector<Control *> _get_tabs() const;
int _get_tab_width(int p_index) const;
void _on_theme_changed();
protected:
void _child_renamed_callback();