ui/qt/text.cpp

changeset 1120
b9a0387038b7
parent 1068
1c79dbd248f4
equal deleted inserted replaced
1119:13983d8280ae 1120:b9a0387038b7
94 textarea->setDocument(document); 94 textarea->setDocument(document);
95 95
96 return textarea; 96 return textarea;
97 } 97 }
98 98
99 UIWIDGET ui_textarea_gettextwidget(UIWIDGET textarea) {
100 return textarea;
101 }
102
99 void ui_textarea_save(UiText *text) { 103 void ui_textarea_save(UiText *text) {
100 // NOOP 104 // NOOP
101 } 105 }
102 106
103 void ui_textarea_restore(UiText *text) { 107 void ui_textarea_restore(UiText *text) {
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) {

mercurial