30 #include "container.h" |
30 #include "container.h" |
31 |
31 |
32 #include <QSpacerItem> |
32 #include <QSpacerItem> |
33 #include <QStackedWidget> |
33 #include <QStackedWidget> |
34 |
34 |
|
35 |
35 /* -------------------- UiBoxContainer -------------------- */ |
36 /* -------------------- UiBoxContainer -------------------- */ |
36 |
37 |
37 UiBoxContainer::UiBoxContainer(QBoxLayout* box) { |
38 UiBoxContainer::UiBoxContainer(QBoxLayout* box) { |
38 this->current = NULL; |
39 this->current = NULL; |
39 this->menu = NULL; |
40 this->menu = NULL; |
160 void UiTabViewContainer::add(QWidget* widget, bool fill) { |
161 void UiTabViewContainer::add(QWidget* widget, bool fill) { |
161 QString str = QString::fromUtf8(layout.label); |
162 QString str = QString::fromUtf8(layout.label); |
162 tabwidget->addTab(widget, str); |
163 tabwidget->addTab(widget, str); |
163 } |
164 } |
164 |
165 |
|
166 |
|
167 /* -------------------- UiStackContainer -------------------- */ |
|
168 |
165 UiStackContainer::UiStackContainer(QStackedWidget *stack) { |
169 UiStackContainer::UiStackContainer(QStackedWidget *stack) { |
166 this->stack = stack; |
170 this->stack = stack; |
167 } |
171 } |
168 |
172 |
169 void UiStackContainer::add(QWidget* widget, bool fill) { |
173 void UiStackContainer::add(QWidget* widget, bool fill) { |
194 QStackedWidget *w = (QStackedWidget*)tabview; |
198 QStackedWidget *w = (QStackedWidget*)tabview; |
195 w->setCurrentIndex(tab); |
199 w->setCurrentIndex(tab); |
196 } |
200 } |
197 |
201 |
198 |
202 |
|
203 /* -------------------- UiSidebarContainer -------------------- */ |
|
204 |
|
205 UiSidebarContainer::UiSidebarContainer(QSplitter *splitter) { |
|
206 this->splitter = splitter; |
|
207 } |
|
208 |
|
209 UIWIDGET ui_sidebar(UiObject *obj) { |
|
210 QSplitter *splitter = new QSplitter(Qt::Horizontal); |
|
211 UiContainer *ct = uic_get_current_container(obj); |
|
212 ct->add(splitter, true); |
|
213 |
|
214 UiObject *left = uic_object_new(obj, splitter); |
|
215 left->container = new UiSidebarContainer(splitter); |
|
216 |
|
217 UiObject *right = uic_object_new(obj, splitter); |
|
218 right->container = new UiSidebarContainer(splitter); |
|
219 |
|
220 uic_obj_add(obj, right); |
|
221 uic_obj_add(obj, left); |
|
222 |
|
223 return splitter; |
|
224 } |
|
225 |
|
226 void UiSidebarContainer::add(QWidget *widget, bool fill) { |
|
227 splitter->addWidget(widget); |
|
228 } |
|
229 |
|
230 |
199 /* -------------------- layout functions -------------------- */ |
231 /* -------------------- layout functions -------------------- */ |
200 |
232 |
201 void ui_layout_fill(UiObject *obj, UiBool fill) { |
233 void ui_layout_fill(UiObject *obj, UiBool fill) { |
202 UiContainer *ct = uic_get_current_container(obj); |
234 UiContainer *ct = uic_get_current_container(obj); |
203 ct->layout.fill = ui_bool2lb(fill); |
235 ct->layout.fill = ui_bool2lb(fill); |