ui/ui/container.h

branch
newapi
changeset 195
0f2e69873875
parent 194
e2281ace0769
child 198
f2332d0d3318
equal deleted inserted replaced
194:e2281ace0769 195:0f2e69873875
33 33
34 #ifdef __cplusplus 34 #ifdef __cplusplus
35 extern "C" { 35 extern "C" {
36 #endif 36 #endif
37 37
38 typedef enum UiSubContainerType {
39 UI_CONTAINER_VBOX = 0,
40 UI_CONTAINER_HBOX,
41 UI_CONTAINER_GRID
42 } UiSubContainerType;
43
38 typedef struct UiContainerArgs { 44 typedef struct UiContainerArgs {
39 UiTri fill; 45 UiTri fill;
40 UiBool hexpand; 46 UiBool hexpand;
41 UiBool vexpand; 47 UiBool vexpand;
42 int colspan; 48 int colspan;
53 UiBool hexpand; 59 UiBool hexpand;
54 UiBool vexpand; 60 UiBool vexpand;
55 int colspan; 61 int colspan;
56 int rowspan; 62 int rowspan;
57 63
64 UiSubContainerType subcontainer;
65
66 int margin;
67 int spacing;
68 int columnspacing;
69 int rowspacing;
70
58 const char* label; 71 const char* label;
72 UiBool isexpanded;
59 } UiFrameArgs; 73 } UiFrameArgs;
74
60 75
61 #define UI_CTN(obj, ctn) for(ctn;ui_container_finish(obj);ui_container_begin_close(obj)) 76 #define UI_CTN(obj, ctn) for(ctn;ui_container_finish(obj);ui_container_begin_close(obj))
62 77
63 #define ui_vbox(obj, ...) for(ui_vbox_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj)) 78 #define ui_vbox(obj, ...) for(ui_vbox_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
64 #define ui_hbox(obj, ...) for(ui_hbox_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj)) 79 #define ui_hbox(obj, ...) for(ui_hbox_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
65 #define ui_grid(obj, ...) for(ui_grid_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj)) 80 #define ui_grid(obj, ...) for(ui_grid_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
66 #define ui_frame(obj, ...) for(ui_frame_create(obj, (UiFrameArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj)) 81 #define ui_frame(obj, ...) for(ui_frame_create(obj, (UiFrameArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
67 #define ui_scrolledwindow(obj, ...) for(ui_scrolledwindow_create(obj, (UiContainerArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj)) 82 #define ui_expander(obj, ...) for(ui_expander_create(obj, (UiFrameArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
83 #define ui_scrolledwindow(obj, ...) for(ui_scrolledwindow_create(obj, (UiFrameArgs){ __VA_ARGS__ });ui_container_finish(obj);ui_container_begin_close(obj))
68 84
69 #define ui_vbox0(obj) for(ui_vbox_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj)) 85 #define ui_vbox0(obj) for(ui_vbox_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
70 #define ui_hbox0(obj) for(ui_hbox_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj)) 86 #define ui_hbox0(obj) for(ui_hbox_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
71 #define ui_grid0(obj) for(ui_grid_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj)) 87 #define ui_grid0(obj) for(ui_grid_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
72 #define ui_frame0(obj) for(ui_frame_create(obj, (UiFrameArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj)) 88 #define ui_frame0(obj) for(ui_frame_create(obj, (UiFrameArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
73 #define ui_scrolledwindow0(obj) for(ui_scrolledwindow_create(obj, (UiContainerArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj)) 89 #define ui_expander0(obj) for(ui_expande_create(obj, (UiFrameArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
90 #define ui_scrolledwindow0(obj) for(ui_scrolledwindow_create(obj, (UiFrameArgs){ 0 });ui_container_finish(obj);ui_container_begin_close(obj))
74 91
75 void ui_end(UiObject *obj); 92 void ui_end(UiObject *obj);
76 93
77 UIWIDGET ui_vbox_create(UiObject *obj, UiContainerArgs args); 94 UIWIDGET ui_vbox_create(UiObject *obj, UiContainerArgs args);
78 UIWIDGET ui_hbox_create(UiObject *obj, UiContainerArgs args); 95 UIWIDGET ui_hbox_create(UiObject *obj, UiContainerArgs args);
79 UIWIDGET ui_grid_create(UiObject *obj, UiContainerArgs args); 96 UIWIDGET ui_grid_create(UiObject *obj, UiContainerArgs args);
80 UIWIDGET ui_frame_create(UiObject* obj, UiFrameArgs args); 97 UIWIDGET ui_frame_create(UiObject* obj, UiFrameArgs args);
81 UIWIDGET ui_scrolledwindow_create(UiObject* obj, UiContainerArgs args); 98 UIWIDGET ui_expander_create(UiObject* obj, UiFrameArgs args);
99 UIWIDGET ui_scrolledwindow_create(UiObject* obj, UiFrameArgs args);
82 100
83 101
84 UIWIDGET ui_scrolledwindow_deprecated(UiObject *obj); 102 UIWIDGET ui_scrolledwindow_deprecated(UiObject *obj);
85 103
86 UIWIDGET ui_sidebar(UiObject *obj); 104 UIWIDGET ui_sidebar(UiObject *obj);

mercurial