From 4e690119ef38b54d59d87fde6420d796939e0804 Mon Sep 17 00:00:00 2001 From: jan Iversen Date: Wed, 20 Nov 2019 18:09:44 +0100 Subject: core: add shared export functions (copy from desktop-widgets) desktop-widgets/divelogexportdialog.* contains both the desktop dialog as well as the "real" export functions. Create a class to be shared between desktop and mobile Copy the export functions 1-1 from divelogexportdialog.* of course changing class names. saveProfile is highly dependent on the UI, so the implementaion will be done in each UI directory (desktop-widgets, mobile-widgets). Remark this commit just add the copied functions, in order to secure nothing is broken. Signed-off-by: Jan Iversen --- core/exportfuncs.h | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 core/exportfuncs.h (limited to 'core/exportfuncs.h') diff --git a/core/exportfuncs.h b/core/exportfuncs.h new file mode 100644 index 000000000..9f0a17909 --- /dev/null +++ b/core/exportfuncs.h @@ -0,0 +1,39 @@ +// SPDX-License-Identifier: GPL-2.0 +#ifndef EXPORTFUNCS_H +#define EXPORTFUNCS_H + +#include +#include +#include "dive.h" + +class exportFuncs: public QObject { + Q_OBJECT + +public: + static exportFuncs *instance(); + + void exportProfile(QString filename, const bool selected_only); + void export_TeX(const char *filename, const bool selected_only, bool plain); + void export_depths(const char *filename, const bool selected_only); + std::vector getDiveSitesToExport(bool selectedOnly); + void exportUsingStyleSheet(QString filename, bool doExport, int units, + QString stylesheet, bool anonymize); + QFuture future; + + // prepareDivesForUploadDiveLog + // prepareDivesForUploadDiveShare + +private: + exportFuncs() {} + + // WARNING + // saveProfile uses the UI and are therefore different between + // Desktop (UI) and Mobile (QML) + // In order to solve this difference, the actual implementations + // are done in + // desktop-widgets/divelogexportdialog.cpp and + // mobile-widgets/qmlmanager.cpp + void saveProfile(const struct dive *dive, const QString filename); +}; + +#endif // EXPORT_FUNCS_H -- cgit v1.2.3-70-g09d2