summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/kube/contents/ui/Kube.qml5
-rw-r--r--framework/src/CMakeLists.txt1
-rw-r--r--framework/src/frameworkplugin.cpp2
-rw-r--r--framework/src/startupcheck.cpp35
-rw-r--r--framework/src/startupcheck.h32
5 files changed, 75 insertions, 0 deletions
diff --git a/components/kube/contents/ui/Kube.qml b/components/kube/contents/ui/Kube.qml
index 5a3d21df..5c3f00eb 100644
--- a/components/kube/contents/ui/Kube.qml
+++ b/components/kube/contents/ui/Kube.qml
@@ -79,6 +79,11 @@ Controls2.ApplicationWindow {
79 } 79 }
80 } 80 }
81 //END Shortcuts 81 //END Shortcuts
82 Kube.StartupCheck {
83 onNoAccount: {
84 kubeViews.setAccountsView()
85 }
86 }
82 87
83 //BEGIN background 88 //BEGIN background
84 Rectangle { 89 Rectangle {
diff --git a/framework/src/CMakeLists.txt b/framework/src/CMakeLists.txt
index 8bb3d05c..43651e0a 100644
--- a/framework/src/CMakeLists.txt
+++ b/framework/src/CMakeLists.txt
@@ -45,6 +45,7 @@ set(SRCS
45 clipboardproxy.cpp 45 clipboardproxy.cpp
46 krecursivefilterproxymodel.cpp 46 krecursivefilterproxymodel.cpp
47 webengineprofile.cpp 47 webengineprofile.cpp
48 startupcheck.cpp
48) 49)
49 50
50add_library(frameworkplugin SHARED ${SRCS}) 51add_library(frameworkplugin SHARED ${SRCS})
diff --git a/framework/src/frameworkplugin.cpp b/framework/src/frameworkplugin.cpp
index f5cd2cf5..8fd457fc 100644
--- a/framework/src/frameworkplugin.cpp
+++ b/framework/src/frameworkplugin.cpp
@@ -36,6 +36,7 @@
36#include "kubeimage.h" 36#include "kubeimage.h"
37#include "clipboardproxy.h" 37#include "clipboardproxy.h"
38#include "webengineprofile.h" 38#include "webengineprofile.h"
39#include "startupcheck.h"
39 40
40#include <QtQml> 41#include <QtQml>
41 42
@@ -75,5 +76,6 @@ void FrameworkPlugin::registerTypes (const char *uri)
75 76
76 qmlRegisterType<KubeImage>(uri, 1, 0, "KubeImage"); 77 qmlRegisterType<KubeImage>(uri, 1, 0, "KubeImage");
77 qmlRegisterType<ClipboardProxy>(uri, 1, 0, "Clipboard"); 78 qmlRegisterType<ClipboardProxy>(uri, 1, 0, "Clipboard");
79 qmlRegisterType<StartupCheck>(uri, 1, 0, "StartupCheck");
78 qmlRegisterSingletonType<WebEngineProfile>(uri, 1, 0, "WebEngineProfile", webengineprofile_singletontype_provider); 80 qmlRegisterSingletonType<WebEngineProfile>(uri, 1, 0, "WebEngineProfile", webengineprofile_singletontype_provider);
79} 81}
diff --git a/framework/src/startupcheck.cpp b/framework/src/startupcheck.cpp
new file mode 100644
index 00000000..850be7bb
--- /dev/null
+++ b/framework/src/startupcheck.cpp
@@ -0,0 +1,35 @@
1/*
2 Copyright (c) 2017 Christian Mollekopf <mollekopf@kolabsys.com>
3
4 This library is free software; you can redistribute it and/or modify it
5 under the terms of the GNU Library General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or (at your
7 option) any later version.
8
9 This library is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to the
16 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17 02110-1301, USA.
18*/
19#include "startupcheck.h"
20
21#include <sink/store.h>
22
23StartupCheck::StartupCheck(QObject *parent)
24 : QObject(parent)
25{
26 QMetaObject::invokeMethod(this, "check", Qt::QueuedConnection);
27}
28
29void StartupCheck::check()
30{
31 auto accounts = Sink::Store::read<Sink::ApplicationDomain::SinkAccount>({});
32 if (accounts.isEmpty()) {
33 emit noAccount();
34 }
35}
diff --git a/framework/src/startupcheck.h b/framework/src/startupcheck.h
new file mode 100644
index 00000000..dd79ee04
--- /dev/null
+++ b/framework/src/startupcheck.h
@@ -0,0 +1,32 @@
1/*
2 Copyright (c) 2017 Christian Mollekopf <mollekopf@kolabsys.com>
3
4 This library is free software; you can redistribute it and/or modify it
5 under the terms of the GNU Library General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or (at your
7 option) any later version.
8
9 This library is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to the
16 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17 02110-1301, USA.
18*/
19
20#include <QObject>
21
22class StartupCheck : public QObject {
23 Q_OBJECT
24public:
25 StartupCheck(QObject *parent = nullptr);
26
27signals:
28 void noAccount();
29
30private Q_SLOTS:
31 void check();
32};