diff options
author | jan Iversen <jan@casacondor.com> | 2019-12-08 19:30:39 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-12-24 06:30:57 +0900 |
commit | c0069d6aee16b3acf9d00e6dc4ca0827ba31c5b5 (patch) | |
tree | 30e69841b9d353e00dcc251128993621ad4e6ca9 | |
parent | b4eef5548b593956a4a24da43641b9eed7906efa (diff) | |
download | subsurface-c0069d6aee16b3acf9d00e6dc4ca0827ba31c5b5.tar.gz |
core: add plannerShared class
Add a plannerShared class, whose purpose is to contain shared
functions between mobile and desktop
This class is the inner workings of the diveplanner not the UI
Signed-off-by: Jan Iversen <jan@casacondor.com>
-rw-r--r-- | core/CMakeLists.txt | 2 | ||||
-rw-r--r-- | core/plannershared.cpp | 9 | ||||
-rw-r--r-- | core/plannershared.h | 24 |
3 files changed, 35 insertions, 0 deletions
diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt index eb7185812..376cfda4f 100644 --- a/core/CMakeLists.txt +++ b/core/CMakeLists.txt @@ -72,6 +72,8 @@ set(SUBSURFACE_CORE_LIB_SRCS divelist.h divelogexportlogic.cpp divelogexportlogic.h + plannershared.cpp + plannershared.h divesite-helper.cpp divesite.c divesite.h diff --git a/core/plannershared.cpp b/core/plannershared.cpp new file mode 100644 index 000000000..ddfc73642 --- /dev/null +++ b/core/plannershared.cpp @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0 +#include "plannershared.h" + + +plannerShared *plannerShared::instance() +{ + static plannerShared *self = new plannerShared; + return self; +} diff --git a/core/plannershared.h b/core/plannershared.h new file mode 100644 index 000000000..a18e2147d --- /dev/null +++ b/core/plannershared.h @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0 +#ifndef PLANNERSHARED_H +#define PLANNERSHARED_H +#include <QObject> + +// This is a shared class (mobile/desktop), and contains the core of the diveplanner +// without UI entanglement. +// It make variables and functions available to QML, these are referenced directly +// in the desktop version +// +// The mobile diveplanner shows all diveplans, but the editing functionality is +// limited to keep the UI simpler. + +class plannerShared: public QObject { + Q_OBJECT + +public: + static plannerShared *instance(); + +private: + plannerShared() {} +}; + +#endif // PLANNERSHARED_H |