ui/qt/text.cpp

changeset 1051
0db713dc8590
parent 802
cc73993a3ff9
--- a/ui/qt/text.cpp	Fri Jan 16 11:56:17 2026 +0100
+++ b/ui/qt/text.cpp	Wed Jan 21 20:12:59 2026 +0100
@@ -278,3 +278,50 @@
     }
     str->value.ptr = NULL;
 }
+
+void ui_textfield_focus(UIWIDGET textfield) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    edit->setFocus();
+    edit->selectAll();
+}
+
+void ui_textfield_focus_without_selecting(UIWIDGET textfield) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    edit->setFocus();
+}
+
+void ui_textfield_set_selection(UIWIDGET textfield, int begin, int end) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    if (begin < 0) {
+        begin = 0;
+    }
+    if (end < begin) {
+        end = begin;
+    }
+    edit->setSelection(begin, end - begin);
+}
+
+void ui_textfield_select_all(UIWIDGET textfield) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    edit->selectAll();
+}
+
+void ui_textfield_set_editable(UIWIDGET textfield, UiBool editable) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    edit->setReadOnly(!editable);
+}
+
+UiBool ui_textfield_is_editable(UIWIDGET textfield) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    return !edit->isReadOnly();
+}
+
+void ui_textfield_set_position(UIWIDGET textfield, int pos) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    edit->setCursorPosition(pos);
+}
+
+int ui_textfield_get_position(UIWIDGET textfield) {
+    QLineEdit *edit = static_cast<QLineEdit*>(textfield);
+    return edit->cursorPosition();
+}

mercurial