ui/ui/container.h

branch
newapi
changeset 186
5db4979bf482
parent 166
6e48030cf2db
child 187
24ce2c326d85
--- a/ui/ui/container.h	Sun Sep 24 12:03:57 2023 +0200
+++ b/ui/ui/container.h	Sun Oct 01 09:23:47 2023 +0200
@@ -34,7 +34,8 @@
 #ifdef __cplusplus
 extern "C" {
 #endif
-    
+   
+
 #define UI_CTN(obj, ctn) for(ctn;ui_container_finish(obj);ui_container_begin_close(obj))
 #define UI_VBOX(obj) for(ui_vbox(obj);ui_container_finish(obj);ui_container_begin_close(obj))
 #define UI_HBOX(obj) for(ui_hbox(obj);ui_container_finish(obj);ui_container_begin_close(obj))
@@ -43,6 +44,7 @@
 #define UI_GRID(obj) for(ui_grid(obj);ui_container_finish(obj);ui_container_begin_close(obj))
 #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))
     
+
 void ui_end(UiObject *obj);
     
 UIWIDGET ui_vbox(UiObject *obj);
@@ -70,7 +72,9 @@
 void ui_layout_hexpand(UiObject *obj, UiBool expand);
 void ui_layout_vexpand(UiObject *obj, UiBool expand);
 void ui_layout_width(UiObject *obj, int width);
-void ui_layout_gridwidth(UiObject *obj, int width);
+void ui_layout_height(UiObject* obj, int width);
+void ui_layout_colspan(UiObject *obj, int cols);
+void ui_layout_rowspan(UiObject* obj, int rows);
 void ui_newline(UiObject *obj);
 
 
@@ -83,6 +87,13 @@
 void ui_container_begin_close(UiObject *obj);
 int ui_container_finish(UiObject *obj);
 
+#define UI_APPLY_LAYOUT1(obj, args) \
+    if(args.fill != UI_DEFAULT) ui_layout_fill(obj, args.fill == UI_ON ? 1 : 0 ); \
+    if(args.hexpand) ui_layout_hexpand(obj, 1); \
+    if(args.vexpand) ui_layout_vexpand(obj, 1); \
+    if(args.colspan > 0) ui_layout_colspan(obj, args.colspan); \
+    if(args.rowspan > 0) ui_layout_rowspan(obj, args.rowspan);
+
 
 #ifdef __cplusplus
 }

mercurial