summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorꦌ ꦫꦶ ꦏ꧀ꦦꦿ ꦧ ꦮ ꦑ ꦩ ꦭ꧀ <erik@darapsa.co.id>2019-09-14 07:02:48 +0800
committerꦌ ꦫꦶ ꦏ꧀ꦦꦿ ꦧ ꦮ ꦑ ꦩ ꦭ꧀ <erik@darapsa.co.id>2019-09-14 07:02:48 +0800
commitdb6374681a2bc35671fa0c25fc740888a869ccd4 (patch)
treee2d52c6821356f7fa988470a9557af2966535deb
parent2f827a26779c83d7fbc8683d9d42f98a2fd45db1 (diff)
User singleton instantiation can be moved to Controller
like the rest
-rw-r--r--controller.cxx9
-rw-r--r--kelakon.pro2
-rw-r--r--main.cxx11
-rw-r--r--user.hxx1
4 files changed, 8 insertions, 15 deletions
diff --git a/controller.cxx b/controller.cxx
index 6be4f40..2e562bf 100644
--- a/controller.cxx
+++ b/controller.cxx
@@ -21,7 +21,14 @@ Controller::Controller(QObject* parent) : QObject{parent}
connect(worker, SIGNAL(logged(rt_user*)), loginView, SLOT(pushProfile()));
connect(loginView, SIGNAL(search(QString)), worker, SLOT(search(QString)));
- auto user = engine->singletonInstance<User*>(User::typeId);
+ auto typeId = qmlRegisterSingletonType<User>("KelakonUser", 0, 1, "User"
+ , [](QQmlEngine *engine,
+ QJSEngine *scriptEngine) -> QObject* {
+ Q_UNUSED(engine)
+ Q_UNUSED(scriptEngine)
+ return new User;
+ });
+ auto user = engine->singletonInstance<User*>(typeId);
connect(worker, SIGNAL(logged(rt_user*)), user, SLOT(update(rt_user*)));
taskList = new TaskList;
diff --git a/kelakon.pro b/kelakon.pro
index 5a44cad..8a025a9 100644
--- a/kelakon.pro
+++ b/kelakon.pro
@@ -1,7 +1,5 @@
QT += quickcontrols2
-*-g++: QMAKE_CXXFLAGS += -std=gnu++17
-*-clang: QMAKE_CXXFLAGS += -std=c++17
debug: DEFINES += DEBUG
HEADERS += \
diff --git a/main.cxx b/main.cxx
index 1ae0467..23f9e4d 100644
--- a/main.cxx
+++ b/main.cxx
@@ -1,6 +1,5 @@
#include <QGuiApplication>
#include <QQmlApplicationEngine>
-#include "user.hxx"
#include "controller.hxx"
int main(int argc, char* argv[])
@@ -8,17 +7,7 @@ int main(int argc, char* argv[])
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;
-
- User::typeId = qmlRegisterSingletonType<User>("KelakonUser", 0, 1, "User"
- , [](QQmlEngine *engine,
- QJSEngine *scriptEngine) -> QObject* {
- Q_UNUSED(engine)
- Q_UNUSED(scriptEngine)
- return new User;
- });
-
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
Controller controller{&engine};
-
return app.exec();
}
diff --git a/user.hxx b/user.hxx
index a870852..2b9a356 100644
--- a/user.hxx
+++ b/user.hxx
@@ -57,7 +57,6 @@ class User : public QObject
, m_loggedIn{false}
{}
~User() {}
- inline static int typeId;
QString const& id() const { return m_id; }
QString const& name() const { return m_name; }