ui/qt/container.cpp

changeset 130
212b63dd61be
parent 110
36f1581b43e2
--- a/ui/qt/container.cpp	Sat Sep 17 19:57:55 2016 +0200
+++ b/ui/qt/container.cpp	Sun Sep 18 07:45:42 2016 +0200
@@ -32,6 +32,7 @@
 #include <QSpacerItem>
 #include <QStackedWidget>
 
+
 /* -------------------- UiBoxContainer -------------------- */
 
 UiBoxContainer::UiBoxContainer(QBoxLayout* box) {
@@ -162,6 +163,9 @@
     tabwidget->addTab(widget, str);
 }
 
+
+/* -------------------- UiStackContainer -------------------- */
+
 UiStackContainer::UiStackContainer(QStackedWidget *stack) {
     this->stack = stack;
 }
@@ -196,6 +200,34 @@
 }
 
 
+/* -------------------- UiSidebarContainer -------------------- */
+
+UiSidebarContainer::UiSidebarContainer(QSplitter *splitter) {
+    this->splitter = splitter;
+}
+
+UIWIDGET ui_sidebar(UiObject *obj) {
+    QSplitter *splitter = new QSplitter(Qt::Horizontal);
+    UiContainer *ct = uic_get_current_container(obj);
+    ct->add(splitter, true);
+    
+    UiObject *left = uic_object_new(obj, splitter);
+    left->container = new UiSidebarContainer(splitter);
+    
+    UiObject *right = uic_object_new(obj, splitter);
+    right->container = new UiSidebarContainer(splitter);
+    
+    uic_obj_add(obj, right);
+    uic_obj_add(obj, left);
+    
+    return splitter;
+}
+
+void UiSidebarContainer::add(QWidget *widget, bool fill) {
+    splitter->addWidget(widget);
+}
+
+
 /* -------------------- layout functions -------------------- */
 
 void ui_layout_fill(UiObject *obj, UiBool fill) {

mercurial