ui/qt/container.cpp

changeset 516
4b31c74666d7
parent 130
212b63dd61be
child 519
8884c7fbe4cb
--- a/ui/qt/container.cpp	Wed Mar 26 20:27:20 2025 +0100
+++ b/ui/qt/container.cpp	Wed Mar 26 20:39:04 2025 +0100
@@ -33,224 +33,3 @@
 #include <QStackedWidget>
 
 
-/* -------------------- UiBoxContainer -------------------- */
-
-UiBoxContainer::UiBoxContainer(QBoxLayout* box) {
-    this->current = NULL;
-    this->menu = NULL;
-    this->box = box;
-    box->setContentsMargins(QMargins(0,0,0,0));
-    box->setSpacing(0);
-    
-    ui_reset_layout(layout);
-}
-
-void UiBoxContainer::add(QWidget* widget, bool fill) {
-    if(layout.fill != UI_LAYOUT_UNDEFINED) {
-        fill = ui_lb2bool(layout.fill);
-    }
-    
-    if(hasStretchedWidget && fill) {
-        fill = false;
-        fprintf(stderr, "UiError: container has 2 filled widgets");
-    }
-    
-    box->addWidget(widget, fill);
-    
-    if(!hasStretchedWidget) {
-        QSpacerItem *newspace = new QSpacerItem(0, 0, QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
-        box->removeItem(space);
-        box->addSpacerItem(newspace);
-        space = newspace; 
-    }
-    
-    if(fill) {
-        hasStretchedWidget = true;
-    }
-    ui_reset_layout(layout);
-    current = widget;
-}
-
-UIWIDGET ui_box(UiObject *obj, QBoxLayout::Direction dir) {
-    UiContainer *ct = uic_get_current_container(obj);
-    QWidget *widget = new QWidget();
-    QBoxLayout *box = new QBoxLayout(dir);
-    widget->setLayout(box);
-    ct->add(widget, true);
-    
-    UiObject *newobj = uic_object_new(obj, widget);
-    newobj->container = new UiBoxContainer(box);
-    uic_obj_add(obj, newobj);
-    
-    return widget;
-}
-
-UIWIDGET ui_vbox(UiObject *obj) {
-    return ui_box(obj, QBoxLayout::TopToBottom);
-}
-
-UIWIDGET ui_hbox(UiObject *obj) {
-    return ui_box(obj, QBoxLayout::LeftToRight);
-}
-
-
-
-/* -------------------- UiGridContainer -------------------- */
-
-UiGridContainer::UiGridContainer(QGridLayout* grid, int margin, int columnspacing, int rowspacing) {
-    this->current = NULL;
-    this->menu = NULL;
-    this->grid = grid;
-    grid->setContentsMargins(QMargins(margin, margin, margin, margin));
-    grid->setHorizontalSpacing(columnspacing);
-    grid->setVerticalSpacing(rowspacing);
-    ui_reset_layout(layout);
-}
-
-void UiGridContainer::add(QWidget* widget, bool fill) {
-    if(layout.newline) {
-        x = 0;
-        y++;
-    }
-    
-    Qt::Alignment alignment = Qt::AlignTop;
-    grid->setColumnStretch(x, layout.hexpand ? 1 : 0);
-    if(layout.vexpand) {
-        grid->setRowStretch(y, 1);
-        alignment = 0;
-    } else {
-        grid->setRowStretch(y, 0);
-    }
-    
-    int gwidth = layout.gridwidth > 0 ? layout.gridwidth : 1;
-    
-    grid->addWidget(widget, y, x, 1, gwidth, alignment);
-    x += gwidth;
-    
-    ui_reset_layout(layout);
-    current = widget;
-}
-
-UIWIDGET ui_grid(UiObject *obj) {
-    return ui_grid_sp(obj, 0, 0, 0);
-}
-
-UIWIDGET ui_grid_sp(UiObject *obj, int margin, int columnspacing, int rowspacing) {
-    UiContainer *ct = uic_get_current_container(obj);
-    QWidget *widget = new QWidget();
-    QGridLayout *grid = new QGridLayout();
-    widget->setLayout(grid);
-    ct->add(widget, true);
-    
-    UiObject *newobj = uic_object_new(obj, widget);
-    newobj->container = new UiGridContainer(grid, margin, columnspacing, rowspacing);
-    uic_obj_add(obj, newobj);
-    
-    return widget;
-}
-
-
-/* -------------------- UiTabViewContainer -------------------- */
-
-UiTabViewContainer::UiTabViewContainer(QTabWidget* tabwidget) {
-    this->current = NULL;
-    this->menu = NULL;
-    this->tabwidget = tabwidget;
-}
-
-void UiTabViewContainer::add(QWidget* widget, bool fill) {
-    QString str = QString::fromUtf8(layout.label);
-    tabwidget->addTab(widget, str);
-}
-
-
-/* -------------------- UiStackContainer -------------------- */
-
-UiStackContainer::UiStackContainer(QStackedWidget *stack) {
-    this->stack = stack;
-}
-
-void UiStackContainer::add(QWidget* widget, bool fill) {
-    stack->addWidget(widget);
-    current = widget;
-}
-
-UIWIDGET ui_tabview(UiObject *obj) {
-    QStackedWidget *tabwidget = new QStackedWidget();
-    
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->add(tabwidget, true);
-    
-    UiObject *tabviewobj = uic_object_new(obj, tabwidget);
-    tabviewobj->container = new UiStackContainer(tabwidget);
-    uic_obj_add(obj, tabviewobj);
-    
-    return tabwidget;
-}
-
-void ui_tab(UiObject *obj, char *title) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.label = title;
-    ui_vbox(obj);
-}
-
-void ui_select_tab(UIWIDGET tabview, int tab) {
-    QStackedWidget *w = (QStackedWidget*)tabview;
-    w->setCurrentIndex(tab);
-}
-
-
-/* -------------------- 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) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.fill = ui_bool2lb(fill);
-}
-
-void ui_layout_hexpand(UiObject *obj, UiBool expand) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.hexpand = expand;
-}
-
-void ui_layout_vexpand(UiObject *obj, UiBool expand) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.vexpand = expand;
-}
-
-void ui_layout_gridwidth(UiObject *obj, int width) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.gridwidth = width;
-}
-
-void ui_newline(UiObject *obj) {
-    UiContainer *ct = uic_get_current_container(obj);
-    ct->layout.newline = TRUE;
-}

mercurial