ui/gtk/widget.c

changeset 112
c3f2f16fa4b8
parent 108
77254bd6dccb
equal deleted inserted replaced
111:81c4f73236a4 112:c3f2f16fa4b8
30 #include "container.h" 30 #include "container.h"
31 31
32 #include "../common/object.h" 32 #include "../common/object.h"
33 33
34 UIEXPORT UIWIDGET ui_customwidget_create(UiObject *obj, ui_createwidget_func create_widget, void *userdata, UiWidgetArgs *args) { 34 UIEXPORT UIWIDGET ui_customwidget_create(UiObject *obj, ui_createwidget_func create_widget, void *userdata, UiWidgetArgs *args) {
35 UiObject* current = uic_current_obj(obj);
36
37 UIWIDGET widget = create_widget(obj, args, userdata); 35 UIWIDGET widget = create_widget(obj, args, userdata);
38 36
39 UI_APPLY_LAYOUT2(current, args); 37 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end;
40 current->container->add(current->container, widget); 38 UiLayout layout = UI_ARGS2LAYOUT(args);
39 ct->add(ct, widget, &layout);
41 40
42 return widget; 41 return widget;
43 } 42 }
44 43
45 UIWIDGET ui_separator_create(UiObject *obj, UiWidgetArgs *args) { 44 UIWIDGET ui_separator_create(UiObject *obj, UiWidgetArgs *args) {
46 UiObject* current = uic_current_obj(obj);
47 GtkWidget *widget = gtk_separator_new(GTK_ORIENTATION_HORIZONTAL); 45 GtkWidget *widget = gtk_separator_new(GTK_ORIENTATION_HORIZONTAL);
48 ui_set_name_and_style(widget, args->name, args->style_class); 46 ui_set_name_and_style(widget, args->name, args->style_class);
49 UI_APPLY_LAYOUT1(current, (*args)); 47 UiContainerPrivate *ct = (UiContainerPrivate*)obj->container_end;
50 current->container->add(current->container, widget); 48 UiLayout layout = UI_ARGS2LAYOUT(args);
49 ct->add(ct, widget, &layout);
51 return widget; 50 return widget;
52 } 51 }
53 52
54 void ui_widget_set_size(UIWIDGET w, int width, int height) { 53 void ui_widget_set_size(UIWIDGET w, int width, int height) {
55 gtk_widget_set_size_request(w, width, height); 54 gtk_widget_set_size_request(w, width, height);

mercurial