mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
ssrf: add shared helper file
add subsurface-helper.cpp to share functions between mobile and desktop move mobile qml registrations to a shared function (avoiding differences in registrations) Target is to replace current subsurface-desktop-main + subsurface-desktop-helper and subsurface-mobile-main + subsurface-mobile-helper with subsurface-*-main + subsurface-helper Signed-off-by: Jan Iversen <jani@apache.org>
This commit is contained in:
parent
a56a7c51f6
commit
8cc0b6dbc1
4 changed files with 61 additions and 38 deletions
|
@ -291,6 +291,7 @@ if(${SUBSURFACE_TARGET_EXECUTABLE} MATCHES "MobileExecutable")
|
|||
mobile-widgets/qml/kirigami/src/libkirigami/tabletmodewatcher.cpp
|
||||
subsurface-mobile-main.cpp
|
||||
subsurface-mobile-helper.cpp
|
||||
subsurface-helper.cpp
|
||||
profile-widget/qmlprofile.cpp
|
||||
map-widget/qmlmapwidgethelper.cpp
|
||||
)
|
||||
|
@ -315,6 +316,7 @@ elseif(${SUBSURFACE_TARGET_EXECUTABLE} MATCHES "DesktopExecutable")
|
|||
set(SUBSURFACE_APP
|
||||
subsurface-desktop-main.cpp
|
||||
subsurface-desktop-helper.cpp
|
||||
subsurface-helper.cpp
|
||||
)
|
||||
source_group("Subsurface App" FILES ${SUBSURFACE_APP})
|
||||
if(ANDROID)
|
||||
|
|
|
@ -6,6 +6,7 @@ void init_qt_late();
|
|||
void init_ui();
|
||||
|
||||
void run_ui();
|
||||
void register_qml_types();
|
||||
void exit_ui();
|
||||
void set_non_bt_addresses();
|
||||
|
||||
|
|
57
subsurface-helper.cpp
Normal file
57
subsurface-helper.cpp
Normal file
|
@ -0,0 +1,57 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include <QQmlEngine>
|
||||
#include <QDebug>
|
||||
#include <QQuickItem>
|
||||
|
||||
#include "core/qt-gui.h"
|
||||
#include "core/settings/qPref.h"
|
||||
#ifdef SUBSURFACE_MOBILE
|
||||
#include "mobile-widgets/qmlmanager.h"
|
||||
#include "mobile-widgets/qmlprefs.h"
|
||||
#include "qt-models/divelistmodel.h"
|
||||
#include "qt-models/gpslistmodel.h"
|
||||
#include "profile-widget/qmlprofile.h"
|
||||
#include "core/downloadfromdcthread.h"
|
||||
#include "qt-models/diveimportedmodel.h"
|
||||
#include "map-widget/qmlmapwidgethelper.h"
|
||||
#include "qt-models/maplocationmodel.h"
|
||||
#endif
|
||||
|
||||
void register_qml_types()
|
||||
{
|
||||
int rc;
|
||||
rc = qmlRegisterType<qPref>("org.subsurfacedivelog.mobile", 1, 0, "SsrfPrefs");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register Prefs (class qPref), QML will not work!!";
|
||||
rc = qmlRegisterType<qPrefDisplay>("org.subsurfacedivelog.mobile", 1, 0, "SsrfDisplayPrefs");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register DisplayPrefs (class qPrefDisplay), QML will not work!!";
|
||||
|
||||
#ifdef SUBSURFACE_MOBILE
|
||||
rc = qmlRegisterType<QMLManager>("org.subsurfacedivelog.mobile", 1, 0, "QMLManager");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLManager, QML will not work!!";
|
||||
rc = qmlRegisterType<QMLPrefs>("org.subsurfacedivelog.mobile", 1, 0, "QMLPrefs");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLPrefs, QML will not work!!";
|
||||
rc = qmlRegisterType<QMLProfile>("org.subsurfacedivelog.mobile", 1, 0, "QMLProfile");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLProfile, QML will not work!!";
|
||||
rc = qmlRegisterType<DownloadThread>("org.subsurfacedivelog.mobile", 1, 0, "DCDownloadThread");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register DCDownloadThread, QML will not work!!";
|
||||
rc = qmlRegisterType<DiveImportedModel>("org.subsurfacedivelog.mobile", 1, 0, "DCImportModel");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register DCImportModel, QML will not work!!";
|
||||
|
||||
rc = qmlRegisterType<MapWidgetHelper>("org.subsurfacedivelog.mobile", 1, 0, "MapWidgetHelper");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapWidgetHelper, QML will not work!!";
|
||||
rc = qmlRegisterType<MapLocationModel>("org.subsurfacedivelog.mobile", 1, 0, "MapLocationModel");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapLocationModel, QML will not work!!";
|
||||
rc = qmlRegisterType<MapLocation>("org.subsurfacedivelog.mobile", 1, 0, "MapLocation");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapLocation, QML will not work!!";
|
||||
#endif
|
||||
}
|
|
@ -17,16 +17,8 @@
|
|||
#include <QQmlContext>
|
||||
#include <QSortFilterProxyModel>
|
||||
#include "mobile-widgets/qmlmanager.h"
|
||||
#include "mobile-widgets/qmlprefs.h"
|
||||
#include "qt-models/divelistmodel.h"
|
||||
#include "qt-models/gpslistmodel.h"
|
||||
#include "profile-widget/qmlprofile.h"
|
||||
#include "core/downloadfromdcthread.h"
|
||||
#include "core/connectionlistmodel.h"
|
||||
#include "qt-models/diveimportedmodel.h"
|
||||
#include "qt-models/messagehandlermodel.h"
|
||||
#include "map-widget/qmlmapwidgethelper.h"
|
||||
#include "qt-models/maplocationmodel.h"
|
||||
#include "core/settings/qPref.h"
|
||||
|
||||
#include "mobile-widgets/qml/kirigami/src/kirigamiplugin.h"
|
||||
|
@ -55,37 +47,8 @@ void init_ui()
|
|||
|
||||
void run_ui()
|
||||
{
|
||||
int rc;
|
||||
LOG_STP("run_ui starting");
|
||||
rc = qmlRegisterType<qPref>("org.subsurfacedivelog.mobile", 1, 0, "SsrfPrefs");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register Prefs (class qPref), QML will not work!!";
|
||||
rc = qmlRegisterType<QMLManager>("org.subsurfacedivelog.mobile", 1, 0, "QMLManager");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLManager, QML will not work!!";
|
||||
rc = qmlRegisterType<QMLPrefs>("org.subsurfacedivelog.mobile", 1, 0, "QMLPrefs");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLPrefs, QML will not work!!";
|
||||
rc = qmlRegisterType<QMLProfile>("org.subsurfacedivelog.mobile", 1, 0, "QMLProfile");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register QMLProfile, QML will not work!!";
|
||||
|
||||
rc = qmlRegisterType<DownloadThread>("org.subsurfacedivelog.mobile", 1, 0, "DCDownloadThread");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register DCDownloadThread, QML will not work!!";
|
||||
rc = qmlRegisterType<DiveImportedModel>("org.subsurfacedivelog.mobile", 1, 0, "DCImportModel");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register DCImportModel, QML will not work!!";
|
||||
|
||||
rc = qmlRegisterType<MapWidgetHelper>("org.subsurfacedivelog.mobile", 1, 0, "MapWidgetHelper");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapWidgetHelper, QML will not work!!";
|
||||
rc = qmlRegisterType<MapLocationModel>("org.subsurfacedivelog.mobile", 1, 0, "MapLocationModel");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapLocationModel, QML will not work!!";
|
||||
rc = qmlRegisterType<MapLocation>("org.subsurfacedivelog.mobile", 1, 0, "MapLocation");
|
||||
if (rc < 0)
|
||||
qDebug() << "ERROR: Cannot register MapLocation, QML will not work!!";
|
||||
register_qml_types();
|
||||
|
||||
QQmlApplicationEngine engine;
|
||||
LOG_STP("run_ui qml engine started");
|
||||
|
|
Loading…
Add table
Reference in a new issue