From cd05ca42479fa9061b872cb7e700bd001ce4dd98 Mon Sep 17 00:00:00 2001 From: Chaosus Date: Fri, 5 Oct 2018 21:37:26 +0300 Subject: [PATCH] Fix inspector color when theme changed --- editor/editor_inspector.cpp | 7 +++++++ editor/inspector_dock.cpp | 15 +++++++++++++++ editor/inspector_dock.h | 1 + 3 files changed, 23 insertions(+) diff --git a/editor/editor_inspector.cpp b/editor/editor_inspector.cpp index c6258c84938..a90f15004a2 100644 --- a/editor/editor_inspector.cpp +++ b/editor/editor_inspector.cpp @@ -2139,6 +2139,13 @@ void EditorInspector::_notification(int p_what) { } if (p_what == EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED) { + + if (use_sub_inspector_bg) { + add_style_override("bg", get_stylebox("sub_inspector_bg", "Editor")); + } else if (is_inside_tree()) { + add_style_override("bg", get_stylebox("bg", "Tree")); + } + update_tree(); } } diff --git a/editor/inspector_dock.cpp b/editor/inspector_dock.cpp index 4f4980d83ce..750fca2852b 100644 --- a/editor/inspector_dock.cpp +++ b/editor/inspector_dock.cpp @@ -328,6 +328,21 @@ Container *InspectorDock::get_addon_area() { return this; } +void InspectorDock::_notification(int p_what) { + switch (p_what) { + case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: { + set_theme(editor->get_gui_base()->get_theme()); + resource_new_button->set_icon(get_icon("New", "EditorIcons")); + resource_load_button->set_icon(get_icon("Load", "EditorIcons")); + backward_button->set_icon(get_icon("Back", "EditorIcons")); + forward_button->set_icon(get_icon("Forward", "EditorIcons")); + history_menu->set_icon(get_icon("History", "EditorIcons")); + object_menu->set_icon(get_icon("Tools", "EditorIcons")); + warning->set_icon(get_icon("NodeWarning", "EditorIcons")); + } break; + } +} + void InspectorDock::_bind_methods() { ClassDB::bind_method("_menu_option", &InspectorDock::_menu_option); diff --git a/editor/inspector_dock.h b/editor/inspector_dock.h index 97ef6899dc3..57d2a032951 100644 --- a/editor/inspector_dock.h +++ b/editor/inspector_dock.h @@ -118,6 +118,7 @@ class InspectorDock : public VBoxContainer { protected: static void _bind_methods(); + void _notification(int p_what); public: void go_back();