| 187 } |
191 } |
| 188 } |
192 } |
| 189 |
193 |
| 190 void ui_textarea_setselection(UiText *text, int begin, int end) { |
194 void ui_textarea_setselection(UiText *text, int begin, int end) { |
| 191 QTextEdit *textview = (QTextEdit*)text->obj; |
195 QTextEdit *textview = (QTextEdit*)text->obj; |
| 192 QTextCursor cursor = textview->textCursor(); |
196 ui_textarea_set_selection(textview, begin, end); |
| 193 cursor.setPosition(begin, QTextCursor::MoveAnchor); |
|
| 194 cursor.setPosition(end, QTextCursor::KeepAnchor); |
|
| 195 textview->setTextCursor(cursor); |
|
| 196 } |
197 } |
| 197 |
198 |
| 198 int ui_textarea_length(UiText *text) { |
199 int ui_textarea_length(UiText *text) { |
| 199 QTextDocument *doc = (QTextDocument*)text->data1; |
200 QTextDocument *doc = (QTextDocument*)text->data1; |
| 200 return doc->characterCount(); |
201 return doc->characterCount(); |
| 204 QTextDocument *doc = (QTextDocument*)text->data1; |
205 QTextDocument *doc = (QTextDocument*)text->data1; |
| 205 QTextCursor cursor(doc); |
206 QTextCursor cursor(doc); |
| 206 cursor.setPosition(begin); |
207 cursor.setPosition(begin); |
| 207 cursor.setPosition(end, QTextCursor::KeepAnchor); |
208 cursor.setPosition(end, QTextCursor::KeepAnchor); |
| 208 cursor.removeSelectedText(); |
209 cursor.removeSelectedText(); |
| |
210 } |
| |
211 |
| |
212 |
| |
213 void ui_textarea_focus(UIWIDGET textarea) { |
| |
214 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
215 edit->setFocus(); |
| |
216 } |
| |
217 |
| |
218 void ui_textarea_set_selection(UIWIDGET textarea, int begin, int end) { |
| |
219 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
220 QTextCursor cursor = edit->textCursor(); |
| |
221 cursor.setPosition(begin, QTextCursor::MoveAnchor); |
| |
222 cursor.setPosition(end, QTextCursor::KeepAnchor); |
| |
223 edit->setTextCursor(cursor); |
| |
224 } |
| |
225 |
| |
226 void ui_textarea_select_all(UIWIDGET textarea) { |
| |
227 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
228 edit->selectAll(); |
| |
229 } |
| |
230 |
| |
231 void ui_textarea_set_editable(UIWIDGET textarea, UiBool editable) { |
| |
232 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
233 edit->setReadOnly(!editable); |
| |
234 } |
| |
235 |
| |
236 UiBool ui_textarea_is_editable(UIWIDGET textarea) { |
| |
237 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
238 return !edit->isReadOnly(); |
| |
239 } |
| |
240 |
| |
241 void ui_textarea_set_position(UIWIDGET textarea, int pos) { |
| |
242 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
243 QTextCursor cursor = edit->textCursor(); |
| |
244 cursor.setPosition(pos); |
| |
245 edit->setTextCursor(cursor); |
| |
246 } |
| |
247 |
| |
248 int ui_textarea_get_position(UIWIDGET textarea) { |
| |
249 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
250 QTextCursor cursor = edit->textCursor(); |
| |
251 return cursor.position(); |
| |
252 } |
| |
253 |
| |
254 void ui_textarea_scroll_to(UIWIDGET textarea, int pos) { |
| |
255 QTextEdit *edit = static_cast<QTextEdit*>(textarea); |
| |
256 QTextCursor cursor = edit->textCursor(); |
| |
257 cursor.setPosition(pos); |
| |
258 edit->setTextCursor(cursor); |
| |
259 edit->ensureCursorVisible(); |
| 209 } |
260 } |
| 210 |
261 |
| 211 /* ------------------------------ TextField ------------------------------ */ |
262 /* ------------------------------ TextField ------------------------------ */ |
| 212 |
263 |
| 213 static UIWIDGET create_textfield(UiObject *obj, UiTextFieldArgs *args, bool password, bool frameless) { |
264 static UIWIDGET create_textfield(UiObject *obj, UiTextFieldArgs *args, bool password, bool frameless) { |