From 9718d8ec72313c3297938ddb09b9a69b946b1929 Mon Sep 17 00:00:00 2001 From: "andrey.daragan" <daragan.andrey@demlabs.net> Date: Fri, 21 Sep 2018 13:47:53 +0300 Subject: [PATCH] Client framework --- .gitignore | 1 + DapUiQmlListModelWidgets.qml | 30 +++++ DapUiQmlScreenDashboard.cpp | 6 + DapUiQmlScreenDashboard.h | 11 ++ DapUiQmlScreenDashboard.qml | 82 ++++++++++++ DapUiQmlScreenDialog.cpp | 6 + DapUiQmlScreenDialog.h | 11 ++ DapUiQmlScreenDialog.qml | 63 +++++++++ DapUiQmlScreenLogin.ui.qml | 27 ++++ DapUiQmlScreenMainWindow.ui.qml | 8 ++ DapUiQmlWidgeChainOperations.cpp | 6 + DapUiQmlWidgeChainOperations.h | 12 ++ DapUiQmlWidget.cpp | 6 + DapUiQmlWidget.h | 11 ++ DapUiQmlWidgetChainBallance.cpp | 6 + DapUiQmlWidgetChainBallance.h | 12 ++ DapUiQmlWidgetChainBlockExplorer.cpp | 6 + DapUiQmlWidgetChainBlockExplorer.h | 12 ++ DapUiQmlWidgetChainBlockExplorer.ui.qml | 15 +++ DapUiQmlWidgetChainExchanges.ui.qml | 14 ++ DapUiQmlWidgetChainNodeLogs.cpp | 6 + DapUiQmlWidgetChainNodeLogs.h | 12 ++ DapUiQmlWidgetChainServicesClient.ui.qml | 14 ++ ...iQmlWidgetChainServicesShareControl.ui.qml | 14 ++ DapUiQmlWidgetChainSettings.ui.qml | 14 ++ DapUiQmlWidgetChainTransctions.cpp | 6 + DapUiQmlWidgetChainTransctions.h | 12 ++ DapUiQmlWidgetChainWallet.ui.qml | 14 ++ Resources/Icons/add.png | Bin 0 -> 68310 bytes Resources/Icons/icon.ico | Bin 0 -> 2462 bytes Resources/Icons/icon.png | Bin 0 -> 2671 bytes kelvin.conf | 6 + kelvin.pro | 48 +++++++ main.cpp | 78 +++++++++++ main.qml | 121 ++++++++++++++++++ qml.qrc | 20 +++ 36 files changed, 710 insertions(+) create mode 100644 DapUiQmlListModelWidgets.qml create mode 100644 DapUiQmlScreenDashboard.cpp create mode 100644 DapUiQmlScreenDashboard.h create mode 100644 DapUiQmlScreenDashboard.qml create mode 100644 DapUiQmlScreenDialog.cpp create mode 100644 DapUiQmlScreenDialog.h create mode 100644 DapUiQmlScreenDialog.qml create mode 100644 DapUiQmlScreenLogin.ui.qml create mode 100644 DapUiQmlScreenMainWindow.ui.qml create mode 100644 DapUiQmlWidgeChainOperations.cpp create mode 100644 DapUiQmlWidgeChainOperations.h create mode 100644 DapUiQmlWidget.cpp create mode 100644 DapUiQmlWidget.h create mode 100644 DapUiQmlWidgetChainBallance.cpp create mode 100644 DapUiQmlWidgetChainBallance.h create mode 100644 DapUiQmlWidgetChainBlockExplorer.cpp create mode 100644 DapUiQmlWidgetChainBlockExplorer.h create mode 100644 DapUiQmlWidgetChainBlockExplorer.ui.qml create mode 100644 DapUiQmlWidgetChainExchanges.ui.qml create mode 100644 DapUiQmlWidgetChainNodeLogs.cpp create mode 100644 DapUiQmlWidgetChainNodeLogs.h create mode 100644 DapUiQmlWidgetChainServicesClient.ui.qml create mode 100644 DapUiQmlWidgetChainServicesShareControl.ui.qml create mode 100644 DapUiQmlWidgetChainSettings.ui.qml create mode 100644 DapUiQmlWidgetChainTransctions.cpp create mode 100644 DapUiQmlWidgetChainTransctions.h create mode 100644 DapUiQmlWidgetChainWallet.ui.qml create mode 100644 Resources/Icons/add.png create mode 100644 Resources/Icons/icon.ico create mode 100644 Resources/Icons/icon.png create mode 100644 kelvin.conf create mode 100644 kelvin.pro create mode 100644 main.cpp create mode 100644 main.qml create mode 100644 qml.qrc diff --git a/.gitignore b/.gitignore index 9ea395f15..71771c4cb 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ cmake_install.cmake install_manifest.txt compile_commands.json CTestTestfile.cmake +*.user* diff --git a/DapUiQmlListModelWidgets.qml b/DapUiQmlListModelWidgets.qml new file mode 100644 index 000000000..c97243ad3 --- /dev/null +++ b/DapUiQmlListModelWidgets.qml @@ -0,0 +1,30 @@ +import QtQuick 2.0 + +ListModel { + id: listModelMenu + + ListElement { + name: qsTr("Blockchain explorer") + page: "DapUiQmlWidgetChainBlockExplorer.ui.qml" + } + ListElement { + name: qsTr("Exchanges") + page: "DapUiQmlWidgetChainExchanges.ui.qml" + } + ListElement { + name: qsTr("Services client") + page: "DapUiQmlWidgetChainServicesClient.ui.qml" + } + ListElement { + name: qsTr("Services share control") + page: "DapUiQmlWidgetChainServicesShareControl.ui.qml" + } + ListElement { + name: qsTr("Settings") + page: "DapUiQmlWidgetChainSettings.ui.qml" + } + ListElement { + name: qsTr("Wallet") + page: "DapUiQmlWidgetChainWallet.ui.qml" + } +} diff --git a/DapUiQmlScreenDashboard.cpp b/DapUiQmlScreenDashboard.cpp new file mode 100644 index 000000000..ea06dd623 --- /dev/null +++ b/DapUiQmlScreenDashboard.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlScreenDashboard.h" + +DapUiQmlScreenDashboard::DapUiQmlScreenDashboard() +{ + +} diff --git a/DapUiQmlScreenDashboard.h b/DapUiQmlScreenDashboard.h new file mode 100644 index 000000000..1417dcb67 --- /dev/null +++ b/DapUiQmlScreenDashboard.h @@ -0,0 +1,11 @@ +#ifndef DAPUIQMLSCREENDASHBOARD_H +#define DAPUIQMLSCREENDASHBOARD_H + + +class DapUiQmlScreenDashboard +{ +public: + DapUiQmlScreenDashboard(); +}; + +#endif // DAPUIQMLSCREENDASHBOARD_H \ No newline at end of file diff --git a/DapUiQmlScreenDashboard.qml b/DapUiQmlScreenDashboard.qml new file mode 100644 index 000000000..e2461bbb0 --- /dev/null +++ b/DapUiQmlScreenDashboard.qml @@ -0,0 +1,82 @@ +import QtQuick 2.9 +import QtQuick.Controls 1.4 +import QtQuick.Controls 2.2 +import QtQuick.Controls.Styles 1.4 + +Page { + id: dapUiQmlScreenDashboard + title: qsTr("General") + ListView { + id: listViewTabs + anchors.top: parent.top + anchors.bottom: parent.bottom + anchors.left: parent.left + width: dapUiQmlScreenDashboard.width/5 + model: listModelTabs + + ListModel { + id: listModelTabs + + ListElement { + name: qsTr("Login") + page: "DapUiQmlScreenLogin.ui.qml" + } + ListElement { + name: qsTr("Dashboard") + page: "DapUiQmlScreenDialog.qml" + } + } + + + + delegate: + Component { + id: componentTab + Item { + width: listViewTabs.width + height: textTab.height + 10 + Rectangle { + id: canvas + border.color: "whitesmoke" + color: "Transparent" + anchors.fill: parent + Row { + anchors.margins: 5 + anchors.fill: parent + + Text + { + id: textTab + text: qsTr(name) + } + } + } + + MouseArea { + anchors.fill: parent + onClicked: + { + listViewTabs.currentIndex = index + stackViewScreenDashboard.setSource(Qt.resolvedUrl(page)) + } + } + } + } + + highlight: Rectangle { color: "aliceblue"; radius: 1 } + focus: true + } + Rectangle { + anchors.left: listViewTabs.right + anchors.top: parent.top + anchors.bottom: parent.bottom + anchors.right: parent.right + border.color: "whitesmoke" + Loader { + id: stackViewScreenDashboard + anchors.fill: parent + anchors.margins: 1 + source: "DapUiQmlScreenLogin.ui.qml" + } + } +} diff --git a/DapUiQmlScreenDialog.cpp b/DapUiQmlScreenDialog.cpp new file mode 100644 index 000000000..c237cc216 --- /dev/null +++ b/DapUiQmlScreenDialog.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlScreenDialog.h" + +DapUiQmlScreenDialog::DapUiQmlScreenDialog() +{ + +} diff --git a/DapUiQmlScreenDialog.h b/DapUiQmlScreenDialog.h new file mode 100644 index 000000000..c3a5028c8 --- /dev/null +++ b/DapUiQmlScreenDialog.h @@ -0,0 +1,11 @@ +#ifndef DAPUIQMLSCREENDIALOG_H +#define DAPUIQMLSCREENDIALOG_H + + +class DapUiQmlScreenDialog +{ +public: + DapUiQmlScreenDialog(); +}; + +#endif // DAPUIQMLSCREENDIALOG_H diff --git a/DapUiQmlScreenDialog.qml b/DapUiQmlScreenDialog.qml new file mode 100644 index 000000000..a6d222603 --- /dev/null +++ b/DapUiQmlScreenDialog.qml @@ -0,0 +1,63 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.4 + +Page { + id: dapUiQmlScreenDialog + title: qsTr("Dashboard") + anchors.fill: parent + + Rectangle { + color: "white" + anchors.fill: parent + + GridView { + id: gridViewDashboard + anchors.fill: parent + cellWidth: width/3; cellHeight: height/2 + focus: true + model: DapUiQmlListModelWidgets {} + + highlight: Rectangle { width: gridViewDashboard.cellWidth; height: gridViewDashboard.cellHeight; radius: width/50; color: "aliceblue" } + + delegate: Item { + width: gridViewDashboard.cellWidth + height: gridViewDashboard.cellHeight + Rectangle { + anchors.fill: parent + border.color: "grey" + color: "transparent" + radius: width/50 + anchors.margins: 5 + clip: true + + Column { + width: parent.width + anchors.centerIn: parent + spacing: width / 10 + anchors.margins: width / 10 + Image { + id: iconWidget + source: "qrc:/Resources/Icons/add.png" + width: parent.width * 2/3 + height: width + anchors.horizontalCenter: parent.horizontalCenter + } + Text { + text: name + color: "darkgrey" + anchors.horizontalCenter: parent.horizontalCenter + } + } + } + MouseArea { + anchors.fill: parent + onClicked: + { + parent.GridView.view.currentIndex = index; + stackView.push(Qt.resolvedUrl(page), StackView.Immediate); + } + } + } + } + } +} diff --git a/DapUiQmlScreenLogin.ui.qml b/DapUiQmlScreenLogin.ui.qml new file mode 100644 index 000000000..2d51f8277 --- /dev/null +++ b/DapUiQmlScreenLogin.ui.qml @@ -0,0 +1,27 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlScreenLogin + + title: qsTr("Login") + + + Column { + anchors.centerIn: parent + spacing: 10 + + TextField { + id: textFieldPassword + placeholderText: "Password" + echoMode: TextInput.Password + } + + Button { + text: "Log in" + width: textFieldPassword.width + anchors.horizontalCenter: parent.horizontalCenter + } + } + +} diff --git a/DapUiQmlScreenMainWindow.ui.qml b/DapUiQmlScreenMainWindow.ui.qml new file mode 100644 index 000000000..edc520024 --- /dev/null +++ b/DapUiQmlScreenMainWindow.ui.qml @@ -0,0 +1,8 @@ +import QtQuick 2.9 +import QtQuick.Controls 1.4 +import QtQuick.Controls 2.4 + +Page { + + title: qsTr("General") +} diff --git a/DapUiQmlWidgeChainOperations.cpp b/DapUiQmlWidgeChainOperations.cpp new file mode 100644 index 000000000..4703312d8 --- /dev/null +++ b/DapUiQmlWidgeChainOperations.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidgeChainOperations.h" + +DapUiQmlWidgeChainOperations::DapUiQmlWidgeChainOperations() +{ + +} diff --git a/DapUiQmlWidgeChainOperations.h b/DapUiQmlWidgeChainOperations.h new file mode 100644 index 000000000..458778325 --- /dev/null +++ b/DapUiQmlWidgeChainOperations.h @@ -0,0 +1,12 @@ +#ifndef DAPUIQMLWIDGECHAINOPERATIONS_H +#define DAPUIQMLWIDGECHAINOPERATIONS_H + +#include "DapUiQmlWidget.h" + +class DapUiQmlWidgeChainOperations : public DapUiQmlWidget +{ +public: + DapUiQmlWidgeChainOperations(); +}; + +#endif // DAPUIQMLWIDGECHAINOPERATIONS_H diff --git a/DapUiQmlWidget.cpp b/DapUiQmlWidget.cpp new file mode 100644 index 000000000..59598aa4c --- /dev/null +++ b/DapUiQmlWidget.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidget.h" + +DapUiQmlWidget::DapUiQmlWidget() +{ + +} diff --git a/DapUiQmlWidget.h b/DapUiQmlWidget.h new file mode 100644 index 000000000..06ebafdc6 --- /dev/null +++ b/DapUiQmlWidget.h @@ -0,0 +1,11 @@ +#ifndef DAPUIQMLWIDGET_H +#define DAPUIQMLWIDGET_H + + +class DapUiQmlWidget +{ +public: + DapUiQmlWidget(); +}; + +#endif // DAPUIQMLWIDGET_H \ No newline at end of file diff --git a/DapUiQmlWidgetChainBallance.cpp b/DapUiQmlWidgetChainBallance.cpp new file mode 100644 index 000000000..68da31745 --- /dev/null +++ b/DapUiQmlWidgetChainBallance.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidgetChainBallance.h" + +DapUiQmlWidgetChainBallance::DapUiQmlWidgetChainBallance() +{ + +} diff --git a/DapUiQmlWidgetChainBallance.h b/DapUiQmlWidgetChainBallance.h new file mode 100644 index 000000000..be7239552 --- /dev/null +++ b/DapUiQmlWidgetChainBallance.h @@ -0,0 +1,12 @@ +#ifndef DAPUIQMLWIDGETCHAINBALLANCE_H +#define DAPUIQMLWIDGETCHAINBALLANCE_H + +#include "DapUiQmlWidget.h" + +class DapUiQmlWidgetChainBallance : public DapUiQmlWidget +{ +public: + DapUiQmlWidgetChainBallance(); +}; + +#endif // DAPUIQMLWIDGETCHAINBALLANCE_H diff --git a/DapUiQmlWidgetChainBlockExplorer.cpp b/DapUiQmlWidgetChainBlockExplorer.cpp new file mode 100644 index 000000000..28ce99bd3 --- /dev/null +++ b/DapUiQmlWidgetChainBlockExplorer.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidgetChainBlockExplorer.h" + +DapUiQmlWidgetChainBlockExplorer::DapUiQmlWidgetChainBlockExplorer() +{ + +} diff --git a/DapUiQmlWidgetChainBlockExplorer.h b/DapUiQmlWidgetChainBlockExplorer.h new file mode 100644 index 000000000..dfcb58894 --- /dev/null +++ b/DapUiQmlWidgetChainBlockExplorer.h @@ -0,0 +1,12 @@ +#ifndef DAPUIQMLWIDGETCHAINBLOCKEXPLORER_H +#define DAPUIQMLWIDGETCHAINBLOCKEXPLORER_H + +#include "DapUiQmlWidget.h" + +class DapUiQmlWidgetChainBlockExplorer : public DapUiQmlWidget +{ +public: + DapUiQmlWidgetChainBlockExplorer(); +}; + +#endif // DAPUIQMLWIDGETCHAINBLOCKEXPLORER_H diff --git a/DapUiQmlWidgetChainBlockExplorer.ui.qml b/DapUiQmlWidgetChainBlockExplorer.ui.qml new file mode 100644 index 000000000..33225cc2e --- /dev/null +++ b/DapUiQmlWidgetChainBlockExplorer.ui.qml @@ -0,0 +1,15 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainBlockExplorer + + title: qsTr("Blockchain explorer") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Blockchain explorer") + } + +} diff --git a/DapUiQmlWidgetChainExchanges.ui.qml b/DapUiQmlWidgetChainExchanges.ui.qml new file mode 100644 index 000000000..fef680a80 --- /dev/null +++ b/DapUiQmlWidgetChainExchanges.ui.qml @@ -0,0 +1,14 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainExchanges + + title: qsTr("Exchanges") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Exchanges") + } +} diff --git a/DapUiQmlWidgetChainNodeLogs.cpp b/DapUiQmlWidgetChainNodeLogs.cpp new file mode 100644 index 000000000..36ef98448 --- /dev/null +++ b/DapUiQmlWidgetChainNodeLogs.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidgetChainNodeLogs.h" + +DapUiQmlWidgetChainNodeLogs::DapUiQmlWidgetChainNodeLogs() +{ + +} diff --git a/DapUiQmlWidgetChainNodeLogs.h b/DapUiQmlWidgetChainNodeLogs.h new file mode 100644 index 000000000..07123ebff --- /dev/null +++ b/DapUiQmlWidgetChainNodeLogs.h @@ -0,0 +1,12 @@ +#ifndef DAPUIQMLWIDGETCHAINNODELOGS_H +#define DAPUIQMLWIDGETCHAINNODELOGS_H + +#include "DapUiQmlWidget.h" + +class DapUiQmlWidgetChainNodeLogs : public DapUiQmlWidget +{ +public: + DapUiQmlWidgetChainNodeLogs(); +}; + +#endif // DAPUIQMLWIDGETCHAINNODELOGS_H diff --git a/DapUiQmlWidgetChainServicesClient.ui.qml b/DapUiQmlWidgetChainServicesClient.ui.qml new file mode 100644 index 000000000..61065a0d4 --- /dev/null +++ b/DapUiQmlWidgetChainServicesClient.ui.qml @@ -0,0 +1,14 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainServicesClient + + title: qsTr("Services client") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Services client") + } +} diff --git a/DapUiQmlWidgetChainServicesShareControl.ui.qml b/DapUiQmlWidgetChainServicesShareControl.ui.qml new file mode 100644 index 000000000..194f89e2e --- /dev/null +++ b/DapUiQmlWidgetChainServicesShareControl.ui.qml @@ -0,0 +1,14 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainServicesShareControl + + title: qsTr("Services share control") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Services share control") + } +} diff --git a/DapUiQmlWidgetChainSettings.ui.qml b/DapUiQmlWidgetChainSettings.ui.qml new file mode 100644 index 000000000..54d6ac5b4 --- /dev/null +++ b/DapUiQmlWidgetChainSettings.ui.qml @@ -0,0 +1,14 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainSettings + + title: qsTr("Settings") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Settings") + } +} diff --git a/DapUiQmlWidgetChainTransctions.cpp b/DapUiQmlWidgetChainTransctions.cpp new file mode 100644 index 000000000..654f78de1 --- /dev/null +++ b/DapUiQmlWidgetChainTransctions.cpp @@ -0,0 +1,6 @@ +#include "DapUiQmlWidgetChainTransctions.h" + +DapUiQmlWidgetChainTransctions::DapUiQmlWidgetChainTransctions() +{ + +} diff --git a/DapUiQmlWidgetChainTransctions.h b/DapUiQmlWidgetChainTransctions.h new file mode 100644 index 000000000..2595d04e6 --- /dev/null +++ b/DapUiQmlWidgetChainTransctions.h @@ -0,0 +1,12 @@ +#ifndef DAPUIQMLWIDGETCHAINTRANSCTIONS_H +#define DAPUIQMLWIDGETCHAINTRANSCTIONS_H + +#include "DapUiQmlWidget.h" + +class DapUiQmlWidgetChainTransctions : public DapUiQmlWidget +{ +public: + DapUiQmlWidgetChainTransctions(); +}; + +#endif // DAPUIQMLWIDGETCHAINTRANSCTIONS_H diff --git a/DapUiQmlWidgetChainWallet.ui.qml b/DapUiQmlWidgetChainWallet.ui.qml new file mode 100644 index 000000000..465499b49 --- /dev/null +++ b/DapUiQmlWidgetChainWallet.ui.qml @@ -0,0 +1,14 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 + +Page { + id: dapUiQmlWidgetChainWallet + + title: qsTr("Wallet") + + Text { + id: name + anchors.centerIn: parent + text: qsTr("Wallet") + } +} diff --git a/Resources/Icons/add.png b/Resources/Icons/add.png new file mode 100644 index 0000000000000000000000000000000000000000..f3c75ff7cc06fe9833492a80f6bd7ddcfefe3072 GIT binary patch literal 68310 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	*@kvG!? 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	w+^B7t6@< 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 literal 0 HcmV?d00001 diff --git a/Resources/Icons/icon.ico b/Resources/Icons/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..41230db92cb8101b8f24cf6f861082c6dfb827e1 GIT binary patch literal 2462 zcmb`Jd32QJ8O7gkCMZ-;v>pU2vDBqn6hWlOW<h9?#n2F9fDk|qu@M0w3IqfywaQ`@ z0SPLy2xXI^pinEPsF;vILPA0^OJ)rdl9^;OS%*ls^XrZM&%Zl!p84MS=FGj%a-Tb6 zjHPGq-bSxKH5<Aa)5{q1fI_#-Kt<>M?;rZ?hmV@aZPX4owDx$87PEzj^(M7uBf%Tj z;d^j7RU?+*96z7R<aC@fQgP2s!99N(-mGZ^pUoh+EQPvYH^NavT|`)6i`qK-_Ysa* zTped4Ji*Y^cM{F!EyA|fsWBS}Sii@UxQwcy!vA$9&M6tVr>9XhI~7mnG<?5HBaktd z(8v7=H5jf`TU-els)H5*zabbf)YK@FENYSsks<wr|3|`RJt6z61k4(|x8zXuNH)&V zS-6ts;(BH#?pbNL=cVF(b~=H~>G;m|#OpP9-Il^o<+N~B8az&Mdc>2}jmY8zqB%DZ z`_*_Fe*7|5#St)T@g}Um-7g!*@aJ(&n1?GR9d~*f&a_GRrl%5oej4txHY!UDu1hwY zWd=uyMdd{c&m}`ZJk6gx!nIRBqV;Qw);zsGbrbaqhZF3w5`QPhtuNsjv;fzWnW|y7 z`jm`sbq>A-i}59=;5u<1mBn{bSzvIUw{V=ZQIV%wbPkqUw0+W_*zxYfJ~K4_)uQn$ zLtDAd8-GF2wuV5LRe0~s#xr^$6_2M-z3qLjUB8YiBMbM`1vJO}IL?ot;!8utw{~1# zi9;Cve9fcS&~RuVk)yX$e@yc~VG%xM5&a^8R@GcPc_=}%60cc=^R_v-GhX33;90$i zvcVH+_S8_b?+_&)3j2)m|I&v0@0!6G<$hLCXb9~aOlbez1P^v0@Udp{sWhfqVr5U! zmcN<kl2b&MpXBPgzt9o?j_|R+QFQMZ8qO3FE2_d{Ucf&for=x3;XZ0nb<)E5g(V*8 zNF0F=M&jM|Ag<j#@b1%0j@Y?!)KFisl#W;d?PndtPx*-F1!(%Lkn%^<sNTAdj<)Zp zd}yg^TS@4amkGZ*kj9HPVx>0fE+laER97PEg>TyvxN{$&^1VJdKd|HdNSZoqCnS#W zZX+!%;EJ>wNXW+h@JxI;Z}1QG$h&w0<q25?$0gHN+?{x}A?~thcWGCp)oYFfnlIRK zzBO94{gR5U58%k{iR;4zyuz(_yutPBS7>+F(pDLz-5aINALgIJuKo05E<ZMt>fff) zUT&w&p?((Gi55#As-aODjY%V|4vVt&<G8eOI2CUX!m;fh-0$Cvf2a2Dv~;y?F)d^M zOl-nIBH6pB*^`5J&qSOrJtpnUqVdx{G)eQ3d^?eI7Io5hXN0Al`a*FPSro6GNbw)W zQ2IT`U_9IJC%B`#`gaepRSRhzvWv!1dx<RCPH4{@e1{*Vd`(Y$D~1uvw^9F%jjP|t z13Kq<+QKiL22LwK?NcPrM!||C&ae3mrLR4SbJIwCTZR(Yl1Mav2OaJv;+{I<RZ-%B zM%tSz_!s}7`q*aNOA=}PHh~&xC8+R!F5Mj0?kZe52eeBeX*K`FBnp>J<kH%waJ@bj z--ais-ZGN<**8#Y_0Vj`$t&hkWtLJlatNN>Ib73#{cooeJ}y7|ybHchq<v}g@*zX% z0gLj(@(11XpA>#pG6jp0C|&+Ej#WwcUrnNM>+Lk1$)VNhrlp{Q*1~GyB@IMRI4Lqy z@UJ?eI->ZFO4HJr^N^jg{f3fVh6_6_F7DP2AC$)(v&fs7&bf>kT%11x_wvcacJ?E# zyqb;;rD^XRq8n2QXV0KIWj66ph}ykp_}bh-_+$|+EvKbxdD=%d?XX3`cHwO`oZq2Z z#Npj9FUlN?d+9K0H~yTKgI#GCcI$B)E!z3|Wtvl}c6x;Tv6rE2U|;#ezp0!#k8g~8 zDiouxWF_VADED_0$a~X}w@LVK8_GYBXCJiaIAZ8fjd4Z$Vfp6~Vaq3)4%n&BO`vv- zb}h3D-sxQ_eMsM1IE~i!IA`y=gZu&gX>W^Bd0+$=gjulJPTpHKF67#!_0I1k65lTm z{YZPa_kY)Bojapxk32M2THYWnER#0o8ZJ+<Q#eRCWBYM_$erZ(R=-Cja&gSv6pz1= z;#oISHoH5{$v5Hq$<O4C!)ev7wy1ZV{pgJ5_m#W)*SOsfeMdX<hK=AW2KNiv#TlC2 z1Up4T4aJJ0QFbmqs`CK#=YEUQyHww8HXL@lG}nh}+W^|Nt8MQIU$bd>S3OcMTmPi} zR^HLqw1=y0)Vw5pFOVkYSX4Zt>r^|HPm6E7VyvB#Cxku3aH+o{QTpsDP1(BPHhpQy zRbM)BH>*dRbY8DI*2zy+>$gFDX?Rf{mnEIglb$mSz8TWpGpc8*5r=$V9OX|6cbMj{ zI?DTr^H!a0x^KGCx<#0qg}>fL`#PP4+qPUBi`4(;<SpuZ-7ImaHzDO7Oc6)2IHoAa iN#YRx<uSq=W^qZgDZ5Y6OXnNKBaQv=|Iq*Y{eJ-@R?d9@ literal 0 HcmV?d00001 diff --git a/Resources/Icons/icon.png b/Resources/Icons/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..52525ef9e99b9d42242dcddc0f5f5a25eaeee901 GIT binary patch literal 2671 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 literal 0 HcmV?d00001 diff --git a/kelvin.conf b/kelvin.conf new file mode 100644 index 000000000..75b2cb8ff --- /dev/null +++ b/kelvin.conf @@ -0,0 +1,6 @@ +; This file can be edited to change the style of the application +; Read "Qt Quick Controls 2 Configuration File" for details: +; http://doc.qt.io/qt-5/qtquickcontrols2-configuration.html + +[Controls] +Style=Default diff --git a/kelvin.pro b/kelvin.pro new file mode 100644 index 000000000..5356854e2 --- /dev/null +++ b/kelvin.pro @@ -0,0 +1,48 @@ +QT += quick quick widgets quickwidgets +CONFIG += c++11 + +# The following define makes your compiler emit warnings if you use +# any feature of Qt which as been marked deprecated (the exact warnings +# depend on your compiler). Please consult the documentation of the +# deprecated API in order to know how to port your code away from it. +DEFINES += QT_DEPRECATED_WARNINGS +ICON = icon.ico +# You can also make your code fail to compile if you use deprecated APIs. +# In order to do so, uncomment the following line. +# You can also select to disable deprecated APIs only up to a certain version of Qt. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 + +SOURCES += \ + main.cpp \ + DapUiQmlWidget.cpp \ + DapUiQmlWidgetChainBallance.cpp \ + DapUiQmlScreenDialog.cpp \ + DapUiQmlWidgeChainOperations.cpp \ + DapUiQmlWidgetChainBlockExplorer.cpp \ + DapUiQmlWidgetChainNodeLogs.cpp \ + DapUiQmlWidgetChainTransctions.cpp + +RESOURCES += qml.qrc + +# Additional import path used to resolve QML modules in Qt Creator's code model +QML_IMPORT_PATH = + +# Additional import path used to resolve QML modules just for Qt Quick Designer +QML_DESIGNER_IMPORT_PATH = + +# Default rules for deployment. +qnx: target.path = /tmp/$${TARGET}/bin +else: unix:!android: target.path = /opt/$${TARGET}/bin +!isEmpty(target.path): INSTALLS += target + +HEADERS += \ + DapUiQmlWidget.h \ + DapUiQmlWidgetChainBallance.h \ + DapUiQmlScreenDialog.h \ + DapUiQmlWidgeChainOperations.h \ + DapUiQmlWidgetChainBlockExplorer.h \ + DapUiQmlWidgetChainNodeLogs.h \ + DapUiQmlWidgetChainTransctions.h \ + DapUiQmlScreenDashboard.h + +DISTFILES += diff --git a/main.cpp b/main.cpp new file mode 100644 index 000000000..2a321fb37 --- /dev/null +++ b/main.cpp @@ -0,0 +1,78 @@ +#include <QApplication> +#include <QGuiApplication> +#include <QQmlApplicationEngine> +#include <QQmlContext> +#include <QIcon> +#include <QSystemSemaphore> +#include <QSharedMemory> + +/// Check for the existence of a running instance of the program. +/// @param systemSemaphore Semaphore for blocking shared resource. +/// @param memmoryApp Shared memory. +/// @param memmoryAppBagFix Shared memory for Linux system features. +/// @return If the application is running, it returns three, otherwise false. +bool checkExistenceRunningInstanceApp(QSystemSemaphore& systemSemaphore, QSharedMemory &memmoryApp, QSharedMemory &memmoryAppBagFix); + +int main(int argc, char *argv[]) +{ + QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + + // Creating a semaphore for locking external resources, as well as initializing an external resource-memory + QSystemSemaphore systemSemaphore(QString("systemSemaphore for %1").arg("Kelvin"), 1); +#ifndef Q_OS_WIN + QSharedMemory memmoryAppBagFix(QString("memmory for %1").arg("Kelvin")); +#endif + QSharedMemory memmoryApp(QString("memmory for %1").arg("Kelvin")); + // Check for the existence of a running instance of the program + bool isRunning = checkExistenceRunningInstanceApp(systemSemaphore, memmoryApp, memmoryAppBagFix); + + if(isRunning) + { + return 1; + } + + QApplication app(argc, argv); + app.setOrganizationName("DEMLABS"); + app.setOrganizationDomain("demlabs.com"); + app.setApplicationName("Kelvin"); + app.setWindowIcon(QIcon(":/Resources/Icons/icon.ico")); + + QQmlApplicationEngine engine; + engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); + + if (engine.rootObjects().isEmpty()) + return -1; + + return app.exec(); +} + +/// Check for the existence of a running instance of the program. +/// @param systemSemaphore Semaphore for blocking shared resource. +/// @param memmoryApp Shared memory. +/// @param memmoryAppBagFix Shared memory for Linux system features. +/// @return If the application is running, it returns three, otherwise false. +bool checkExistenceRunningInstanceApp(QSystemSemaphore& systemSemaphore, QSharedMemory &memmoryApp, QSharedMemory &memmoryAppBagFix) +{ + systemSemaphore.acquire(); + + if(memmoryAppBagFix.attach()) + { + memmoryAppBagFix.detach(); + } + + bool isRunning {false}; + + if (memmoryApp.attach()) + { + isRunning = true; + } + else + { + memmoryApp.create(1); + isRunning = false; + } + + systemSemaphore.release(); + + return isRunning; +} diff --git a/main.qml b/main.qml new file mode 100644 index 000000000..759dae8c9 --- /dev/null +++ b/main.qml @@ -0,0 +1,121 @@ +import QtQuick 2.9 +import QtQuick.Controls 1.4 +import QtQuick.Controls 2.4 +import QtQuick.Window 2.0 +import QtQuick.Controls.Styles 1.4 +import Qt.labs.platform 1.0 + +ApplicationWindow { + id: window + visible: true + width: 640 + height: 480 + + SystemTrayIcon { + visible: true + iconName: "Kelvin" + iconSource: "qrc:/Resources/Icons/icon.ico" + tooltip: "Kelvin Dashboard" + + menu: Menu { + MenuItem { + text: qsTr("Quit") + onTriggered: Qt.quit() + } + } + + onActivated: { + if(reason === 1){ + menu.open() + } else { + if(window.visibility === Window.Hidden) { + window.show() + window.raise() + window.requestActivate() + } else { + window.hide() + } + } + } + } + + + header: ToolBar { + contentHeight: buttomMenu.implicitHeight + + ToolButton { + id: buttomMenu + text: stackView.depth > 1 ? "\u25C0" : "\u2630" + font.pixelSize: Qt.application.font.pixelSize * 1.6 + onClicked: { + if (stackView.depth > 1) { + stackView.pop() + } else { + drawerMenu.open() + } + } + } + + Label { + id: labelTitleWidget + text: stackView.currentItem.title + anchors.centerIn: parent + } + } + + Drawer { + id: drawerMenu + width: window.width * 0.25 + height: window.height + + ListView { + id: listViewMenu + anchors.fill: parent + model: listModelMenu + + DapUiQmlListModelWidgets { + id: listModelMenu + } + + delegate: + Component { + id: listViewItemMenu + Item { + id: itemMenu + + width: listViewMenu.width + height: textItemMenu.height + 10 + + Row { + anchors.margins: 5 + anchors.fill: parent + + Text + { + id: textItemMenu + text: qsTr(name) + } + } + + MouseArea { + anchors.fill: parent + onClicked: + { + listViewMenu.currentIndex = index + stackView.push(Qt.resolvedUrl(page), StackView.Immediate) + drawerMenu.close() + } + } + } + } + highlight: Rectangle { color: "aliceblue"; radius: 5 } + focus: true + } + } + + StackView { + id: stackView + initialItem: "DapUiQmlScreenDashboard.qml" + anchors.fill: parent + } +} diff --git a/qml.qrc b/qml.qrc new file mode 100644 index 000000000..6c7357117 --- /dev/null +++ b/qml.qrc @@ -0,0 +1,20 @@ +<RCC> + <qresource prefix="/"> + <file>main.qml</file> + <file>DapUiQmlScreenDashboard.qml</file> + <file>DapUiQmlScreenMainWindow.ui.qml</file> + <file>kelvin.conf</file> + <file>DapUiQmlScreenLogin.ui.qml</file> + <file>DapUiQmlWidgetChainBlockExplorer.ui.qml</file> + <file>DapUiQmlWidgetChainExchanges.ui.qml</file> + <file>DapUiQmlWidgetChainServicesClient.ui.qml</file> + <file>DapUiQmlWidgetChainServicesShareControl.ui.qml</file> + <file>DapUiQmlWidgetChainSettings.ui.qml</file> + <file>DapUiQmlWidgetChainWallet.ui.qml</file> + <file>DapUiQmlScreenDialog.qml</file> + <file>Resources/Icons/icon.png</file> + <file>Resources/Icons/icon.ico</file> + <file>DapUiQmlListModelWidgets.qml</file> + <file>Resources/Icons/add.png</file> + </qresource> +</RCC> -- GitLab