Merge pull request #9706 from djrm/theme_fixes

Icons can now be added inside line edits (Search icon).
This commit is contained in:
Rémi Verschelde 2017-07-23 13:03:53 +02:00 committed by GitHub
commit e3aa9b5191
7 changed files with 24 additions and 26 deletions

View File

@ -36,7 +36,8 @@
#include "os/keyboard.h" #include "os/keyboard.h"
void EditorHelpSearch::popup() { void EditorHelpSearch::popup() {
popup_centered_ratio(0.6);
popup_centered(Size2(700, 600) * EDSCALE);
if (search_box->get_text() != "") { if (search_box->get_text() != "") {
search_box->select_all(); search_box->select_all();
_update_search(); _update_search();
@ -46,7 +47,7 @@ void EditorHelpSearch::popup() {
void EditorHelpSearch::popup(const String &p_term) { void EditorHelpSearch::popup(const String &p_term) {
popup_centered_ratio(0.6); popup_centered(Size2(700, 600) * EDSCALE);
if (p_term != "") { if (p_term != "") {
search_box->set_text(p_term); search_box->set_text(p_term);
search_box->select_all(); search_box->select_all();
@ -262,6 +263,8 @@ void EditorHelpSearch::_notification(int p_what) {
if (p_what == NOTIFICATION_ENTER_TREE) { if (p_what == NOTIFICATION_ENTER_TREE) {
search_box->add_icon_override("right_icon", get_icon("Search", "EditorIcons"));
connect("confirmed", this, "_confirmed"); connect("confirmed", this, "_confirmed");
_update_search(); _update_search();
} }
@ -293,12 +296,7 @@ EditorHelpSearch::EditorHelpSearch() {
HBoxContainer *sb_hb = memnew(HBoxContainer); HBoxContainer *sb_hb = memnew(HBoxContainer);
search_box = memnew(LineEdit); search_box = memnew(LineEdit);
sb_hb->add_child(search_box); vbc->add_child(search_box);
search_box->set_h_size_flags(SIZE_EXPAND_FILL);
Button *sb = memnew(Button(TTR("Search")));
sb->connect("pressed", this, "_update_search");
sb_hb->add_child(sb);
vbc->add_margin_child(TTR("Search:"), sb_hb);
search_box->connect("text_changed", this, "_text_changed"); search_box->connect("text_changed", this, "_text_changed");
search_box->connect("gui_input", this, "_sbox_input"); search_box->connect("gui_input", this, "_sbox_input");
search_options = memnew(Tree); search_options = memnew(Tree);
@ -378,7 +376,7 @@ void EditorHelpIndex::select_class(const String &p_class) {
void EditorHelpIndex::popup() { void EditorHelpIndex::popup() {
popup_centered_ratio(0.6); popup_centered(Size2(500, 600) * EDSCALE);
search_box->set_text(""); search_box->set_text("");
_update_class_list(); _update_class_list();
@ -388,6 +386,7 @@ void EditorHelpIndex::_notification(int p_what) {
if (p_what == NOTIFICATION_ENTER_TREE) { if (p_what == NOTIFICATION_ENTER_TREE) {
search_box->add_icon_override("right_icon", get_icon("Search", "EditorIcons"));
_update_class_list(); _update_class_list();
connect("confirmed", this, "_tree_item_selected"); connect("confirmed", this, "_tree_item_selected");
@ -478,7 +477,7 @@ EditorHelpIndex::EditorHelpIndex() {
add_child(vbc); add_child(vbc);
search_box = memnew(LineEdit); search_box = memnew(LineEdit);
vbc->add_margin_child(TTR("Search:"), search_box); vbc->add_child(search_box);
search_box->set_h_size_flags(SIZE_EXPAND_FILL); search_box->set_h_size_flags(SIZE_EXPAND_FILL);
register_text_enter(search_box); register_text_enter(search_box);

View File

@ -434,7 +434,8 @@ Ref<Theme> create_editor_theme() {
theme->set_icon("close", "WindowDialog", title_hl_close_icon); theme->set_icon("close", "WindowDialog", title_hl_close_icon);
theme->set_icon("close_highlight", "WindowDialog", title_hl_close_icon); theme->set_icon("close_highlight", "WindowDialog", title_hl_close_icon);
theme->set_constant("close_h_ofs", "WindowDialog", 22 * EDSCALE); theme->set_constant("close_h_ofs", "WindowDialog", 22 * EDSCALE);
theme->set_constant("close_v_ofs", "WindowDialog", 18 * EDSCALE); theme->set_constant("close_v_ofs", "WindowDialog", 20 * EDSCALE);
theme->set_constant("title_height", "WindowDialog", 24 * EDSCALE);
// HScrollBar // HScrollBar
Ref<Texture> empty_icon = memnew(ImageTexture); Ref<Texture> empty_icon = memnew(ImageTexture);

View File

@ -153,7 +153,7 @@ void FileSystemDock::_notification(int p_what) {
files->connect("item_activated", this, "_select_file"); files->connect("item_activated", this, "_select_file");
button_hist_next->connect("pressed", this, "_fw_history"); button_hist_next->connect("pressed", this, "_fw_history");
button_hist_prev->connect("pressed", this, "_bw_history"); button_hist_prev->connect("pressed", this, "_bw_history");
search_icon->set_texture(get_icon("Search", "EditorIcons")); search_box->add_icon_override("right_icon", get_icon("Search", "EditorIcons"));
button_hist_next->set_icon(get_icon("Forward", "EditorIcons")); button_hist_next->set_icon(get_icon("Forward", "EditorIcons"));
button_hist_prev->set_icon(get_icon("Back", "EditorIcons")); button_hist_prev->set_icon(get_icon("Back", "EditorIcons"));
@ -1749,10 +1749,6 @@ FileSystemDock::FileSystemDock(EditorNode *p_editor) {
path_hb->add_child(search_box); path_hb->add_child(search_box);
search_box->connect("text_changed", this, "_search_changed"); search_box->connect("text_changed", this, "_search_changed");
search_icon = memnew(TextureRect);
search_icon->set_stretch_mode(TextureRect::STRETCH_KEEP_CENTERED);
path_hb->add_child(search_icon);
button_display_mode = memnew(ToolButton); button_display_mode = memnew(ToolButton);
path_hb->add_child(button_display_mode); path_hb->add_child(button_display_mode);
button_display_mode->set_toggle_mode(true); button_display_mode->set_toggle_mode(true);

View File

@ -786,7 +786,7 @@ void SceneTreeDock::_notification(int p_what) {
button_create_script->set_icon(get_icon("ScriptCreate", "EditorIcons")); button_create_script->set_icon(get_icon("ScriptCreate", "EditorIcons"));
button_clear_script->set_icon(get_icon("ScriptRemove", "EditorIcons")); button_clear_script->set_icon(get_icon("ScriptRemove", "EditorIcons"));
filter_icon->set_texture(get_icon("Search", "EditorIcons")); filter->add_icon_override("right_icon", get_icon("Search", "EditorIcons"));
EditorNode::get_singleton()->get_editor_selection()->connect("selection_changed", this, "_selection_changed"); EditorNode::get_singleton()->get_editor_selection()->connect("selection_changed", this, "_selection_changed");
@ -2021,11 +2021,8 @@ SceneTreeDock::SceneTreeDock(EditorNode *p_editor, Node *p_scene_root, EditorSel
vbc->add_child(filter_hbc); vbc->add_child(filter_hbc);
filter = memnew(LineEdit); filter = memnew(LineEdit);
filter->set_h_size_flags(SIZE_EXPAND_FILL); filter->set_h_size_flags(SIZE_EXPAND_FILL);
filter->set_placeholder(TTR("Filter nodes"));
filter_hbc->add_child(filter); filter_hbc->add_child(filter);
filter_icon = memnew(TextureRect);
filter_icon->set_custom_minimum_size(Size2(24 * EDSCALE, 0));
filter_hbc->add_child(filter_icon);
filter_icon->set_stretch_mode(TextureRect::STRETCH_KEEP_CENTERED);
filter->connect("text_changed", this, "_filter_changed"); filter->connect("text_changed", this, "_filter_changed");
tb = memnew(ToolButton); tb = memnew(ToolButton);

View File

@ -2746,7 +2746,7 @@ void VisualScriptEditor::_node_filter_changed(const String &p_text) {
void VisualScriptEditor::_notification(int p_what) { void VisualScriptEditor::_notification(int p_what) {
if (p_what == NOTIFICATION_READY) { if (p_what == NOTIFICATION_READY) {
node_filter_icon->set_texture(Control::get_icon("Search", "EditorIcons")); node_filter->add_icon_override("right_icon", Control::get_icon("Search", "EditorIcons"));
variable_editor->connect("changed", this, "_update_members"); variable_editor->connect("changed", this, "_update_members");
signal_editor->connect("changed", this, "_update_members"); signal_editor->connect("changed", this, "_update_members");
} }
@ -3215,9 +3215,6 @@ VisualScriptEditor::VisualScriptEditor() {
node_filter->connect("text_changed", this, "_node_filter_changed"); node_filter->connect("text_changed", this, "_node_filter_changed");
hbc_nodes->add_child(node_filter); hbc_nodes->add_child(node_filter);
node_filter->set_h_size_flags(SIZE_EXPAND_FILL); node_filter->set_h_size_flags(SIZE_EXPAND_FILL);
node_filter_icon = memnew(TextureRect);
node_filter_icon->set_stretch_mode(TextureRect::STRETCH_KEEP_CENTERED);
hbc_nodes->add_child(node_filter_icon);
vbc_nodes->add_child(hbc_nodes); vbc_nodes->add_child(hbc_nodes);
nodes = memnew(Tree); nodes = memnew(Tree);

View File

@ -584,6 +584,8 @@ Button *ConfirmationDialog::get_cancel() {
ConfirmationDialog::ConfirmationDialog() { ConfirmationDialog::ConfirmationDialog() {
set_title(RTR("Please Confirm...")); set_title(RTR("Please Confirm..."));
set_custom_minimum_size(Size2(200, 70)); #ifdef TOOLS_ENABLED
set_custom_minimum_size(Size2(200, 70) * EDSCALE);
#endif
cancel = add_cancel(); cancel = add_cancel();
} }

View File

@ -628,6 +628,12 @@ void LineEdit::_notification(int p_what) {
font_color.a *= placeholder_alpha; font_color.a *= placeholder_alpha;
font_color.a *= disabled_alpha; font_color.a *= disabled_alpha;
if (has_icon("right_icon")) {
Ref<Texture> r_icon = Control::get_icon("right_icon");
ofs_max -= r_icon->get_width();
r_icon->draw(ci, Point2(width - r_icon->get_width() - x_ofs, y_ofs), Color(1, 1, 1, disabled_alpha * .9));
}
int caret_height = font->get_height() > y_area ? y_area : font->get_height(); int caret_height = font->get_height() > y_area ? y_area : font->get_height();
while (true) { while (true) {