ui/motif/container.h

changeset 64
6ef2c7f73a30
parent 62
70d2aee84432
child 76
3782827378ab
--- a/ui/motif/container.h	Mon Jan 05 11:49:46 2015 +0100
+++ b/ui/motif/container.h	Mon Jan 05 14:47:19 2015 +0100
@@ -39,11 +39,12 @@
 
 #define ui_reset_layout(layout) memset(&(layout), 0, sizeof(UiLayout))
     
-typedef struct MotifTabbedPane MotifTabbedPane;
-typedef struct UiTab           UiTab;
-typedef struct UiBoxContainer  UiBoxContainer;
-typedef struct UiGridContainer UiGridContainer;
-typedef struct UiLayout        UiLayout;
+typedef struct MotifTabbedPane    MotifTabbedPane;
+typedef struct UiTab              UiTab;
+typedef struct UiBoxContainer     UiBoxContainer;
+typedef struct UiGridContainer    UiGridContainer;
+typedef struct UiTabViewContainer UiTabViewContainer;
+typedef struct UiLayout           UiLayout;
 
 typedef Widget (*ui_container_add_f)(UiContainer*, Arg*, int*, UiBool);
 
@@ -64,7 +65,8 @@
 
 struct UiLayout {
     UiLayoutBool fill;
-    UiBool newline;
+    UiBool       newline;
+    char         *label;
 };
 
 struct UiContainer {
@@ -76,15 +78,23 @@
 
 struct UiBoxContainer {
     UiContainer container;
-    Widget prev_widget;
-    UiBool has_fill;
+    Widget      prev_widget;
+    UiBool      has_fill;
     UiBoxOrientation orientation;
 };
 
 struct UiGridContainer {
     UiContainer container;
-    UcxList *lines;
-    UcxList *current;
+    UcxList     *lines;
+    UcxList     *current;
+};
+
+struct UiTabViewContainer {
+    UiContainer container;
+    UiContext   *context;
+    Widget      widget;
+    UcxList     *tabs;
+    Widget      current;
 };
 
 struct MotifTabbedPane {
@@ -113,6 +123,10 @@
 Widget ui_grid_container_prepare(UiContainer *ct, Arg *args, int *n, UiBool fill);
 void ui_grid_container_add(UiContainer *ct, Widget widget);
 
+UiContainer* ui_tabview_container(UiObject *obj, Widget rowcolumn);
+Widget ui_tabview_container_prepare(UiContainer *ct, Arg *args, int *n, UiBool fill);
+void ui_tabview_container_add(UiContainer *ct, Widget widget);
+
 void ui_tab_button_callback(Widget widget, UiTab *tab, XtPointer d);
 void ui_change_tab(MotifTabbedPane *pane, UiTab *tab);
 

mercurial