void FindReplaceBar::_unhandled_input(const Ref<InputEvent> &p_event) { Ref<InputEventKey> k = p_event; if (k.is_valid()) { if (k->is_pressed() && (text_edit->has_focus() || text_vbc->is_a_parent_of(get_focus_owner()))) { bool accepted = true; switch (k->get_scancode()) { case KEY_ESCAPE: { _hide_bar(); } break; default: { accepted = false; } break; } if (accepted) { accept_event(); } } } }
void FindReplaceBar::_unhandled_input(const InputEvent &p_event) { if (p_event.type == InputEvent::KEY) { const InputEventKey& k = p_event.key; if (k.pressed && (text_edit->has_focus() || text_vbc->is_a_parent_of(get_focus_owner()))) { bool accepted = true; switch (k.scancode) { case KEY_ESCAPE: { _hide_bar(); } break; default: { accepted = false; } break; } if (accepted) { accept_event(); } } } }
void RenameDialog::_insert_text(String text) { LineEdit *focus_owner = Object::cast_to<LineEdit>(get_focus_owner()); if (_is_main_field(focus_owner)) { focus_owner->selection_delete(); focus_owner->append_at_cursor(text); _update_preview(); } }
void RenameDialog::_update_substitute() { LineEdit *focus_owner_line_edit = Object::cast_to<LineEdit>(get_focus_owner()); bool is_main_field = _is_main_field(focus_owner_line_edit); but_insert_name->set_disabled(!is_main_field); but_insert_parent->set_disabled(!is_main_field); but_insert_type->set_disabled(!is_main_field); but_insert_scene->set_disabled(!is_main_field); but_insert_root->set_disabled(!is_main_field); but_insert_count->set_disabled(!is_main_field); // The focus mode seems to be reset when disabling/re-enabling but_insert_name->set_focus_mode(FOCUS_NONE); but_insert_parent->set_focus_mode(FOCUS_NONE); but_insert_type->set_focus_mode(FOCUS_NONE); but_insert_scene->set_focus_mode(FOCUS_NONE); but_insert_root->set_focus_mode(FOCUS_NONE); but_insert_count->set_focus_mode(FOCUS_NONE); }