Patches for bugs
Dirk Hohndel
dirk at hohndel.org
Wed Jun 11 14:30:48 PDT 2014
Gehad,
you said earlier that you have problems with this patch, but didn't go
into any more details.
It looks solid to me, so unless there's a good reason not to take it...
Please let us know!
/D
On Tue, Jun 10, 2014 at 11:06:39AM -0300, Tomaz Canabrava wrote:
> From 79a9e2c2432321ec73ed3034458c42e11ebf25b2 Mon Sep 17 00:00:00 2001
> From: Tomaz Canabrava <tomaz.canabrava at intel.com>
> Date: Tue, 10 Jun 2014 08:02:55 -0300
> Subject: [PATCH 4/9] Much needed clean on the HTML export dialog code.
>
> Correct usage of QFile, QString and code cleanup.
>
> Signed-off-by: Tomaz Canabrava <tomaz.canabrava at intel.com>
> ---
> qt-ui/divelogexportdialog.cpp | 49 ++++++++++++++++---------------------------
> qt-ui/divelogexportdialog.h | 4 ++--
> 2 files changed, 20 insertions(+), 33 deletions(-)
>
> diff --git a/qt-ui/divelogexportdialog.cpp b/qt-ui/divelogexportdialog.cpp
> index 84be70b..a206e78 100644
> --- a/qt-ui/divelogexportdialog.cpp
> +++ b/qt-ui/divelogexportdialog.cpp
> @@ -5,6 +5,7 @@
> #include <QTextStream>
> #include <QSettings>
> #include <QDir>
> +#include <QDebug>
>
> #include "mainwindow.h"
> #include "divelogexportdialog.h"
> @@ -66,52 +67,38 @@ void DiveLogExportDialog::showExplanation()
> }
> }
>
> -void DiveLogExportDialog::exportHtmlInit(QString filename)
> +void DiveLogExportDialog::exportHtmlInit(const QString& filename)
> {
> QDir dir(filename);
> if (!dir.exists()) {
> - /* I think this will not work as expected on windows */
> - QDir::home().mkpath(filename);
> + dir.mkpath(filename);
> }
>
> QString json_dive_data = filename + QDir::separator() + "file.json";
> - QString json_settings = filename + "/settings.json";
> + QString json_settings = filename + QDir::separator() + "settings.json";
>
> exportHTMLsettings(json_settings);
> export_HTML(json_dive_data.toUtf8().data(), ui->exportSelectedDives->isChecked());
>
> QString searchPath = getSubsurfaceDataPath("theme");
> - if (searchPath.isEmpty())
> - return;
> -
> - QFile *tmpFile;
> -
> - tmpFile = new QFile(searchPath + "/dive_export.html");
> - tmpFile->copy(filename + "/dive_export.html");
> - delete tmpFile;
> -
> - tmpFile = new QFile(searchPath + "/list_lib.js");
> - tmpFile->copy(filename + "/list_lib.js");
> - delete tmpFile;
> -
> - tmpFile = new QFile(searchPath + "/poster.png");
> - tmpFile->copy(filename + "/poster.png");
> - delete tmpFile;
> + if (searchPath.isEmpty()){
> + qDebug() << "empty search path";
> + return;
> + }
>
> - tmpFile = new QFile(searchPath + "/index.html");
> - tmpFile->copy(filename + "/index.html");
> - delete tmpFile;
> + searchPath += QDir::separator();
> + QString dirname = filename + QDir::separator();
>
> - if (ui->themeSelection->currentText() == "Light") {
> - tmpFile = new QFile(searchPath + "/light.css");
> - } else {
> - tmpFile = new QFile(searchPath + "/sand.css");
> - }
> - tmpFile->copy(filename + "/theme.css");
> - delete tmpFile;
> + qDebug() << "from" << searchPath << "to" << dirname;
> + QFile::copy(searchPath + "dive_export.html",dirname + "dive_export.html");
> + QFile::copy(searchPath + "list_lib.js", dirname + "list_lib.js");
> + QFile::copy(searchPath + "poster.png", dirname + "poster.png");
> + QFile::copy(searchPath + "index.html",dirname + "index.html");
> + QFile::copy(searchPath + ui->themeSelection->currentText() == "Light" ? "light.css" : "sand.css",
> + filename + "theme.css");
> }
>
> -void DiveLogExportDialog::exportHTMLsettings(QString filename)
> +void DiveLogExportDialog::exportHTMLsettings(const QString& filename)
> {
> QSettings settings;
> settings.beginGroup("HTML");
> diff --git a/qt-ui/divelogexportdialog.h b/qt-ui/divelogexportdialog.h
> index 8322fa1..fc1bfd3 100644
> --- a/qt-ui/divelogexportdialog.h
> +++ b/qt-ui/divelogexportdialog.h
> @@ -23,8 +23,8 @@ slots:
> private:
> Ui::DiveLogExportDialog *ui;
> void showExplanation();
> - void exportHtmlInit(QString filename);
> - void exportHTMLsettings(QString filename);
> + void exportHtmlInit(const QString& filename);
> + void exportHTMLsettings(const QString& filename);
> };
>
> #endif // DIVELOGEXPORTDIALOG_H
> --
> 2.0.0
>
More information about the subsurface
mailing list