| 276 if(str->value.free) { |
276 if(str->value.free) { |
| 277 str->value.free(str->value.ptr); |
277 str->value.free(str->value.ptr); |
| 278 } |
278 } |
| 279 str->value.ptr = NULL; |
279 str->value.ptr = NULL; |
| 280 } |
280 } |
| |
281 |
| |
282 void ui_textfield_focus(UIWIDGET textfield) { |
| |
283 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
284 edit->setFocus(); |
| |
285 edit->selectAll(); |
| |
286 } |
| |
287 |
| |
288 void ui_textfield_focus_without_selecting(UIWIDGET textfield) { |
| |
289 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
290 edit->setFocus(); |
| |
291 } |
| |
292 |
| |
293 void ui_textfield_set_selection(UIWIDGET textfield, int begin, int end) { |
| |
294 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
295 if (begin < 0) { |
| |
296 begin = 0; |
| |
297 } |
| |
298 if (end < begin) { |
| |
299 end = begin; |
| |
300 } |
| |
301 edit->setSelection(begin, end - begin); |
| |
302 } |
| |
303 |
| |
304 void ui_textfield_select_all(UIWIDGET textfield) { |
| |
305 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
306 edit->selectAll(); |
| |
307 } |
| |
308 |
| |
309 void ui_textfield_set_editable(UIWIDGET textfield, UiBool editable) { |
| |
310 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
311 edit->setReadOnly(!editable); |
| |
312 } |
| |
313 |
| |
314 UiBool ui_textfield_is_editable(UIWIDGET textfield) { |
| |
315 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
316 return !edit->isReadOnly(); |
| |
317 } |
| |
318 |
| |
319 void ui_textfield_set_position(UIWIDGET textfield, int pos) { |
| |
320 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
321 edit->setCursorPosition(pos); |
| |
322 } |
| |
323 |
| |
324 int ui_textfield_get_position(UIWIDGET textfield) { |
| |
325 QLineEdit *edit = static_cast<QLineEdit*>(textfield); |
| |
326 return edit->cursorPosition(); |
| |
327 } |