57 GtkWidget* ui_create_button( |
57 GtkWidget* ui_create_button( |
58 UiObject *obj, |
58 UiObject *obj, |
59 const char *label, |
59 const char *label, |
60 const char *icon, |
60 const char *icon, |
61 ui_callback onclick, |
61 ui_callback onclick, |
62 void *userdata) |
62 void *userdata, |
|
63 int event_value) |
63 { |
64 { |
64 GtkWidget *button = gtk_button_new_with_label(label); |
65 GtkWidget *button = gtk_button_new_with_label(label); |
65 ui_button_set_icon_name(button, icon); |
66 ui_button_set_icon_name(button, icon); |
66 |
67 |
67 if(onclick) { |
68 if(onclick) { |
68 UiEventData *event = malloc(sizeof(UiEventData)); |
69 UiEventData *event = malloc(sizeof(UiEventData)); |
69 event->obj = obj; |
70 event->obj = obj; |
70 event->userdata = userdata; |
71 event->userdata = userdata; |
71 event->callback = onclick; |
72 event->callback = onclick; |
72 event->value = 0; |
73 event->value = event_value; |
73 event->customdata = NULL; |
74 event->customdata = NULL; |
74 |
75 |
75 g_signal_connect( |
76 g_signal_connect( |
76 button, |
77 button, |
77 "clicked", |
78 "clicked", |
87 return button; |
88 return button; |
88 } |
89 } |
89 |
90 |
90 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs args) { |
91 UIWIDGET ui_button_create(UiObject *obj, UiButtonArgs args) { |
91 UiObject* current = uic_current_obj(obj); |
92 UiObject* current = uic_current_obj(obj); |
92 GtkWidget *button = ui_create_button(obj, args.label, args.icon, args.onclick, args.onclickdata); |
93 GtkWidget *button = ui_create_button(obj, args.label, args.icon, args.onclick, args.onclickdata, 0); |
93 ui_set_name_and_style(button, args.name, args.style_class); |
94 ui_set_name_and_style(button, args.name, args.style_class); |
94 ui_set_widget_groups(obj->ctx, button, args.groups); |
95 ui_set_widget_groups(obj->ctx, button, args.groups); |
95 UI_APPLY_LAYOUT1(current, args); |
96 UI_APPLY_LAYOUT1(current, args); |
96 current->container->add(current->container, button, FALSE); |
97 current->container->add(current->container, button, FALSE); |
97 return button; |
98 return button; |