195 var = uic_create_value_var(current->ctx, args.value); |
195 var = uic_create_value_var(current->ctx, args.value); |
196 } else if (args.varname) { |
196 } else if (args.varname) { |
197 var = uic_create_var(obj->ctx, args.varname, UI_VAR_INTEGER); |
197 var = uic_create_var(obj->ctx, args.varname, UI_VAR_INTEGER); |
198 } |
198 } |
199 |
199 |
|
200 UiBool first = FALSE; |
200 if(var) { |
201 if(var) { |
201 rgroup = var->value; |
202 rgroup = var->value; |
202 rg = rgroup->obj; |
203 rg = rgroup->obj; |
|
204 if(!rg) { |
|
205 first = TRUE; |
|
206 } |
203 } |
207 } |
204 |
208 |
205 GtkWidget *rbutton = gtk_radio_button_new_with_label(rg, args.label ? args.label : ""); |
209 GtkWidget *rbutton = gtk_radio_button_new_with_label(rg, args.label ? args.label : ""); |
206 rg = gtk_radio_button_get_group(GTK_RADIO_BUTTON(rbutton)); |
210 rg = gtk_radio_button_get_group(GTK_RADIO_BUTTON(rbutton)); |
207 |
211 |
222 g_signal_connect( |
226 g_signal_connect( |
223 rbutton, |
227 rbutton, |
224 "clicked", |
228 "clicked", |
225 G_CALLBACK(ui_radio_obs), |
229 G_CALLBACK(ui_radio_obs), |
226 event); |
230 event); |
227 g_signal_connect( |
231 if(first) { |
|
232 g_signal_connect( |
228 rbutton, |
233 rbutton, |
229 "destroy", |
234 "destroy", |
230 G_CALLBACK(ui_destroy_vardata), |
235 G_CALLBACK(ui_destroy_vardata), |
231 event); |
236 event); |
|
237 } |
232 } |
238 } |
233 |
239 |
234 UiContainer *ct = uic_get_current_container(obj); |
240 UiContainer *ct = uic_get_current_container(obj); |
235 ct->add(ct, rbutton, FALSE); |
241 ct->add(ct, rbutton, FALSE); |
236 |
242 |