From b8bad8412fb81519640e670f67c610f530011c78 Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Sun, 9 Feb 2014 02:17:14 +0100 Subject: regtools/qeditor: clean-up Free the backend when closing a tab to release some memory. Implement about dialogs. Change-Id: Ic8c500a23d38e6c3dd4de6a4ba862012925968be --- utils/regtools/qeditor/mainwindow.cpp | 11 ++++++++++- utils/regtools/qeditor/mainwindow.h | 1 + utils/regtools/qeditor/regtab.cpp | 5 +++++ utils/regtools/qeditor/regtab.h | 1 + 4 files changed, 17 insertions(+), 1 deletion(-) (limited to 'utils') diff --git a/utils/regtools/qeditor/mainwindow.cpp b/utils/regtools/qeditor/mainwindow.cpp index a57ecfb9c1..2ba781b042 100644 --- a/utils/regtools/qeditor/mainwindow.cpp +++ b/utils/regtools/qeditor/mainwindow.cpp @@ -34,11 +34,13 @@ MainWindow::MainWindow(Backend *backend) QAction *load_desc_act = new QAction(QIcon::fromTheme("document-open"), tr("&Soc Description"), this); QAction *quit_act = new QAction(QIcon::fromTheme("application-exit"), tr("&Quit"), this); QAction *about_act = new QAction(QIcon::fromTheme("help-about"), tr("&About"), this); + QAction *about_qt_act = new QAction(QIcon::fromTheme("help-about"), tr("About &Qt"), this); connect(new_regtab_act, SIGNAL(triggered()), this, SLOT(OnNewRegTab())); connect(load_desc_act, SIGNAL(triggered()), this, SLOT(OnLoadDesc())); connect(quit_act, SIGNAL(triggered()), this, SLOT(OnQuit())); connect(about_act, SIGNAL(triggered()), this, SLOT(OnAbout())); + connect(about_qt_act, SIGNAL(triggered()), this, SLOT(OnAboutQt())); QMenu *file_menu = menuBar()->addMenu(tr("&File")); QMenu *new_submenu = file_menu->addMenu(QIcon::fromTheme("document-new"), "&New"); @@ -51,6 +53,7 @@ MainWindow::MainWindow(Backend *backend) QMenu *about_menu = menuBar()->addMenu(tr("&About")); about_menu->addAction(about_act); + about_menu->addAction(about_qt_act); m_tab = new MyTabWidget(); @@ -73,11 +76,17 @@ void MainWindow::WriteSettings() void MainWindow::OnQuit() { - WriteSettings(); + close(); } void MainWindow::OnAbout() { + QMessageBox::about(this, "About", "Written by Amaury Pouly for Rockbox"); +} + +void MainWindow::OnAboutQt() +{ + QMessageBox::aboutQt(this); } void MainWindow::closeEvent(QCloseEvent *event) diff --git a/utils/regtools/qeditor/mainwindow.h b/utils/regtools/qeditor/mainwindow.h index 2897cde1ca..d7dab3717f 100644 --- a/utils/regtools/qeditor/mainwindow.h +++ b/utils/regtools/qeditor/mainwindow.h @@ -33,6 +33,7 @@ private: private slots: void OnQuit(); void OnAbout(); + void OnAboutQt(); void OnLoadDesc(); void OnNewRegTab(); diff --git a/utils/regtools/qeditor/regtab.cpp b/utils/regtools/qeditor/regtab.cpp index 1e9846ef33..8403a19ea1 100644 --- a/utils/regtools/qeditor/regtab.cpp +++ b/utils/regtools/qeditor/regtab.cpp @@ -204,6 +204,11 @@ RegTab::RegTab(Backend *backend) OnDataSelChanged(DataSelNothing); } +RegTab::~RegTab() +{ + delete m_io_backend; +} + void RegTab::SetDataSocName(const QString& socname) { if(socname.size() != 0) diff --git a/utils/regtools/qeditor/regtab.h b/utils/regtools/qeditor/regtab.h index 72f00a31a2..8afa21c346 100644 --- a/utils/regtools/qeditor/regtab.h +++ b/utils/regtools/qeditor/regtab.h @@ -76,6 +76,7 @@ class RegTab : public QSplitter Q_OBJECT public: RegTab(Backend *backend); + ~RegTab(); protected: void FillDevSubTree(DevTreeItem *item); -- cgit v1.2.3