| 256 s->value.ptr = NULL; |
256 s->value.ptr = NULL; |
| 257 s->value.free = NULL; |
257 s->value.free = NULL; |
| 258 NSTextField *textfield = (__bridge NSTextField*)s->obj; |
258 NSTextField *textfield = (__bridge NSTextField*)s->obj; |
| 259 textfield.stringValue = [[NSString alloc] initWithUTF8String:value]; |
259 textfield.stringValue = [[NSString alloc] initWithUTF8String:value]; |
| 260 } |
260 } |
| |
261 |
| |
262 /* -------------------------- public Textfield functions -------------------------- */ |
| |
263 |
| |
264 void ui_textfield_focus(UIWIDGET textfield) { |
| |
265 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
266 [tf.window makeFirstResponder:tf]; |
| |
267 [tf selectText:nil]; |
| |
268 } |
| |
269 |
| |
270 void ui_textfield_focus_without_selecting(UIWIDGET textfield) { |
| |
271 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
272 [tf.window makeFirstResponder:tf]; |
| |
273 } |
| |
274 |
| |
275 void ui_textfield_set_selection(UIWIDGET textfield, int begin, int end) { |
| |
276 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
277 [tf.window makeFirstResponder:tf]; |
| |
278 NSTextView *fieldEditor = (NSTextView *)[tf.window fieldEditor:YES forObject:tf]; |
| |
279 [fieldEditor setSelectedRange:NSMakeRange(begin, end-begin)]; |
| |
280 } |
| |
281 |
| |
282 void ui_textfield_select_all(UIWIDGET textfield) { |
| |
283 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
284 [tf selectText:nil]; |
| |
285 } |
| |
286 |
| |
287 void ui_textfield_set_editable(UIWIDGET textfield, UiBool editable) { |
| |
288 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
289 tf.editable = editable; |
| |
290 } |
| |
291 |
| |
292 UiBool ui_textfield_is_editable(UIWIDGET textfield) { |
| |
293 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
294 return tf.isEditable; |
| |
295 } |
| |
296 |
| |
297 void ui_textfield_set_position(UIWIDGET textfield, int pos) { |
| |
298 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
299 NSTextView *editor = (NSTextView *)[tf currentEditor]; |
| |
300 [editor setSelectedRange:NSMakeRange(pos, 0)]; |
| |
301 } |
| |
302 |
| |
303 int ui_textfield_get_position(UIWIDGET textfield) { |
| |
304 NSTextField *tf = (__bridge NSTextField*)textfield; |
| |
305 NSTextView *editor = (NSTextView *)[tf currentEditor]; |
| |
306 NSRange selectedRange = [editor selectedRange]; |
| |
307 return (int)selectedRange.location; |
| |
308 } |