From 790d6e602be73377011fd369799da263b23fd9ca Mon Sep 17 00:00:00 2001 From: Yuri Sizov Date: Fri, 4 Jun 2021 16:34:49 +0300 Subject: [PATCH] Fix Theme overriding existing theme types with empty --- scene/resources/theme.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/scene/resources/theme.cpp b/scene/resources/theme.cpp index 786a96501af..12309f74886 100644 --- a/scene/resources/theme.cpp +++ b/scene/resources/theme.cpp @@ -553,6 +553,9 @@ void Theme::get_icon_list(StringName p_theme_type, List *p_list) con } void Theme::add_icon_type(const StringName &p_theme_type) { + if (icon_map.has(p_theme_type)) { + return; + } icon_map[p_theme_type] = HashMap>(); } @@ -641,6 +644,9 @@ void Theme::get_stylebox_list(StringName p_theme_type, List *p_list) } void Theme::add_stylebox_type(const StringName &p_theme_type) { + if (style_map.has(p_theme_type)) { + return; + } style_map[p_theme_type] = HashMap>(); } @@ -730,6 +736,9 @@ void Theme::get_font_list(StringName p_theme_type, List *p_list) con } void Theme::add_font_type(const StringName &p_theme_type) { + if (font_map.has(p_theme_type)) { + return; + } font_map[p_theme_type] = HashMap>(); } @@ -807,6 +816,9 @@ void Theme::get_font_size_list(StringName p_theme_type, List *p_list } void Theme::add_font_size_type(const StringName &p_theme_type) { + if (font_size_map.has(p_theme_type)) { + return; + } font_size_map[p_theme_type] = HashMap(); } @@ -882,6 +894,9 @@ void Theme::get_color_list(StringName p_theme_type, List *p_list) co } void Theme::add_color_type(const StringName &p_theme_type) { + if (color_map.has(p_theme_type)) { + return; + } color_map[p_theme_type] = HashMap(); } @@ -956,6 +971,9 @@ void Theme::get_constant_list(StringName p_theme_type, List *p_list) } void Theme::add_constant_type(const StringName &p_theme_type) { + if (constant_map.has(p_theme_type)) { + return; + } constant_map[p_theme_type] = HashMap(); }