subsurface/qt-ui/divelogexportdialog.h
Gehad elrobey ad60ca84ee Export the XSLT based exports in a new thread.
The XSLT based exports can consume long time while applying the xml format.
This time can make the GUI unresponsive. Simply call the export functions
in a new Thread.

Signed-off-by: Gehad elrobey <gehadelrobey@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-01-31 10:15:12 -08:00

41 lines
972 B
C++

#ifndef DIVELOGEXPORTDIALOG_H
#define DIVELOGEXPORTDIALOG_H
#include <QDialog>
#include <QTextStream>
#include <QFuture>
#include "helpers.h"
#include "statistics.h"
class QAbstractButton;
namespace Ui {
class DiveLogExportDialog;
}
void exportHTMLstatisticsTotal(QTextStream &out, stats_t *total_stats);
class DiveLogExportDialog : public QDialog {
Q_OBJECT
public:
explicit DiveLogExportDialog(QWidget *parent = 0);
~DiveLogExportDialog();
private
slots:
void on_buttonBox_accepted();
void on_exportGroup_buttonClicked(QAbstractButton *);
private:
QFuture<int> future;
Ui::DiveLogExportDialog *ui;
void showExplanation();
void exportHtmlInit(const QString &filename);
void exportHTMLsettings(const QString &filename);
void exportHTMLstatistics(const QString &filename);
void copy_and_overwrite(const QString &fileName, const QString &newName);
void export_depths(const char *filename, const bool selected_only);
};
#endif // DIVELOGEXPORTDIALOG_H