| 59 char *name = args->name ? (char*)args->name : "button"; |
59 char *name = args->name ? (char*)args->name : "button"; |
| 60 Widget button = XmCreatePushButton(parent, name, xargs, n); |
60 Widget button = XmCreatePushButton(parent, name, xargs, n); |
| 61 XtManageChild(button); |
61 XtManageChild(button); |
| 62 ui_container_add(ctn, button); |
62 ui_container_add(ctn, button); |
| 63 |
63 |
| 64 ui_set_widget_groups(obj->ctx, button, args->groups); |
64 ui_set_widget_groups(obj->ctx, button, args->states); |
| 65 |
65 |
| 66 if(args->onclick) { |
66 if(args->onclick) { |
| 67 UiEventData *eventdata = malloc(sizeof(UiEventData)); |
67 UiEventData *eventdata = malloc(sizeof(UiEventData)); |
| 68 eventdata->callback = args->onclick; |
68 eventdata->callback = args->onclick; |
| 69 eventdata->userdata = args->onclickdata; |
69 eventdata->userdata = args->onclickdata; |
| 116 char *name = args->name ? (char*)args->name : "togglebutton"; |
116 char *name = args->name ? (char*)args->name : "togglebutton"; |
| 117 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
117 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
| 118 XtManageChild(button); |
118 XtManageChild(button); |
| 119 ui_container_add(ctn, button); |
119 ui_container_add(ctn, button); |
| 120 |
120 |
| 121 ui_set_widget_groups(obj->ctx, button, args->groups); |
121 ui_set_widget_groups(obj->ctx, button, args->states); |
| 122 |
122 |
| 123 ui_bind_togglebutton(obj, button, args->varname, args->value, args->onchange, args->onchangedata, args->enable_group); |
123 ui_bind_togglebutton(obj, button, args->varname, args->value, args->onchange, args->onchangedata, args->enable_state); |
| 124 |
124 |
| 125 XmStringFree(label); |
125 XmStringFree(label); |
| 126 return button; |
126 return button; |
| 127 } |
127 } |
| 128 |
128 |
| 144 char *name = args->name ? (char*)args->name : "button"; |
144 char *name = args->name ? (char*)args->name : "button"; |
| 145 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
145 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
| 146 XtManageChild(button); |
146 XtManageChild(button); |
| 147 ui_container_add(ctn, button); |
147 ui_container_add(ctn, button); |
| 148 |
148 |
| 149 ui_set_widget_groups(obj->ctx, button, args->groups); |
149 ui_set_widget_groups(obj->ctx, button, args->states); |
| 150 |
150 |
| 151 ui_bind_togglebutton(obj, button, args->varname, args->value, args->onchange, args->onchangedata, args->enable_group); |
151 ui_bind_togglebutton(obj, button, args->varname, args->value, args->onchange, args->onchangedata, args->enable_state); |
| 152 |
152 |
| 153 XmStringFree(label); |
153 XmStringFree(label); |
| 154 return button; |
154 return button; |
| 155 } |
155 } |
| 156 |
156 |
| 363 char *name = args->name ? (char*)args->name : "button"; |
363 char *name = args->name ? (char*)args->name : "button"; |
| 364 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
364 Widget button = XmCreateToggleButton(parent, name, xargs, n); |
| 365 XtManageChild(button); |
365 XtManageChild(button); |
| 366 ui_container_add(ctn, button); |
366 ui_container_add(ctn, button); |
| 367 |
367 |
| 368 ui_set_widget_groups(obj->ctx, button, args->groups); |
368 ui_set_widget_groups(obj->ctx, button, args->states); |
| 369 |
369 |
| 370 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); |
370 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); |
| 371 if(var) { |
371 if(var) { |
| 372 UiInteger *value = var->value; |
372 UiInteger *value = var->value; |
| 373 CxList *rb = value->obj; |
373 CxList *rb = value->obj; |
| 400 event->obj = obj; |
400 event->obj = obj; |
| 401 event->callback = args->onchange; |
401 event->callback = args->onchange; |
| 402 event->userdata = args->onchangedata; |
402 event->userdata = args->onchangedata; |
| 403 event->observers = NULL; |
403 event->observers = NULL; |
| 404 event->var = var; |
404 event->var = var; |
| 405 event->value = args->enable_group; |
405 event->value = args->enable_state; |
| 406 XtAddCallback( |
406 XtAddCallback( |
| 407 button, |
407 button, |
| 408 XmNvalueChangedCallback, |
408 XmNvalueChangedCallback, |
| 409 (XtCallbackProc)radiobutton_changed, |
409 (XtCallbackProc)radiobutton_changed, |
| 410 event); |
410 event); |