From 57388ac8963707e65313fc8789647e6de67effd3 Mon Sep 17 00:00:00 2001 From: Felix Geyer Date: Mon, 26 Dec 2011 18:55:50 +0100 Subject: Add UI as a member variable instead of inheriting it. --- src/gui/MainWindow.cpp | 34 ++++++++++++++++++++-------------- src/gui/MainWindow.h | 11 +++++++++-- 2 files changed, 29 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index 813e400cc..550789d3b 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -16,6 +16,7 @@ */ #include "MainWindow.h" +#include "ui_MainWindow.h" #include "core/Database.h" #include "core/Metadata.h" @@ -23,28 +24,33 @@ #include "gui/DatabaseWidget.h" MainWindow::MainWindow() + : m_ui(new Ui::MainWindow()) { - setupUi(this); + m_ui->setupUi(this); - m_dbManager = new DatabaseManager(tabWidget); + m_dbManager = new DatabaseManager(m_ui->tabWidget); - connect(tabWidget, SIGNAL(currentChanged(int)), SLOT(currentTabChanged(int))); + connect(m_ui->tabWidget, SIGNAL(currentChanged(int)), SLOT(currentTabChanged(int))); - connect(actionDatabaseNew, SIGNAL(triggered()), m_dbManager, SLOT(newDatabase())); - connect(actionDatabaseOpen, SIGNAL(triggered()), m_dbManager, SLOT(openDatabase())); - connect(actionDatabaseSave, SIGNAL(triggered()), m_dbManager, SLOT(saveDatabase())); - connect(actionDatabaseSaveAs, SIGNAL(triggered()), m_dbManager, SLOT(saveDatabaseAs())); - connect(actionDatabaseClose, SIGNAL(triggered()), m_dbManager, SLOT(closeDatabase())); - connect(actionQuit, SIGNAL(triggered()), SLOT(close())); + connect(m_ui->actionDatabaseNew, SIGNAL(triggered()), m_dbManager, SLOT(newDatabase())); + connect(m_ui->actionDatabaseOpen, SIGNAL(triggered()), m_dbManager, SLOT(openDatabase())); + connect(m_ui->actionDatabaseSave, SIGNAL(triggered()), m_dbManager, SLOT(saveDatabase())); + connect(m_ui->actionDatabaseSaveAs, SIGNAL(triggered()), m_dbManager, SLOT(saveDatabaseAs())); + connect(m_ui->actionDatabaseClose, SIGNAL(triggered()), m_dbManager, SLOT(closeDatabase())); + connect(m_ui->actionQuit, SIGNAL(triggered()), SLOT(close())); +} + +MainWindow::~MainWindow() +{ } void MainWindow::currentTabChanged(int index) { bool hasTab = (index != -1); - actionDatabaseSave->setEnabled(hasTab); - actionDatabaseSaveAs->setEnabled(hasTab); - actionDatabaseClose->setEnabled(hasTab); - actionEntryNew->setEnabled(hasTab); - actionGroupNew->setEnabled(hasTab); + m_ui->actionDatabaseSave->setEnabled(hasTab); + m_ui->actionDatabaseSaveAs->setEnabled(hasTab); + m_ui->actionDatabaseClose->setEnabled(hasTab); + m_ui->actionEntryNew->setEnabled(hasTab); + m_ui->actionGroupNew->setEnabled(hasTab); } diff --git a/src/gui/MainWindow.h b/src/gui/MainWindow.h index 253b5db88..2f20fd230 100644 --- a/src/gui/MainWindow.h +++ b/src/gui/MainWindow.h @@ -18,23 +18,30 @@ #ifndef KEEPASSX_MAINWINDOW_H #define KEEPASSX_MAINWINDOW_H -#include "ui_MainWindow.h" +#include class Database; class DatabaseManager; +namespace Ui { + class MainWindow; +} -class MainWindow : public QMainWindow, private Ui::MainWindow +class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(); + ~MainWindow(); private Q_SLOTS: void currentTabChanged(int index); private: + QScopedPointer m_ui; DatabaseManager* m_dbManager; + + Q_DISABLE_COPY(MainWindow) }; #endif // KEEPASSX_MAINWINDOW_H -- cgit v1.2.3