ui/gtk/button.c

branch
newapi
changeset 344
870dd3d41d83
parent 343
54f5d7eb1335
equal deleted inserted replaced
343:54f5d7eb1335 344:870dd3d41d83
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;

mercurial