|
@@ -1513,9 +1513,9 @@ void LineEdit::clear() {
|
|
|
void LineEdit::show_virtual_keyboard() {
|
|
|
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) {
|
|
|
if (selection.enabled) {
|
|
|
- DisplayServer::get_singleton()->virtual_keyboard_show(text, get_global_rect(), false, max_length, selection.begin, selection.end);
|
|
|
+ DisplayServer::get_singleton()->virtual_keyboard_show(text, get_global_rect(), DisplayServer::VirtualKeyboardType(virtual_keyboard_type), max_length, selection.begin, selection.end);
|
|
|
} else {
|
|
|
- DisplayServer::get_singleton()->virtual_keyboard_show(text, get_global_rect(), false, max_length, caret_column);
|
|
|
+ DisplayServer::get_singleton()->virtual_keyboard_show(text, get_global_rect(), DisplayServer::VirtualKeyboardType(virtual_keyboard_type), max_length, caret_column);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -2040,6 +2040,14 @@ bool LineEdit::is_virtual_keyboard_enabled() const {
|
|
|
return virtual_keyboard_enabled;
|
|
|
}
|
|
|
|
|
|
+void LineEdit::set_virtual_keyboard_type(VirtualKeyboardType p_type) {
|
|
|
+ virtual_keyboard_type = p_type;
|
|
|
+}
|
|
|
+
|
|
|
+LineEdit::VirtualKeyboardType LineEdit::get_virtual_keyboard_type() const {
|
|
|
+ return virtual_keyboard_type;
|
|
|
+}
|
|
|
+
|
|
|
void LineEdit::set_middle_mouse_paste_enabled(bool p_enabled) {
|
|
|
middle_mouse_paste_enabled = p_enabled;
|
|
|
}
|
|
@@ -2280,6 +2288,8 @@ void LineEdit::_bind_methods() {
|
|
|
ClassDB::bind_method(D_METHOD("is_context_menu_enabled"), &LineEdit::is_context_menu_enabled);
|
|
|
ClassDB::bind_method(D_METHOD("set_virtual_keyboard_enabled", "enable"), &LineEdit::set_virtual_keyboard_enabled);
|
|
|
ClassDB::bind_method(D_METHOD("is_virtual_keyboard_enabled"), &LineEdit::is_virtual_keyboard_enabled);
|
|
|
+ ClassDB::bind_method(D_METHOD("set_virtual_keyboard_type", "type"), &LineEdit::set_virtual_keyboard_type);
|
|
|
+ ClassDB::bind_method(D_METHOD("get_virtual_keyboard_type"), &LineEdit::get_virtual_keyboard_type);
|
|
|
ClassDB::bind_method(D_METHOD("set_clear_button_enabled", "enable"), &LineEdit::set_clear_button_enabled);
|
|
|
ClassDB::bind_method(D_METHOD("is_clear_button_enabled"), &LineEdit::is_clear_button_enabled);
|
|
|
ClassDB::bind_method(D_METHOD("set_shortcut_keys_enabled", "enable"), &LineEdit::set_shortcut_keys_enabled);
|
|
@@ -2329,6 +2339,15 @@ void LineEdit::_bind_methods() {
|
|
|
BIND_ENUM_CONSTANT(MENU_INSERT_SHY);
|
|
|
BIND_ENUM_CONSTANT(MENU_MAX);
|
|
|
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_DEFAULT);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_MULTILINE);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_NUMBER);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_NUMBER_DECIMAL);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_PHONE);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_EMAIL_ADDRESS);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_PASSWORD);
|
|
|
+ BIND_ENUM_CONSTANT(KEYBOARD_TYPE_URL);
|
|
|
+
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::STRING, "text"), "set_text", "get_text");
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::STRING, "placeholder_text"), "set_placeholder", "get_placeholder");
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::INT, "alignment", PROPERTY_HINT_ENUM, "Left,Center,Right,Fill"), "set_horizontal_alignment", "get_horizontal_alignment");
|
|
@@ -2339,6 +2358,7 @@ void LineEdit::_bind_methods() {
|
|
|
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");
|
|
|
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "virtual_keyboard_type", PROPERTY_HINT_ENUM, "Default,Multiline,Number,Decimal,Phone,Email,Password,URL"), "set_virtual_keyboard_type", "get_virtual_keyboard_type");
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "clear_button_enabled"), "set_clear_button_enabled", "is_clear_button_enabled");
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "shortcut_keys_enabled"), "set_shortcut_keys_enabled", "is_shortcut_keys_enabled");
|
|
|
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "middle_mouse_paste_enabled"), "set_middle_mouse_paste_enabled", "is_middle_mouse_paste_enabled");
|