Switched to QTabBar to allow bettery layouts
authorKaj Wallin <kaj.wallin@ixonos.com>
Tue, 30 Mar 2010 07:15:01 +0000 (10:15 +0300)
committerKaj Wallin <kaj.wallin@ixonos.com>
Tue, 30 Mar 2010 07:15:01 +0000 (10:15 +0300)
src/ui/mainwindow.cpp
src/ui/mainwindow.h

index f889552..882b082 100644 (file)
@@ -30,7 +30,14 @@ MainWindow::MainWindow(QWidget *parent)
     setCentralWidget(widget);
     createViews();
 
+    QHBoxLayout *tabsLayout = new QHBoxLayout;
+    QLabel *tabFieldLabel = new QLabel;
+    tabFieldLabel->setText(tr("This is TabBar label"));
+    tabsLayout->addWidget(situareTabs);
+    tabsLayout->addWidget(tabFieldLabel);
+
     QVBoxLayout *mainLayout = new QVBoxLayout;
+    mainLayout->addLayout(tabsLayout);
     mainLayout->addWidget(situareViews);
     widget->setLayout(mainLayout);
 
@@ -44,9 +51,14 @@ MainWindow::~MainWindow()
 
 void MainWindow::createViews()
 {
-    situareViews = new QTabWidget(this);
-    situareViews->addTab(new SituareListView(this), tr("List"));
-    situareViews->addTab(new SituareMapView(this), tr("Map"));
+    situareViews = new QStackedWidget(this);
+    situareViews->addWidget(new SituareListView(this));
+    situareViews->addWidget(new SituareMapView(this));
+
+    situareTabs = new QTabBar(this);
+    situareTabs->addTab(tr("List"));
+    situareTabs->addTab(tr("Map"));
+    connect(situareTabs, SIGNAL(currentChanged(int)), situareViews, SLOT(setCurrentIndex(int)));
 }
 
 SituareListView::SituareListView(QWidget *parent)
index 6cddb47..80e2df7 100644 (file)
@@ -28,8 +28,9 @@
 
 class QMenu;
 class QAction;
-class QTabWidget;
+class QTabBar;
 class QLabel;
+class QStackedWidget;
 
 /**
 * @Main Window Class
@@ -58,7 +59,9 @@ private:
     *
     * @var situareViews
     */
-    QTabWidget *situareViews;
+    QStackedWidget *situareViews;
+
+    QTabBar *situareTabs;
 
     /**
     * @brief DUMMY LABEL, REMOVE WHEN BOTH VIEWS ARE COMPLETE