diff options
author | Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de> | 2021-07-08 15:55:53 +0200 |
---|---|---|
committer | Daniel Teichmann <daniel.teichmann@das-netzwerkteam.de> | 2021-07-08 15:55:53 +0200 |
commit | 36dcf4b27450f04ac60a05cd2837c1b58fd5b24a (patch) | |
tree | d234242b8db0195fdee5b832e048a142a28f37fd | |
parent | 0f73c7ff3f8a84bcacf077644d6a199301f58945 (diff) | |
download | RWA.Support.DesktopApp-36dcf4b27450f04ac60a05cd2837c1b58fd5b24a.tar.gz RWA.Support.DesktopApp-36dcf4b27450f04ac60a05cd2837c1b58fd5b24a.tar.bz2 RWA.Support.DesktopApp-36dcf4b27450f04ac60a05cd2837c1b58fd5b24a.zip |
Classes share one specific D-Bus object now.
-rw-r--r-- | src/main.cpp | 14 | ||||
-rw-r--r-- | src/main_qmladaptor.cpp | 5 | ||||
-rw-r--r-- | src/main_qmladaptor.h | 4 | ||||
-rw-r--r-- | src/scenes/add_server_wizard/add_server_wizard.cpp | 6 |
4 files changed, 20 insertions, 9 deletions
diff --git a/src/main.cpp b/src/main.cpp index a72e42b..7f86b6d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -83,16 +83,18 @@ int main(int argc, char *argv[]) { QQmlApplicationEngine engine(&app); + QScopedPointer<DBusAPI> dbus_api (new DBusAPI()); + // Make mainqmladaptor available to QML - QScopedPointer<MainQMLAdaptor> main_gui (new MainQMLAdaptor(&app, &engine)); + QScopedPointer<MainQMLAdaptor> main_gui (new MainQMLAdaptor(&app, &engine, dbus_api.data())); engine.rootContext()->setContextProperty("mainqmladaptor", main_gui.data()); - QScopedPointer<DBusAPI> _dbus_api (new DBusAPI()); - QObject::connect(_dbus_api.data(), + QObject::connect(dbus_api.data(), SIGNAL(serviceGetWebAppHostsResponse(QJsonDocument*)), main_gui.data(), SLOT(get_web_app_hosts_response(QJsonDocument*))); - _dbus_api.data()->get_web_app_hosts_request(); + dbus_api.data()->get_web_app_hosts_request(); + engine.load(QUrl(QStringLiteral("qrc:/src/main.qml"))); if (engine.rootObjects().isEmpty()) @@ -116,7 +118,9 @@ int main(int argc, char *argv[]) { SLOT(onRwaHostSelected(QString))); // Make add_server_wizard available to QML - QScopedPointer<Add_Server_wizard> wizard (new Add_Server_wizard(&app, main_gui.data())); + QScopedPointer<Add_Server_wizard> wizard (new Add_Server_wizard(&app, + main_gui.data(), + dbus_api.data())); engine.rootContext()->setContextProperty("add_server_wizard", wizard.data()); return app.exec(); diff --git a/src/main_qmladaptor.cpp b/src/main_qmladaptor.cpp index c1d3f14..2dec33c 100644 --- a/src/main_qmladaptor.cpp +++ b/src/main_qmladaptor.cpp @@ -26,10 +26,13 @@ #include "main_qmladaptor.h" -MainQMLAdaptor::MainQMLAdaptor(QObject *parent, QQmlApplicationEngine* engine) : QObject(parent) { +MainQMLAdaptor::MainQMLAdaptor(QObject *parent, QQmlApplicationEngine* engine, + DBusAPI *dbus_api) : QObject(parent) { Q_ASSERT(engine != nullptr); + Q_ASSERT(dbus_api != nullptr); _engine = engine; + _dbus_api = dbus_api; _rwaHostModel = new QList<QObject*>; } diff --git a/src/main_qmladaptor.h b/src/main_qmladaptor.h index a289a74..48923d5 100644 --- a/src/main_qmladaptor.h +++ b/src/main_qmladaptor.h @@ -37,6 +37,7 @@ #include <QJsonArray> #include "RWAHost.h" +#include "DBusAPI.h" class MainQMLAdaptor : public QObject { @@ -59,7 +60,8 @@ class MainQMLAdaptor : public QObject Q_PROPERTY(QMessageBox::Icon _messageDialogIcon READ getMessageDialogIcon NOTIFY messageDialogIconChanged) public: - explicit MainQMLAdaptor(QObject *parent, QQmlApplicationEngine *engine = nullptr); + explicit MainQMLAdaptor(QObject *parent, QQmlApplicationEngine *engine = nullptr, + DBusAPI *dbus_api = nullptr); void setRWAHostModel(QList<QObject*> *rwa_hosts); diff --git a/src/scenes/add_server_wizard/add_server_wizard.cpp b/src/scenes/add_server_wizard/add_server_wizard.cpp index 09db898..a5bee47 100644 --- a/src/scenes/add_server_wizard/add_server_wizard.cpp +++ b/src/scenes/add_server_wizard/add_server_wizard.cpp @@ -27,10 +27,12 @@ #include "../../RWADBusAdaptor.h" #include "../../RWAHost.h" -Add_Server_wizard::Add_Server_wizard(QObject *parent, MainQMLAdaptor *main_gui) : QObject(parent) { +Add_Server_wizard::Add_Server_wizard(QObject *parent, + MainQMLAdaptor *main_gui, DBusAPI *dbus_api) : QObject(parent) { Q_ASSERT(main_gui != nullptr); + Q_ASSERT(dbus_api != nullptr); - _dbus_api = new DBusAPI(); + _dbus_api = dbus_api; _main_gui = main_gui; // _dbus_api --serviceAddWebAppHostResponse-> this.add_web_app_host_response() |