comparison ios/dw.m @ 2589:e879afecf3ab

iOS: Fix dw_window_g/set_text() on buttons, can't use the label directly.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 24 May 2021 23:53:04 +0000
parents 8253e17b20ad
children f3d423cdbc2e
comparison
equal deleted inserted replaced
2588:8253e17b20ad 2589:e879afecf3ab
8509 DW_FUNCTION_RETURN(dw_window_get_text, char *) 8509 DW_FUNCTION_RETURN(dw_window_get_text, char *)
8510 DW_FUNCTION_RESTORE_PARAM1(handle, HWND) 8510 DW_FUNCTION_RESTORE_PARAM1(handle, HWND)
8511 { 8511 {
8512 DW_FUNCTION_INIT; 8512 DW_FUNCTION_INIT;
8513 id object = _dw_text_handle(handle); 8513 id object = _dw_text_handle(handle);
8514 id control = handle;
8514 char *retval = NULL; 8515 char *retval = NULL;
8515 8516
8516 if([object isKindOfClass:[UILabel class]] || [object isKindOfClass:[UITextField class]]) 8517 if([control isKindOfClass:[UIButton class]])
8518 {
8519 NSString *nsstr = [control titleForState:UIControlStateNormal];
8520
8521 retval = strdup([nsstr UTF8String]);
8522 }
8523 else if([object isKindOfClass:[UILabel class]] || [object isKindOfClass:[UITextField class]])
8517 { 8524 {
8518 NSString *nsstr = [object text]; 8525 NSString *nsstr = [object text];
8519 8526
8520 retval = strdup([nsstr UTF8String]); 8527 retval = strdup([nsstr UTF8String]);
8521 } 8528 }
8543 DW_FUNCTION_NO_RETURN(dw_window_set_text) 8550 DW_FUNCTION_NO_RETURN(dw_window_set_text)
8544 DW_FUNCTION_RESTORE_PARAM2(handle, HWND, text, char *) 8551 DW_FUNCTION_RESTORE_PARAM2(handle, HWND, text, char *)
8545 { 8552 {
8546 DW_FUNCTION_INIT; 8553 DW_FUNCTION_INIT;
8547 id object = _dw_text_handle(handle); 8554 id object = _dw_text_handle(handle);
8555 id control = handle;
8548 Item *item = NULL; 8556 Item *item = NULL;
8549 8557
8550 if([object isKindOfClass:[UILabel class]] || [object isKindOfClass:[UITextField class]]) 8558 if([control isKindOfClass:[UIButton class]])
8559 {
8560 [control setTitle:[NSString stringWithUTF8String:text] forState:UIControlStateNormal];
8561 item = _dw_box_item(handle);
8562 }
8563 else if([object isKindOfClass:[UILabel class]] || [object isKindOfClass:[UITextField class]])
8551 { 8564 {
8552 [object setText:[NSString stringWithUTF8String:text]]; 8565 [object setText:[NSString stringWithUTF8String:text]];
8553 item = _dw_box_item(handle); 8566 item = _dw_box_item(handle);
8554 } 8567 }
8555 else if([object isMemberOfClass:[DWWindow class]]) 8568 else if([object isMemberOfClass:[DWWindow class]])