ui/ui/container.h

branch
newapi
changeset 186
5db4979bf482
parent 166
6e48030cf2db
child 187
24ce2c326d85
equal deleted inserted replaced
185:4a8b1a748f09 186:5db4979bf482
32 #include "toolkit.h" 32 #include "toolkit.h"
33 33
34 #ifdef __cplusplus 34 #ifdef __cplusplus
35 extern "C" { 35 extern "C" {
36 #endif 36 #endif
37 37
38
38 #define UI_CTN(obj, ctn) for(ctn;ui_container_finish(obj);ui_container_begin_close(obj)) 39 #define UI_CTN(obj, ctn) for(ctn;ui_container_finish(obj);ui_container_begin_close(obj))
39 #define UI_VBOX(obj) for(ui_vbox(obj);ui_container_finish(obj);ui_container_begin_close(obj)) 40 #define UI_VBOX(obj) for(ui_vbox(obj);ui_container_finish(obj);ui_container_begin_close(obj))
40 #define UI_HBOX(obj) for(ui_hbox(obj);ui_container_finish(obj);ui_container_begin_close(obj)) 41 #define UI_HBOX(obj) for(ui_hbox(obj);ui_container_finish(obj);ui_container_begin_close(obj))
41 #define UI_VBOX_SP(obj, margin, spacing) for(ui_vbox_sp(obj,margin,spacing);ui_container_finish(obj);ui_container_begin_close(obj)) 42 #define UI_VBOX_SP(obj, margin, spacing) for(ui_vbox_sp(obj,margin,spacing);ui_container_finish(obj);ui_container_begin_close(obj))
42 #define UI_HBOX_SP(obj, margin, spacing) for(ui_hbox_sp(obj,margin,spacing);ui_container_finish(obj);ui_container_begin_close(obj)) 43 #define UI_HBOX_SP(obj, margin, spacing) for(ui_hbox_sp(obj,margin,spacing);ui_container_finish(obj);ui_container_begin_close(obj))
43 #define UI_GRID(obj) for(ui_grid(obj);ui_container_finish(obj);ui_container_begin_close(obj)) 44 #define UI_GRID(obj) for(ui_grid(obj);ui_container_finish(obj);ui_container_begin_close(obj))
44 #define UI_GRID_SP(obj, margin, columnspacing, rowspacing) for(ui_grid_sp(obj,margin,columnspacing,rowspacing);ui_container_finish(obj);ui_container_begin_close(obj)) 45 #define UI_GRID_SP(obj, margin, columnspacing, rowspacing) for(ui_grid_sp(obj,margin,columnspacing,rowspacing);ui_container_finish(obj);ui_container_begin_close(obj))
45 46
47
46 void ui_end(UiObject *obj); 48 void ui_end(UiObject *obj);
47 49
48 UIWIDGET ui_vbox(UiObject *obj); 50 UIWIDGET ui_vbox(UiObject *obj);
49 UIWIDGET ui_hbox(UiObject *obj); 51 UIWIDGET ui_hbox(UiObject *obj);
50 UIWIDGET ui_vbox_sp(UiObject *obj, int margin, int spacing); 52 UIWIDGET ui_vbox_sp(UiObject *obj, int margin, int spacing);
68 void ui_layout_fill(UiObject *obj, UiBool fill); 70 void ui_layout_fill(UiObject *obj, UiBool fill);
69 // grid container layout functions 71 // grid container layout functions
70 void ui_layout_hexpand(UiObject *obj, UiBool expand); 72 void ui_layout_hexpand(UiObject *obj, UiBool expand);
71 void ui_layout_vexpand(UiObject *obj, UiBool expand); 73 void ui_layout_vexpand(UiObject *obj, UiBool expand);
72 void ui_layout_width(UiObject *obj, int width); 74 void ui_layout_width(UiObject *obj, int width);
73 void ui_layout_gridwidth(UiObject *obj, int width); 75 void ui_layout_height(UiObject* obj, int width);
76 void ui_layout_colspan(UiObject *obj, int cols);
77 void ui_layout_rowspan(UiObject* obj, int rows);
74 void ui_newline(UiObject *obj); 78 void ui_newline(UiObject *obj);
75 79
76 80
77 UiTabbedPane* ui_tabbed_document_view(UiObject *obj); 81 UiTabbedPane* ui_tabbed_document_view(UiObject *obj);
78 82
81 85
82 /* used for macro */ 86 /* used for macro */
83 void ui_container_begin_close(UiObject *obj); 87 void ui_container_begin_close(UiObject *obj);
84 int ui_container_finish(UiObject *obj); 88 int ui_container_finish(UiObject *obj);
85 89
90 #define UI_APPLY_LAYOUT1(obj, args) \
91 if(args.fill != UI_DEFAULT) ui_layout_fill(obj, args.fill == UI_ON ? 1 : 0 ); \
92 if(args.hexpand) ui_layout_hexpand(obj, 1); \
93 if(args.vexpand) ui_layout_vexpand(obj, 1); \
94 if(args.colspan > 0) ui_layout_colspan(obj, args.colspan); \
95 if(args.rowspan > 0) ui_layout_rowspan(obj, args.rowspan);
96
86 97
87 #ifdef __cplusplus 98 #ifdef __cplusplus
88 } 99 }
89 #endif 100 #endif
90 101

mercurial