More code clean-ups mainly regarding static instance() member.

br, Boris..
From 4535eeb65e2aad9e7ae7dda86fc7b52eb2b1c322 Mon Sep 17 00:00:00 2001
From: Boris Barbulovski <[email protected]>
Date: Sat, 8 Feb 2014 20:12:13 +0100
Subject: [PATCH 1/4] PrintDialog class cleanup.

* Remove static PrintDialog::instance() method
* Remove void PrintDialog::runDialog() method
* construct/destruct print dialog on demand
---
 qt-ui/mainwindow.cpp  |  4 +++-
 qt-ui/printdialog.cpp | 14 +-------------
 qt-ui/printdialog.h   |  4 +---
 3 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 73191da..0cafa08 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -211,7 +211,9 @@ void MainWindow::on_actionExportUDDF_triggered()
 
 void MainWindow::on_actionPrint_triggered()
 {
-	PrintDialog::instance()->runDialog();
+	PrintDialog dlg(this);
+
+	dlg.exec();
 }
 
 void MainWindow::disableDcShortcuts()
diff --git a/qt-ui/printdialog.cpp b/qt-ui/printdialog.cpp
index e029ff0..ba96ccc 100644
--- a/qt-ui/printdialog.cpp
+++ b/qt-ui/printdialog.cpp
@@ -11,13 +11,6 @@
 #include <QPrintPreviewDialog>
 #include <QPrintDialog>
 
-PrintDialog *PrintDialog::instance()
-{
-	static PrintDialog *self = new PrintDialog(mainWindow());
-	self->setAttribute(Qt::WA_QuitOnClose, false);
-	return self;
-}
-
 PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
 {
 	// options template (are we storing these in the settings?)
@@ -52,6 +45,7 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
 	connect(printLayout, SIGNAL(signalProgress(int)), progressBar, SLOT(setValue(int)));
 	progressBar->setMinimum(0);
 	progressBar->setMaximum(100);
+	progressBar->setValue(0);
 	progressBar->setTextVisible(false);
 	layout->addWidget(progressBar);
 
@@ -62,12 +56,6 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
 	setWindowIcon(QIcon(":subsurface-icon"));
 }
 
-void PrintDialog::runDialog()
-{
-	progressBar->setValue(0);
-	exec();
-}
-
 void PrintDialog::previewClicked(void)
 {
 	QPrintPreviewDialog previewDialog(&printer, this);
diff --git a/qt-ui/printdialog.h b/qt-ui/printdialog.h
index 44bb946..8f5edec 100644
--- a/qt-ui/printdialog.h
+++ b/qt-ui/printdialog.h
@@ -14,12 +14,10 @@ class PrintDialog : public QDialog {
 Q_OBJECT
 
 public:
-	static PrintDialog *instance();
-	void runDialog();
 	struct options printOptions;
+	explicit PrintDialog(QWidget *parent = 0, Qt::WindowFlags f = 0);
 
 private:
-	explicit PrintDialog(QWidget *parent = 0, Qt::WindowFlags f = 0);
 	PrintOptions *optionsWidget;
 	PrintLayout *printLayout;
 	QProgressBar *progressBar;
-- 
1.8.3.2

From 64e181f2798f7ea21b21bba8d9b377f15255af14 Mon Sep 17 00:00:00 2001
From: Boris Barbulovski <[email protected]>
Date: Sat, 8 Feb 2014 20:22:09 +0100
Subject: [PATCH 2/4] DownloadFromDCWidget class cleanup. * Remove static
 DownloadFromDCWidget::instance() method

---
 qt-ui/downloadfromdivecomputer.cpp | 13 -------------
 qt-ui/downloadfromdivecomputer.h   |  2 --
 qt-ui/mainwindow.cpp               |  5 +++--
 3 files changed, 3 insertions(+), 17 deletions(-)

diff --git a/qt-ui/downloadfromdivecomputer.cpp b/qt-ui/downloadfromdivecomputer.cpp
index 70ec28a..3148a56 100644
--- a/qt-ui/downloadfromdivecomputer.cpp
+++ b/qt-ui/downloadfromdivecomputer.cpp
@@ -36,13 +36,6 @@ namespace DownloadFromDcGlobal {
 	const char *err_string;
 };
 
-DownloadFromDCWidget *DownloadFromDCWidget::instance()
-{
-	static DownloadFromDCWidget *dialog = new DownloadFromDCWidget(mainWindow());
-	dialog->setAttribute(Qt::WA_QuitOnClose, false);
-	return dialog;
-}
-
 DownloadFromDCWidget::DownloadFromDCWidget(QWidget* parent, Qt::WindowFlags f) :
 	QDialog(parent, f), thread(0), timer(new QTimer(this)),
 	dumpWarningShown(false), currentState(INITIAL)
@@ -79,12 +72,6 @@ DownloadFromDCWidget::DownloadFromDCWidget(QWidget* parent, Qt::WindowFlags f) :
 	updateState(INITIAL);
 }
 
-void DownloadFromDCWidget::runDialog()
-{
-	updateState(INITIAL);
-	exec();
-}
-
 void DownloadFromDCWidget::updateProgressBar()
 {
 	if (*progress_bar_text != '\0') {
diff --git a/qt-ui/downloadfromdivecomputer.h b/qt-ui/downloadfromdivecomputer.h
index 8f1f6aa..f18170f 100644
--- a/qt-ui/downloadfromdivecomputer.h
+++ b/qt-ui/downloadfromdivecomputer.h
@@ -24,7 +24,6 @@ class DownloadFromDCWidget : public QDialog{
 	Q_OBJECT
 public:
 	explicit DownloadFromDCWidget(QWidget* parent = 0, Qt::WindowFlags f = 0);
-	static DownloadFromDCWidget *instance();
 	void reject();
 
 	enum states {
@@ -44,7 +43,6 @@ public slots:
 
 	void onDownloadThreadFinished();
 	void updateProgressBar();
-	void runDialog();
 	void checkLogFile(int state);
 	void checkDumpFile(int state);
 	void pickDumpFile();
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 0cafa08..a477bbd 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -270,8 +270,9 @@ void MainWindow::on_actionQuit_triggered()
 
 void MainWindow::on_actionDownloadDC_triggered()
 {
-	DownloadFromDCWidget* downloadWidget = DownloadFromDCWidget::instance();
-	downloadWidget->runDialog();
+	DownloadFromDCWidget dlg(this);
+
+	dlg.exec();
 }
 
 void MainWindow::on_actionDownloadWeb_triggered()
-- 
1.8.3.2

From 748c45101257ff4cc97b1c70c75d478379cbf92b Mon Sep 17 00:00:00 2001
From: Boris Barbulovski <[email protected]>
Date: Sat, 8 Feb 2014 23:56:47 +0100
Subject: [PATCH 3/4] ShiftImageTimesDialog class cleanup.

* Remove static ShiftImageTimesDialog::instance() method
* Add ShiftImageTimesDialog::amount() member
---
 qt-ui/divelistview.cpp  |  6 +++---
 qt-ui/simplewidgets.cpp | 16 ++++++++--------
 qt-ui/simplewidgets.h   |  6 +++---
 3 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/qt-ui/divelistview.cpp b/qt-ui/divelistview.cpp
index 1b19d06..50d3a8b 100644
--- a/qt-ui/divelistview.cpp
+++ b/qt-ui/divelistview.cpp
@@ -813,8 +813,8 @@ void DiveListView::loadImages()
 
 	updateLastUsedImageDir(QFileInfo(fileNames[0]).dir().path());
 
-	ShiftImageTimesDialog* shiftDialog = ShiftImageTimesDialog::instance();
-	shiftDialog->exec();
+	ShiftImageTimesDialog shiftDialog(this);
+	shiftDialog.exec();
 
 	for (int i = 0; i < fileNames.size(); ++i) {
 		struct tm tm;
@@ -829,7 +829,7 @@ void DiveListView::loadImages()
 		tm.tm_hour = hour;
 		tm.tm_min = min;
 		tm.tm_sec = sec;
-		imagetime = utc_mktime(&tm) + shiftDialog->amount;
+		imagetime = utc_mktime(&tm) + shiftDialog.amount();
 		int j = 0;
 		struct dive *dive;
 		for_each_dive(j, dive){
diff --git a/qt-ui/simplewidgets.cpp b/qt-ui/simplewidgets.cpp
index c76921c..d69425e 100644
--- a/qt-ui/simplewidgets.cpp
+++ b/qt-ui/simplewidgets.cpp
@@ -156,27 +156,27 @@ ShiftTimesDialog::ShiftTimesDialog(QWidget *parent): QDialog(parent)
 	ui.setupUi(this);
 	connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*)));
 }
-ShiftImageTimesDialog* ShiftImageTimesDialog::instance()
-{
-	static ShiftImageTimesDialog* self = new ShiftImageTimesDialog(mainWindow());
-	return self;
-}
 
 void ShiftImageTimesDialog::buttonClicked(QAbstractButton* button)
 {
 	if (ui.buttonBox->buttonRole(button) == QDialogButtonBox::AcceptRole) {
-		amount = ui.timeEdit->time().hour() * 3600 + ui.timeEdit->time().minute() * 60;
+		m_amount = ui.timeEdit->time().hour() * 3600 + ui.timeEdit->time().minute() * 60;
 		if (ui.backwards->isChecked())
-			amount *= -1;
+			m_amount *= -1;
 	}
 }
 
-ShiftImageTimesDialog::ShiftImageTimesDialog(QWidget *parent): QDialog(parent)
+ShiftImageTimesDialog::ShiftImageTimesDialog(QWidget *parent): QDialog(parent), m_amount(0)
 {
 	ui.setupUi(this);
 	connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*)));
 }
 
+int ShiftImageTimesDialog::amount() const
+{
+	return m_amount;
+}
+
 bool isGnome3Session()
 {
 #if defined(QT_OS_WIW) || defined(QT_OS_MAC)
diff --git a/qt-ui/simplewidgets.h b/qt-ui/simplewidgets.h
index b8097b5..d17bac0 100644
--- a/qt-ui/simplewidgets.h
+++ b/qt-ui/simplewidgets.h
@@ -58,13 +58,13 @@ private:
 class ShiftImageTimesDialog : public QDialog {
 	Q_OBJECT
 public:
-	static ShiftImageTimesDialog *instance();
-	int amount;
+	explicit ShiftImageTimesDialog(QWidget *parent);
+	int amount() const;
 private slots:
 	void buttonClicked(QAbstractButton *button);
 private:
-	explicit ShiftImageTimesDialog(QWidget *parent);
 	Ui::ShiftImageTimesDialog ui;
+	int m_amount;
 };
 
 bool isGnome3Session();
-- 
1.8.3.2

From 797d7103f252ca4978e3246e6bc14a5fa85e20c5 Mon Sep 17 00:00:00 2001
From: Boris Barbulovski <[email protected]>
Date: Sun, 9 Feb 2014 00:13:58 +0100
Subject: [PATCH 4/4] PrintDialog small improvements.

* Remove closeClicked() slot, and use QDialogs accept() slot
* Simplify QObject::connect call by removing the QObject scope.
---
 qt-ui/printdialog.cpp | 9 ++-------
 qt-ui/printdialog.h   | 1 -
 2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/qt-ui/printdialog.cpp b/qt-ui/printdialog.cpp
index ba96ccc..46ed261 100644
--- a/qt-ui/printdialog.cpp
+++ b/qt-ui/printdialog.cpp
@@ -38,7 +38,7 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
 	hLayout->addWidget(printButton);
 
 	QPushButton *closeButton = new QPushButton(tr("&Close"));
-	connect(closeButton, SIGNAL(clicked(bool)), this, SLOT(closeClicked()));
+	connect(closeButton, SIGNAL(clicked(bool)), this, SLOT(accept()));
 	hLayout->addWidget(closeButton);
 
 	progressBar = new QProgressBar();
@@ -59,7 +59,7 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f)
 void PrintDialog::previewClicked(void)
 {
 	QPrintPreviewDialog previewDialog(&printer, this);
-	QObject::connect(&previewDialog, SIGNAL(paintRequested(QPrinter *)), this, SLOT(onPaintRequested(QPrinter *)));
+	connect(&previewDialog, SIGNAL(paintRequested(QPrinter *)), this, SLOT(onPaintRequested(QPrinter *)));
 	previewDialog.exec();
 }
 
@@ -70,11 +70,6 @@ void PrintDialog::printClicked(void)
 		printLayout->print();
 }
 
-void PrintDialog::closeClicked(void)
-{
-	close();
-}
-
 void PrintDialog::onPaintRequested(QPrinter *printerPtr)
 {
 	printLayout->print();
diff --git a/qt-ui/printdialog.h b/qt-ui/printdialog.h
index 8f5edec..ebaea84 100644
--- a/qt-ui/printdialog.h
+++ b/qt-ui/printdialog.h
@@ -26,7 +26,6 @@ private:
 private slots:
 	void previewClicked();
 	void printClicked();
-	void closeClicked();
 	void onPaintRequested(QPrinter *);
 };
 
-- 
1.8.3.2

_______________________________________________
subsurface mailing list
[email protected]
http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to