mirror of
https://github.com/godotengine/godot.git
synced 2025-10-20 00:13:30 +00:00
LineEdit
add member keep_editing_on_text_submit
.
Allow users to exit edit mode when Enter is pressed.
This commit is contained in:
parent
aa8d9b83f6
commit
e89c196a80
4 changed files with 21 additions and 5 deletions
|
@ -99,6 +99,14 @@ bool LineEdit::is_editing() const {
|
|||
return editing;
|
||||
}
|
||||
|
||||
void LineEdit::set_keep_editing_on_text_submit(bool p_enabled) {
|
||||
keep_editing_on_text_submit = p_enabled;
|
||||
}
|
||||
|
||||
bool LineEdit::is_editing_kept_on_text_submit() const {
|
||||
return keep_editing_on_text_submit;
|
||||
}
|
||||
|
||||
void LineEdit::_close_ime_window() {
|
||||
DisplayServer::WindowID wid = get_window() ? get_window()->get_window_id() : DisplayServer::INVALID_WINDOW_ID;
|
||||
if (wid == DisplayServer::INVALID_WINDOW_ID || !DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_IME)) {
|
||||
|
@ -773,7 +781,7 @@ void LineEdit::gui_input(const Ref<InputEvent> &p_event) {
|
|||
DisplayServer::get_singleton()->virtual_keyboard_hide();
|
||||
}
|
||||
|
||||
if (editing) {
|
||||
if (editing && !keep_editing_on_text_submit) {
|
||||
unedit();
|
||||
emit_signal(SNAME("editing_toggled"), false);
|
||||
}
|
||||
|
@ -2791,6 +2799,8 @@ void LineEdit::_bind_methods() {
|
|||
ClassDB::bind_method(D_METHOD("edit"), &LineEdit::edit);
|
||||
ClassDB::bind_method(D_METHOD("unedit"), &LineEdit::unedit);
|
||||
ClassDB::bind_method(D_METHOD("is_editing"), &LineEdit::is_editing);
|
||||
ClassDB::bind_method(D_METHOD("set_keep_editing_on_text_submit", "enable"), &LineEdit::set_keep_editing_on_text_submit);
|
||||
ClassDB::bind_method(D_METHOD("is_editing_kept_on_text_submit"), &LineEdit::is_editing_kept_on_text_submit);
|
||||
ClassDB::bind_method(D_METHOD("clear"), &LineEdit::clear);
|
||||
ClassDB::bind_method(D_METHOD("select", "from", "to"), &LineEdit::select, DEFVAL(0), DEFVAL(-1));
|
||||
ClassDB::bind_method(D_METHOD("select_all"), &LineEdit::select_all);
|
||||
|
@ -2921,6 +2931,7 @@ void LineEdit::_bind_methods() {
|
|||
ADD_PROPERTY(PropertyInfo(Variant::INT, "alignment", PROPERTY_HINT_ENUM, "Left,Center,Right,Fill"), "set_horizontal_alignment", "get_horizontal_alignment");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "max_length", PROPERTY_HINT_RANGE, "0,1000,1,or_greater"), "set_max_length", "get_max_length");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "editable"), "set_editable", "is_editable");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "keep_editing_on_text_submit"), "set_keep_editing_on_text_submit", "is_editing_kept_on_text_submit");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "expand_to_text_length"), "set_expand_to_text_length_enabled", "is_expand_to_text_length_enabled");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "context_menu_enabled"), "set_context_menu_enabled", "is_context_menu_enabled");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "virtual_keyboard_enabled"), "set_virtual_keyboard_enabled", "is_virtual_keyboard_enabled");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue