diff options
author | Yuri Roubinsky <chaosus89@gmail.com> | 2019-10-14 14:00:45 +0300 |
---|---|---|
committer | Yuri Roubinsky <chaosus89@gmail.com> | 2019-10-14 16:23:56 +0300 |
commit | 0a0c3f7fe0442ff715b591f3eb29a37f62c6473c (patch) | |
tree | 18b727761d8d237f35f45b90a3f05e367461483b | |
parent | 1fed266bf5452b30376db62495f4985f6975f2c1 (diff) |
Fix color of FileDialog icons
-rw-r--r-- | scene/gui/file_dialog.cpp | 29 |
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); } |