summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Roubinsky <chaosus89@gmail.com>2019-10-14 14:00:45 +0300
committerYuri Roubinsky <chaosus89@gmail.com>2019-10-14 16:23:56 +0300
commit0a0c3f7fe0442ff715b591f3eb29a37f62c6473c (patch)
tree18b727761d8d237f35f45b90a3f05e367461483b
parent1fed266bf5452b30376db62495f4985f6975f2c1 (diff)
Fix color of FileDialog icons
-rw-r--r--scene/gui/file_dialog.cpp29
1 files changed, 23 insertions, 6 deletions
diff --git a/scene/gui/file_dialog.cpp b/scene/gui/file_dialog.cpp
index 24c046457b..5cb4bcc64f 100644
--- a/scene/gui/file_dialog.cpp
+++ b/scene/gui/file_dialog.cpp
@@ -46,14 +46,31 @@ VBoxContainer *FileDialog::get_vbox() {
void FileDialog::_notification(int p_what) {
- if (p_what == NOTIFICATION_ENTER_TREE) {
+ if (p_what == NOTIFICATION_ENTER_TREE || p_what == NOTIFICATION_THEME_CHANGED) {
- dir_up->set_icon(get_icon("parent_folder"));
- refresh->set_icon(get_icon("reload"));
- show_hidden->set_icon(get_icon("toggle_hidden"));
- }
+ if (p_what == NOTIFICATION_ENTER_TREE) {
+ dir_up->set_icon(get_icon("parent_folder"));
+ refresh->set_icon(get_icon("reload"));
+ show_hidden->set_icon(get_icon("toggle_hidden"));
+ }
+
+ Color font_color = get_color("font_color", "ToolButton");
+ Color font_color_hover = get_color("font_color_hover", "ToolButton");
+ Color font_color_pressed = get_color("font_color_pressed", "ToolButton");
+
+ dir_up->add_color_override("icon_color_normal", font_color);
+ dir_up->add_color_override("icon_color_hover", font_color_hover);
+ dir_up->add_color_override("icon_color_pressed", font_color_pressed);
+
+ refresh->add_color_override("icon_color_normal", font_color);
+ refresh->add_color_override("icon_color_hover", font_color_hover);
+ refresh->add_color_override("icon_color_pressed", font_color_pressed);
+
+ show_hidden->add_color_override("icon_color_normal", font_color);
+ show_hidden->add_color_override("icon_color_hover", font_color_hover);
+ show_hidden->add_color_override("icon_color_pressed", font_color_pressed);
- if (p_what == NOTIFICATION_POPUP_HIDE) {
+ } else if (p_what == NOTIFICATION_POPUP_HIDE) {
set_process_unhandled_input(false);
}