From deaeda59d0c42f678fa83d2d281673b85cbfc487 Mon Sep 17 00:00:00 2001 From: Pokamest Nikak Date: Tue, 7 Sep 2021 19:26:58 +0300 Subject: [PATCH] ServerContainersLogic --- client/client.pro | 4 +- client/main.cpp | 4 +- client/resources.qrc | 4 +- client/ui/pages.h | 2 +- client/ui/pages_logic/GeneralSettingsLogic.h | 1 + client/ui/pages_logic/NetworkSettingsLogic.h | 1 + .../pages_logic/NewServerConfiguringLogic.h | 1 + .../pages_logic/NewServerProtocolsLogic.cpp | 4 + .../ui/pages_logic/NewServerProtocolsLogic.h | 1 + .../ui/pages_logic/ServerContainersLogic.cpp | 649 +++++++++++++++++ client/ui/pages_logic/ServerContainersLogic.h | 209 ++++++ client/ui/pages_logic/ServerListLogic.h | 1 + client/ui/pages_logic/ServerSettingsLogic.h | 1 + .../pages_logic/ServerVpnProtocolsLogic.cpp | 54 -- .../ui/pages_logic/ServerVpnProtocolsLogic.h | 35 - client/ui/pages_logic/ShareConnectionLogic.h | 2 + client/ui/pages_logic/SitesLogic.h | 1 + client/ui/pages_logic/StartPageLogic.cpp | 2 +- client/ui/pages_logic/StartPageLogic.h | 1 + client/ui/pages_logic/VpnLogic.h | 1 + client/ui/pages_logic/WizardLogic.h | 1 + ...Protocols.qml => PageServerContainers.qml} | 110 +-- ...rverSetting.qml => PageServerSettings.qml} | 2 +- client/ui/qml/main.qml | 20 +- client/ui/uilogic.cpp | 681 +----------------- client/ui/uilogic.h | 208 +----- 26 files changed, 965 insertions(+), 1035 deletions(-) create mode 100644 client/ui/pages_logic/ServerContainersLogic.cpp create mode 100644 client/ui/pages_logic/ServerContainersLogic.h delete mode 100644 client/ui/pages_logic/ServerVpnProtocolsLogic.cpp delete mode 100644 client/ui/pages_logic/ServerVpnProtocolsLogic.h rename client/ui/qml/Pages/{PageServerProtocols.qml => PageServerContainers.qml} (72%) rename client/ui/qml/Pages/{PageServerSetting.qml => PageServerSettings.qml} (98%) diff --git a/client/client.pro b/client/client.pro index edc05452..7746c6b0 100644 --- a/client/client.pro +++ b/client/client.pro @@ -40,9 +40,9 @@ HEADERS += \ ui/pages_logic/NewServerConfiguringLogic.h \ ui/pages_logic/NewServerProtocolsLogic.h \ ui/pages_logic/ProtocolSettingsLogic.h \ + ui/pages_logic/ServerContainersLogic.h \ ui/pages_logic/ServerListLogic.h \ ui/pages_logic/ServerSettingsLogic.h \ - ui/pages_logic/ServerVpnProtocolsLogic.h \ ui/pages_logic/ShareConnectionLogic.h \ ui/pages_logic/SitesLogic.h \ ui/pages_logic/StartPageLogic.h \ @@ -86,9 +86,9 @@ SOURCES += \ ui/pages_logic/NewServerConfiguringLogic.cpp \ ui/pages_logic/NewServerProtocolsLogic.cpp \ ui/pages_logic/ProtocolSettingsLogic.cpp \ + ui/pages_logic/ServerContainersLogic.cpp \ ui/pages_logic/ServerListLogic.cpp \ ui/pages_logic/ServerSettingsLogic.cpp \ - ui/pages_logic/ServerVpnProtocolsLogic.cpp \ ui/pages_logic/ShareConnectionLogic.cpp \ ui/pages_logic/SitesLogic.cpp \ ui/pages_logic/StartPageLogic.cpp \ diff --git a/client/main.cpp b/client/main.cpp index 4b6970ca..354739d0 100644 --- a/client/main.cpp +++ b/client/main.cpp @@ -21,7 +21,7 @@ #include "ui/pages_logic/ProtocolSettingsLogic.h" #include "ui/pages_logic/ServerListLogic.h" #include "ui/pages_logic/ServerSettingsLogic.h" -#include "ui/pages_logic/ServerVpnProtocolsLogic.h" +#include "ui/pages_logic/ServerContainersLogic.h" #include "ui/pages_logic/ShareConnectionLogic.h" #include "ui/pages_logic/SitesLogic.h" #include "ui/pages_logic/StartPageLogic.h" @@ -137,7 +137,7 @@ int main(int argc, char *argv[]) engine.rootContext()->setContextProperty("ProtocolSettingsLogic", uiLogic->protocolSettingsLogic()); engine.rootContext()->setContextProperty("ServerListLogic", uiLogic->serverListLogic()); engine.rootContext()->setContextProperty("ServerSettingsLogic", uiLogic->serverSettingsLogic()); - engine.rootContext()->setContextProperty("ServerVpnProtocolsLogic", uiLogic->serverVpnProtocolsLogic()); + engine.rootContext()->setContextProperty("ServerContainersLogic", uiLogic->serverVpnProtocolsLogic()); engine.rootContext()->setContextProperty("ShareConnectionLogic", uiLogic->shareConnectionLogic()); engine.rootContext()->setContextProperty("SitesLogic", uiLogic->sitesLogic()); engine.rootContext()->setContextProperty("StartPageLogic", uiLogic->startPageLogic()); diff --git a/client/resources.qrc b/client/resources.qrc index 6899b2ee..840d878c 100644 --- a/client/resources.qrc +++ b/client/resources.qrc @@ -73,8 +73,8 @@ ui/qml/Pages/PageNewServerConfiguring.qml ui/qml/Pages/PageNewServerProtocols.qml ui/qml/Pages/PageServerList.qml - ui/qml/Pages/PageServerProtocols.qml - ui/qml/Pages/PageServerSetting.qml + ui/qml/Pages/PageServerContainers.qml + ui/qml/Pages/PageServerSettings.qml ui/qml/Pages/PageSetupWizard.qml ui/qml/Pages/PageSetupWizardHighLevel.qml ui/qml/Pages/PageSetupWizardLowLevel.qml diff --git a/client/ui/pages.h b/client/ui/pages.h index bfe8f018..2ee0eede 100644 --- a/client/ui/pages.h +++ b/client/ui/pages.h @@ -10,7 +10,7 @@ Q_NAMESPACE enum Page {Start = 0, NewServer, NewServerProtocols, Vpn, Wizard, WizardLow, WizardMedium, WizardHigh, WizardVpnMode, ServerConfiguring, GeneralSettings, AppSettings, NetworkSettings, ServerSettings, - ServerVpnProtocols, ServersList, ShareConnection, Sites, + ServerContainers, ServersList, ShareConnection, Sites, OpenVpnSettings, ShadowSocksSettings, CloakSettings}; Q_ENUM_NS(Page) diff --git a/client/ui/pages_logic/GeneralSettingsLogic.h b/client/ui/pages_logic/GeneralSettingsLogic.h index cad3c59c..d0713b94 100644 --- a/client/ui/pages_logic/GeneralSettingsLogic.h +++ b/client/ui/pages_logic/GeneralSettingsLogic.h @@ -41,6 +41,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } bool m_pushButtonGeneralSettingsShareConnectionEnable; diff --git a/client/ui/pages_logic/NetworkSettingsLogic.h b/client/ui/pages_logic/NetworkSettingsLogic.h index 0f6b8e45..647ff0a3 100644 --- a/client/ui/pages_logic/NetworkSettingsLogic.h +++ b/client/ui/pages_logic/NetworkSettingsLogic.h @@ -52,6 +52,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } QString m_lineEditNetworkSettingsDns1Text; QString m_lineEditNetworkSettingsDns2Text; diff --git a/client/ui/pages_logic/NewServerConfiguringLogic.h b/client/ui/pages_logic/NewServerConfiguringLogic.h index fbf90326..66b85e09 100644 --- a/client/ui/pages_logic/NewServerConfiguringLogic.h +++ b/client/ui/pages_logic/NewServerConfiguringLogic.h @@ -62,6 +62,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } double m_progressBarNewServerConfiguringValue; bool m_pageNewServerConfiguringEnabled; diff --git a/client/ui/pages_logic/NewServerProtocolsLogic.cpp b/client/ui/pages_logic/NewServerProtocolsLogic.cpp index cbcf5f1f..ae303aee 100644 --- a/client/ui/pages_logic/NewServerProtocolsLogic.cpp +++ b/client/ui/pages_logic/NewServerProtocolsLogic.cpp @@ -1,4 +1,5 @@ #include "NewServerProtocolsLogic.h" +#include "../uilogic.h" using namespace amnezia; using namespace PageEnumNS; @@ -24,6 +25,9 @@ NewServerProtocolsLogic::NewServerProtocolsLogic(UiLogic *uiLogic, QObject *pare { setFrameNewServerSettingsParentWireguardVisible(false); + connect(this, &NewServerProtocolsLogic::pushButtonNewServerConnectConfigureClicked, this, [this](){ + m_uiLogic->installServer(getInstallConfigsFromProtocolsPage()); + }); } bool NewServerProtocolsLogic::getFrameNewServerSettingsParentWireguardVisible() const diff --git a/client/ui/pages_logic/NewServerProtocolsLogic.h b/client/ui/pages_logic/NewServerProtocolsLogic.h index fe07ea87..2230d2bf 100644 --- a/client/ui/pages_logic/NewServerProtocolsLogic.h +++ b/client/ui/pages_logic/NewServerProtocolsLogic.h @@ -100,6 +100,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } bool m_frameNewServerSettingsParentWireguardVisible; diff --git a/client/ui/pages_logic/ServerContainersLogic.cpp b/client/ui/pages_logic/ServerContainersLogic.cpp new file mode 100644 index 00000000..cd539d04 --- /dev/null +++ b/client/ui/pages_logic/ServerContainersLogic.cpp @@ -0,0 +1,649 @@ +#include "ServerContainersLogic.h" +#include "ShareConnectionLogic.h" +#include "protocols/CloakLogic.h" +#include "protocols/OpenVpnLogic.h" +#include "protocols/ShadowSocksLogic.h" + +#include "core/servercontroller.h" +#include + +#include "../uilogic.h" + +using namespace amnezia; +using namespace PageEnumNS; + +ServerContainersLogic::ServerContainersLogic(UiLogic *uiLogic, QObject *parent): + QObject(parent), + m_uiLogic(uiLogic), + m_pageServerContainersEnabled{true}, + m_progressBarProtocolsContainerReinstallValue{0}, + m_progressBarProtocolsContainerReinstallMaximium{100}, + m_pushButtonProtoOpenvpnContInstallChecked{false}, + m_pushButtonProtoSsOpenvpnContInstallChecked{false}, + m_pushButtonProtoCloakOpenvpnContInstallChecked{false}, + m_pushButtonProtoWireguardContInstallChecked{false}, + m_pushButtonProtoOpenvpnContInstallEnabled{false}, + m_pushButtonProtoSsOpenvpnContInstallEnabled{false}, + m_pushButtonProtoCloakOpenvpnContInstallEnabled{false}, + m_pushButtonProtoWireguardContInstallEnabled{false}, + m_pushButtonProtoOpenvpnContDefaultChecked{false}, + m_pushButtonProtoSsOpenvpnContDefaultChecked{false}, + m_pushButtonProtoCloakOpenvpnContDefaultChecked{false}, + m_pushButtonProtoWireguardContDefaultChecked{false}, + m_pushButtonProtoOpenvpnContDefaultVisible{true}, + m_pushButtonProtoSsOpenvpnContDefaultVisible{false}, + m_pushButtonProtoCloakOpenvpnContDefaultVisible{false}, + m_pushButtonProtoWireguardContDefaultVisible{false}, + m_pushButtonProtoOpenvpnContShareVisible{false}, + m_pushButtonProtoSsOpenvpnContShareVisible{false}, + m_pushButtonProtoCloakOpenvpnContShareVisible{false}, + m_pushButtonProtoWireguardContShareVisible{false}, + m_frameOpenvpnSettingsVisible{true}, + m_frameOpenvpnSsSettingsVisible{true}, + m_frameOpenvpnSsCloakSettingsVisible{true}, + m_progressBarProtocolsContainerReinstallVisible{false}, + m_frameWireguardSettingsVisible{false}, + m_frameWireguardVisible{false} +{ + setupProtocolsPageConnections(); + + setFrameWireguardSettingsVisible(false); + setFrameWireguardVisible(false); +} + +void ServerContainersLogic::updateServerContainersPage() +{ + setProgressBarProtocolsContainerReinstallVisible(false); + + auto containers = m_settings.containers(uiLogic()->selectedServerIndex); + DockerContainer defaultContainer = m_settings.defaultContainer(uiLogic()->selectedServerIndex); + bool haveAuthData = m_settings.haveAuthData(uiLogic()->selectedServerIndex); + + // all containers + QList allContainers { + DockerContainer::OpenVpn, + DockerContainer::OpenVpnOverShadowSocks, + DockerContainer::OpenVpnOverCloak, + DockerContainer::WireGuard + }; + + using SetVisibleFunc = std::function; + using SetCheckedFunc = std::function; + using SetEnabledFunc = std::function; + QList installButtonsCheckedFunc { + [this](bool checked) ->void {setPushButtonProtoOpenvpnContInstallChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoSsOpenvpnContInstallChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoCloakOpenvpnContInstallChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoWireguardContInstallChecked(checked);}, + }; + QList installButtonsEnabledFunc { + [this](bool enabled) ->void {setPushButtonProtoOpenvpnContInstallEnabled(enabled);}, + [this](bool enabled) ->void {setPushButtonProtoSsOpenvpnContInstallEnabled(enabled);}, + [this](bool enabled) ->void {setPushButtonProtoCloakOpenvpnContInstallEnabled(enabled);}, + [this](bool enabled) ->void {setPushButtonProtoWireguardContInstallEnabled(enabled);}, + }; + + QList defaultButtonsCheckedFunc { + [this](bool checked) ->void {setPushButtonProtoOpenvpnContDefaultChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoSsOpenvpnContDefaultChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoCloakOpenvpnContDefaultChecked(checked);}, + [this](bool checked) ->void {setPushButtonProtoWireguardContDefaultChecked(checked);}, + }; + QList defaultButtonsVisibleFunc { + [this](bool visible) ->void {setPushButtonProtoOpenvpnContDefaultVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoSsOpenvpnContDefaultVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoCloakOpenvpnContDefaultVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoWireguardContDefaultVisible(visible);}, + }; + + QList shareButtonsVisibleFunc { + [this](bool visible) ->void {setPushButtonProtoOpenvpnContShareVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoSsOpenvpnContShareVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoCloakOpenvpnContShareVisible(visible);}, + [this](bool visible) ->void {setPushButtonProtoWireguardContShareVisible(visible);}, + }; + + QList framesVisibleFunc { + [this](bool visible) ->void {setFrameOpenvpnSettingsVisible(visible);}, + [this](bool visible) ->void {setFrameOpenvpnSsSettingsVisible(visible);}, + [this](bool visible) ->void {setFrameOpenvpnSsCloakSettingsVisible(visible);}, + [this](bool visible) ->void {setFrameWireguardSettingsVisible(visible);}, + }; + + for (int i = 0; i < allContainers.size(); ++i) { + defaultButtonsCheckedFunc.at(i)(defaultContainer == allContainers.at(i)); + defaultButtonsVisibleFunc.at(i)(haveAuthData && containers.contains(allContainers.at(i))); + shareButtonsVisibleFunc.at(i)(haveAuthData && containers.contains(allContainers.at(i))); + installButtonsCheckedFunc.at(i)(containers.contains(allContainers.at(i))); + installButtonsEnabledFunc.at(i)(haveAuthData); + framesVisibleFunc.at(i)(containers.contains(allContainers.at(i))); + } +} + + +void ServerContainersLogic::setupProtocolsPageConnections() +{ + QJsonObject openvpnConfig; + + // all containers + QList containers { + DockerContainer::OpenVpn, + DockerContainer::OpenVpnOverShadowSocks, + DockerContainer::OpenVpnOverCloak, + DockerContainer::WireGuard + }; + using ButtonClickedFunc = void (ServerContainersLogic::*)(bool); + using ButtonSetEnabledFunc = std::function; + + // default buttons + QList defaultButtonClickedSig { + &ServerContainersLogic::pushButtonProtoOpenvpnContDefaultClicked, + &ServerContainersLogic::pushButtonProtoSsOpenvpnContDefaultClicked, + &ServerContainersLogic::pushButtonProtoCloakOpenvpnContDefaultClicked, + &ServerContainersLogic::pushButtonProtoWireguardContDefaultClicked + }; + + for (int i = 0; i < containers.size(); ++i) { + connect(this, defaultButtonClickedSig.at(i), [this, containers, i](bool){ + qDebug() << "clmm" << i; + m_settings.setDefaultContainer(uiLogic()->selectedServerIndex, containers.at(i)); + updateServerContainersPage(); + }); + } + + // install buttons + QList installButtonsClickedSig { + &ServerContainersLogic::pushButtonProtoOpenvpnContInstallClicked, + &ServerContainersLogic::pushButtonProtoSsOpenvpnContInstallClicked, + &ServerContainersLogic::pushButtonProtoCloakOpenvpnContInstallClicked, + &ServerContainersLogic::pushButtonProtoWireguardContInstallClicked, + }; + QList installButtonsSetEnabledFunc { + [this] (bool enabled) -> void { + setPushButtonProtoOpenvpnContInstallEnabled(enabled); + }, + [this] (bool enabled) -> void { + setPushButtonProtoSsOpenvpnContInstallEnabled(enabled); + }, + [this] (bool enabled) -> void { + setPushButtonProtoCloakOpenvpnContInstallEnabled(enabled); + }, + [this] (bool enabled) -> void { + setPushButtonProtoWireguardContInstallEnabled(enabled); + }, + }; + + for (int i = 0; i < containers.size(); ++i) { + ButtonClickedFunc buttonClickedFunc = installButtonsClickedSig.at(i); + ButtonSetEnabledFunc buttonSetEnabledFunc = installButtonsSetEnabledFunc.at(i); + DockerContainer container = containers.at(i); + + connect(this, buttonClickedFunc, [this, container, buttonSetEnabledFunc](bool checked){ + if (checked) { + UiLogic::PageFunc page_server_containers; + page_server_containers.setEnabledFunc = [this] (bool enabled) -> void { + setPageServerContainersEnabled(enabled); + }; + UiLogic::ButtonFunc no_button; + UiLogic::LabelFunc no_label; + UiLogic::ProgressFunc progressBar_protocols_container_reinstall; + progressBar_protocols_container_reinstall.setVisibleFunc = [this] (bool visible) ->void { + setProgressBarProtocolsContainerReinstallVisible(visible); + }; + progressBar_protocols_container_reinstall.setValueFunc = [this] (int value) ->void { + setProgressBarProtocolsContainerReinstallValue(value); + }; + progressBar_protocols_container_reinstall.getValueFunc = [this] (void) -> int { + return getProgressBarProtocolsContainerReinstallValue(); + }; + progressBar_protocols_container_reinstall.getMaximiumFunc = [this] (void) -> int { + return getProgressBarProtocolsContainerReinstallMaximium(); + }; + + ErrorCode e = uiLogic()->doInstallAction([this, container](){ + return ServerController::setupContainer(m_settings.serverCredentials(uiLogic()->selectedServerIndex), container); + }, + page_server_containers, progressBar_protocols_container_reinstall, + no_button, no_label); + + if (!e) { + m_settings.setContainerConfig(uiLogic()->selectedServerIndex, container, QJsonObject()); + m_settings.setDefaultContainer(uiLogic()->selectedServerIndex, container); + } + } + else { + buttonSetEnabledFunc(false); + ErrorCode e = ServerController::removeContainer(m_settings.serverCredentials(uiLogic()->selectedServerIndex), container); + m_settings.removeContainerConfig(uiLogic()->selectedServerIndex, container); + buttonSetEnabledFunc(true); + + if (m_settings.defaultContainer(uiLogic()->selectedServerIndex) == container) { + const auto &c = m_settings.containers(uiLogic()->selectedServerIndex); + if (c.isEmpty()) m_settings.setDefaultContainer(uiLogic()->selectedServerIndex, DockerContainer::None); + else m_settings.setDefaultContainer(uiLogic()->selectedServerIndex, c.keys().first()); + } + } + + updateServerContainersPage(); + }); + } + + // share buttons + QList shareButtonsClickedSig { + &ServerContainersLogic::pushButtonProtoOpenvpnContShareClicked, + &ServerContainersLogic::pushButtonProtoSsOpenvpnContShareClicked, + &ServerContainersLogic::pushButtonProtoCloakOpenvpnContShareClicked, + &ServerContainersLogic::pushButtonProtoWireguardContShareClicked, + }; + + for (int i = 0; i < containers.size(); ++i) { + ButtonClickedFunc buttonClickedFunc = shareButtonsClickedSig.at(i); + DockerContainer container = containers.at(i); + + connect(this, buttonClickedFunc, [this, container](bool){ + uiLogic()->shareConnectionLogic()->updateSharingPage(uiLogic()->selectedServerIndex, m_settings.serverCredentials(uiLogic()->selectedServerIndex), container); + uiLogic()->goToPage(Page::ShareConnection); + }); + } +} + +bool ServerContainersLogic::getPageServerContainersEnabled() const +{ + return m_pageServerContainersEnabled; +} + +void ServerContainersLogic::setPageServerContainersEnabled(bool pageServerContainersEnabled) +{ + if (m_pageServerContainersEnabled != pageServerContainersEnabled) { + m_pageServerContainersEnabled = pageServerContainersEnabled; + emit pageServerContainersEnabledChanged(); + } +} + +int ServerContainersLogic::getProgressBarProtocolsContainerReinstallValue() const +{ + return m_progressBarProtocolsContainerReinstallValue; +} + +void ServerContainersLogic::setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue) +{ + if (m_progressBarProtocolsContainerReinstallValue != progressBarProtocolsContainerReinstallValue) { + m_progressBarProtocolsContainerReinstallValue = progressBarProtocolsContainerReinstallValue; + emit progressBarProtocolsContainerReinstallValueChanged(); + } +} + +int ServerContainersLogic::getProgressBarProtocolsContainerReinstallMaximium() const +{ + return m_progressBarProtocolsContainerReinstallMaximium; +} + +void ServerContainersLogic::setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium) +{ + if (m_progressBarProtocolsContainerReinstallMaximium != progressBarProtocolsContainerReinstallMaximium) { + m_progressBarProtocolsContainerReinstallMaximium = progressBarProtocolsContainerReinstallMaximium; + emit progressBarProtocolsContainerReinstallMaximiumChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoOpenvpnContInstallChecked() const +{ + return m_pushButtonProtoOpenvpnContInstallChecked; +} + +void ServerContainersLogic::setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked) +{ + if (m_pushButtonProtoOpenvpnContInstallChecked != pushButtonProtoOpenvpnContInstallChecked) { + m_pushButtonProtoOpenvpnContInstallChecked = pushButtonProtoOpenvpnContInstallChecked; + emit pushButtonProtoOpenvpnContInstallCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoSsOpenvpnContInstallChecked() const +{ + return m_pushButtonProtoSsOpenvpnContInstallChecked; +} + +void ServerContainersLogic::setPushButtonProtoSsOpenvpnContInstallChecked(bool pushButtonProtoSsOpenvpnContInstallChecked) +{ + if (m_pushButtonProtoSsOpenvpnContInstallChecked != pushButtonProtoSsOpenvpnContInstallChecked) { + m_pushButtonProtoSsOpenvpnContInstallChecked = pushButtonProtoSsOpenvpnContInstallChecked; + emit pushButtonProtoSsOpenvpnContInstallCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoCloakOpenvpnContInstallChecked() const +{ + return m_pushButtonProtoCloakOpenvpnContInstallChecked; +} + +void ServerContainersLogic::setPushButtonProtoCloakOpenvpnContInstallChecked(bool pushButtonProtoCloakOpenvpnContInstallChecked) +{ + if (m_pushButtonProtoCloakOpenvpnContInstallChecked != pushButtonProtoCloakOpenvpnContInstallChecked) { + m_pushButtonProtoCloakOpenvpnContInstallChecked = pushButtonProtoCloakOpenvpnContInstallChecked; + emit pushButtonProtoCloakOpenvpnContInstallCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoWireguardContInstallChecked() const +{ + return m_pushButtonProtoWireguardContInstallChecked; +} + +void ServerContainersLogic::setPushButtonProtoWireguardContInstallChecked(bool pushButtonProtoWireguardContInstallChecked) +{ + if (m_pushButtonProtoWireguardContInstallChecked != pushButtonProtoWireguardContInstallChecked) { + m_pushButtonProtoWireguardContInstallChecked = pushButtonProtoWireguardContInstallChecked; + emit pushButtonProtoWireguardContInstallCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoOpenvpnContInstallEnabled() const +{ + return m_pushButtonProtoOpenvpnContInstallEnabled; +} + +void ServerContainersLogic::setPushButtonProtoOpenvpnContInstallEnabled(bool pushButtonProtoOpenvpnContInstallEnabled) +{ + if (m_pushButtonProtoOpenvpnContInstallEnabled != pushButtonProtoOpenvpnContInstallEnabled) { + m_pushButtonProtoOpenvpnContInstallEnabled = pushButtonProtoOpenvpnContInstallEnabled; + emit pushButtonProtoOpenvpnContInstallEnabledChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoSsOpenvpnContInstallEnabled() const +{ + return m_pushButtonProtoSsOpenvpnContInstallEnabled; +} + +void ServerContainersLogic::setPushButtonProtoSsOpenvpnContInstallEnabled(bool pushButtonProtoSsOpenvpnContInstallEnabled) +{ + if (m_pushButtonProtoSsOpenvpnContInstallEnabled != pushButtonProtoSsOpenvpnContInstallEnabled) { + m_pushButtonProtoSsOpenvpnContInstallEnabled = pushButtonProtoSsOpenvpnContInstallEnabled; + emit pushButtonProtoSsOpenvpnContInstallEnabledChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoCloakOpenvpnContInstallEnabled() const +{ + return m_pushButtonProtoCloakOpenvpnContInstallEnabled; +} + +void ServerContainersLogic::setPushButtonProtoCloakOpenvpnContInstallEnabled(bool pushButtonProtoCloakOpenvpnContInstallEnabled) +{ + if (m_pushButtonProtoCloakOpenvpnContInstallEnabled != pushButtonProtoCloakOpenvpnContInstallEnabled) { + m_pushButtonProtoCloakOpenvpnContInstallEnabled = pushButtonProtoCloakOpenvpnContInstallEnabled; + emit pushButtonProtoCloakOpenvpnContInstallEnabledChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoWireguardContInstallEnabled() const +{ + return m_pushButtonProtoWireguardContInstallEnabled; +} + +void ServerContainersLogic::setPushButtonProtoWireguardContInstallEnabled(bool pushButtonProtoWireguardContInstallEnabled) +{ + if (m_pushButtonProtoWireguardContInstallEnabled != pushButtonProtoWireguardContInstallEnabled) { + m_pushButtonProtoWireguardContInstallEnabled = pushButtonProtoWireguardContInstallEnabled; + emit pushButtonProtoWireguardContInstallEnabledChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoOpenvpnContDefaultChecked() const +{ + return m_pushButtonProtoOpenvpnContDefaultChecked; +} + +void ServerContainersLogic::setPushButtonProtoOpenvpnContDefaultChecked(bool pushButtonProtoOpenvpnContDefaultChecked) +{ + if (m_pushButtonProtoOpenvpnContDefaultChecked != pushButtonProtoOpenvpnContDefaultChecked) { + m_pushButtonProtoOpenvpnContDefaultChecked = pushButtonProtoOpenvpnContDefaultChecked; + emit pushButtonProtoOpenvpnContDefaultCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoSsOpenvpnContDefaultChecked() const +{ + return m_pushButtonProtoSsOpenvpnContDefaultChecked; +} + +void ServerContainersLogic::setPushButtonProtoSsOpenvpnContDefaultChecked(bool pushButtonProtoSsOpenvpnContDefaultChecked) +{ + if (m_pushButtonProtoSsOpenvpnContDefaultChecked != pushButtonProtoSsOpenvpnContDefaultChecked) { + m_pushButtonProtoSsOpenvpnContDefaultChecked = pushButtonProtoSsOpenvpnContDefaultChecked; + emit pushButtonProtoSsOpenvpnContDefaultCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoCloakOpenvpnContDefaultChecked() const +{ + return m_pushButtonProtoCloakOpenvpnContDefaultChecked; +} + +void ServerContainersLogic::setPushButtonProtoCloakOpenvpnContDefaultChecked(bool pushButtonProtoCloakOpenvpnContDefaultChecked) +{ + if (m_pushButtonProtoCloakOpenvpnContDefaultChecked != pushButtonProtoCloakOpenvpnContDefaultChecked) { + m_pushButtonProtoCloakOpenvpnContDefaultChecked = pushButtonProtoCloakOpenvpnContDefaultChecked; + emit pushButtonProtoCloakOpenvpnContDefaultCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoWireguardContDefaultChecked() const +{ + return m_pushButtonProtoWireguardContDefaultChecked; +} + +void ServerContainersLogic::setPushButtonProtoWireguardContDefaultChecked(bool pushButtonProtoWireguardContDefaultChecked) +{ + if (m_pushButtonProtoWireguardContDefaultChecked != pushButtonProtoWireguardContDefaultChecked) { + m_pushButtonProtoWireguardContDefaultChecked = pushButtonProtoWireguardContDefaultChecked; + emit pushButtonProtoWireguardContDefaultCheckedChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoOpenvpnContDefaultVisible() const +{ + return m_pushButtonProtoOpenvpnContDefaultVisible; +} + +void ServerContainersLogic::setPushButtonProtoOpenvpnContDefaultVisible(bool pushButtonProtoOpenvpnContDefaultVisible) +{ + if (m_pushButtonProtoOpenvpnContDefaultVisible != pushButtonProtoOpenvpnContDefaultVisible) { + m_pushButtonProtoOpenvpnContDefaultVisible = pushButtonProtoOpenvpnContDefaultVisible; + emit pushButtonProtoOpenvpnContDefaultVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoSsOpenvpnContDefaultVisible() const +{ + return m_pushButtonProtoSsOpenvpnContDefaultVisible; +} + +void ServerContainersLogic::setPushButtonProtoSsOpenvpnContDefaultVisible(bool pushButtonProtoSsOpenvpnContDefaultVisible) +{ + if (m_pushButtonProtoSsOpenvpnContDefaultVisible != pushButtonProtoSsOpenvpnContDefaultVisible) { + m_pushButtonProtoSsOpenvpnContDefaultVisible = pushButtonProtoSsOpenvpnContDefaultVisible; + emit pushButtonProtoSsOpenvpnContDefaultVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoCloakOpenvpnContDefaultVisible() const +{ + return m_pushButtonProtoCloakOpenvpnContDefaultVisible; +} + +void ServerContainersLogic::setPushButtonProtoCloakOpenvpnContDefaultVisible(bool pushButtonProtoCloakOpenvpnContDefaultVisible) +{ + if (m_pushButtonProtoCloakOpenvpnContDefaultVisible != pushButtonProtoCloakOpenvpnContDefaultVisible) { + m_pushButtonProtoCloakOpenvpnContDefaultVisible = pushButtonProtoCloakOpenvpnContDefaultVisible; + emit pushButtonProtoCloakOpenvpnContDefaultVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoWireguardContDefaultVisible() const +{ + return m_pushButtonProtoWireguardContDefaultVisible; +} + +void ServerContainersLogic::setPushButtonProtoWireguardContDefaultVisible(bool pushButtonProtoWireguardContDefaultVisible) +{ + if (m_pushButtonProtoWireguardContDefaultVisible != pushButtonProtoWireguardContDefaultVisible) { + m_pushButtonProtoWireguardContDefaultVisible = pushButtonProtoWireguardContDefaultVisible; + emit pushButtonProtoWireguardContDefaultVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoOpenvpnContShareVisible() const +{ + return m_pushButtonProtoOpenvpnContShareVisible; +} + +void ServerContainersLogic::setPushButtonProtoOpenvpnContShareVisible(bool pushButtonProtoOpenvpnContShareVisible) +{ + if (m_pushButtonProtoOpenvpnContShareVisible != pushButtonProtoOpenvpnContShareVisible) { + m_pushButtonProtoOpenvpnContShareVisible = pushButtonProtoOpenvpnContShareVisible; + emit pushButtonProtoOpenvpnContShareVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoSsOpenvpnContShareVisible() const +{ + return m_pushButtonProtoSsOpenvpnContShareVisible; +} + +void ServerContainersLogic::setPushButtonProtoSsOpenvpnContShareVisible(bool pushButtonProtoSsOpenvpnContShareVisible) +{ + if (m_pushButtonProtoSsOpenvpnContShareVisible != pushButtonProtoSsOpenvpnContShareVisible) { + m_pushButtonProtoSsOpenvpnContShareVisible = pushButtonProtoSsOpenvpnContShareVisible; + emit pushButtonProtoSsOpenvpnContShareVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoCloakOpenvpnContShareVisible() const +{ + return m_pushButtonProtoCloakOpenvpnContShareVisible; +} + +void ServerContainersLogic::setPushButtonProtoCloakOpenvpnContShareVisible(bool pushButtonProtoCloakOpenvpnContShareVisible) +{ + if (m_pushButtonProtoCloakOpenvpnContShareVisible != pushButtonProtoCloakOpenvpnContShareVisible) { + m_pushButtonProtoCloakOpenvpnContShareVisible = pushButtonProtoCloakOpenvpnContShareVisible; + emit pushButtonProtoCloakOpenvpnContShareVisibleChanged(); + } +} + +bool ServerContainersLogic::getPushButtonProtoWireguardContShareVisible() const +{ + return m_pushButtonProtoWireguardContShareVisible; +} + +void ServerContainersLogic::setPushButtonProtoWireguardContShareVisible(bool pushButtonProtoWireguardContShareVisible) +{ + if (m_pushButtonProtoWireguardContShareVisible != pushButtonProtoWireguardContShareVisible) { + m_pushButtonProtoWireguardContShareVisible = pushButtonProtoWireguardContShareVisible; + emit pushButtonProtoWireguardContShareVisibleChanged(); + } +} + +bool ServerContainersLogic::getFrameOpenvpnSettingsVisible() const +{ + return m_frameOpenvpnSettingsVisible; +} + +void ServerContainersLogic::setFrameOpenvpnSettingsVisible(bool frameOpenvpnSettingsVisible) +{ + if (m_frameOpenvpnSettingsVisible != frameOpenvpnSettingsVisible) { + m_frameOpenvpnSettingsVisible = frameOpenvpnSettingsVisible; + emit frameOpenvpnSettingsVisibleChanged(); + } +} + +bool ServerContainersLogic::getFrameOpenvpnSsSettingsVisible() const +{ + return m_frameOpenvpnSsSettingsVisible; +} + +void ServerContainersLogic::setFrameOpenvpnSsSettingsVisible(bool frameOpenvpnSsSettingsVisible) +{ + if (m_frameOpenvpnSsSettingsVisible != frameOpenvpnSsSettingsVisible) { + m_frameOpenvpnSsSettingsVisible = frameOpenvpnSsSettingsVisible; + emit frameOpenvpnSsSettingsVisibleChanged(); + } +} + +bool ServerContainersLogic::getFrameOpenvpnSsCloakSettingsVisible() const +{ + return m_frameOpenvpnSsCloakSettingsVisible; +} + +void ServerContainersLogic::setFrameOpenvpnSsCloakSettingsVisible(bool frameOpenvpnSsCloakSettingsVisible) +{ + if (m_frameOpenvpnSsCloakSettingsVisible != frameOpenvpnSsCloakSettingsVisible) { + m_frameOpenvpnSsCloakSettingsVisible = frameOpenvpnSsCloakSettingsVisible; + emit frameOpenvpnSsCloakSettingsVisibleChanged(); + } +} + +bool ServerContainersLogic::getProgressBarProtocolsContainerReinstallVisible() const +{ + return m_progressBarProtocolsContainerReinstallVisible; +} + +void ServerContainersLogic::setProgressBarProtocolsContainerReinstallVisible(bool progressBarProtocolsContainerReinstallVisible) +{ + if (m_progressBarProtocolsContainerReinstallVisible != progressBarProtocolsContainerReinstallVisible) { + m_progressBarProtocolsContainerReinstallVisible = progressBarProtocolsContainerReinstallVisible; + emit progressBarProtocolsContainerReinstallVisibleChanged(); + } +} + +bool ServerContainersLogic::getFrameWireguardSettingsVisible() const +{ + return m_frameWireguardSettingsVisible; +} + +void ServerContainersLogic::setFrameWireguardSettingsVisible(bool frameWireguardSettingsVisible) +{ + if (m_frameWireguardSettingsVisible != frameWireguardSettingsVisible) { + m_frameWireguardSettingsVisible = frameWireguardSettingsVisible; + emit frameWireguardSettingsVisibleChanged(); + } +} + +bool ServerContainersLogic::getFrameWireguardVisible() const +{ + return m_frameWireguardVisible; +} + +void ServerContainersLogic::setFrameWireguardVisible(bool frameWireguardVisible) +{ + if (m_frameWireguardVisible != frameWireguardVisible) { + m_frameWireguardVisible = frameWireguardVisible; + emit frameWireguardVisibleChanged(); + } +} + +void ServerContainersLogic::onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked() +{ + uiLogic()->selectedDockerContainer = DockerContainer::OpenVpnOverCloak; + uiLogic()->openVpnLogic()->updateOpenVpnPage(m_settings.protocolConfig(uiLogic()->selectedServerIndex, uiLogic()->selectedDockerContainer, Protocol::OpenVpn), + uiLogic()->selectedDockerContainer, m_settings.haveAuthData(uiLogic()->selectedServerIndex)); + uiLogic()->goToPage(Page::OpenVpnSettings); +} + +void ServerContainersLogic::onPushButtonProtoCloakOpenvpnContSsConfigClicked() +{ + uiLogic()->selectedDockerContainer = DockerContainer::OpenVpnOverCloak; + uiLogic()->shadowSocksLogic()->updateShadowSocksPage(m_settings.protocolConfig(uiLogic()->selectedServerIndex, uiLogic()->selectedDockerContainer, Protocol::ShadowSocks), + uiLogic()->selectedDockerContainer, m_settings.haveAuthData(uiLogic()->selectedServerIndex)); + uiLogic()->goToPage(Page::ShadowSocksSettings); +} + +void ServerContainersLogic::onPushButtonProtoCloakOpenvpnContCloakConfigClicked() +{ + uiLogic()->selectedDockerContainer = DockerContainer::OpenVpnOverCloak; + uiLogic()->cloakLogic()->updateCloakPage(m_settings.protocolConfig(uiLogic()->selectedServerIndex, uiLogic()->selectedDockerContainer, Protocol::Cloak), + uiLogic()->selectedDockerContainer, m_settings.haveAuthData(uiLogic()->selectedServerIndex)); + uiLogic()->goToPage(Page::CloakSettings); +} diff --git a/client/ui/pages_logic/ServerContainersLogic.h b/client/ui/pages_logic/ServerContainersLogic.h new file mode 100644 index 00000000..75983799 --- /dev/null +++ b/client/ui/pages_logic/ServerContainersLogic.h @@ -0,0 +1,209 @@ +#ifndef SERVER_CONTAINERS_LOGIC_H +#define SERVER_CONTAINERS_LOGIC_H + +#include "../pages.h" +#include "settings.h" + +class UiLogic; + +class ServerContainersLogic : public QObject +{ + Q_OBJECT + +public: + Q_INVOKABLE void updateServerContainersPage(); + + Q_PROPERTY(bool pageServerContainersEnabled READ getPageServerContainersEnabled WRITE setPageServerContainersEnabled NOTIFY pageServerContainersEnabledChanged) + Q_PROPERTY(int progressBarProtocolsContainerReinstallValue READ getProgressBarProtocolsContainerReinstallValue WRITE setProgressBarProtocolsContainerReinstallValue NOTIFY progressBarProtocolsContainerReinstallValueChanged) + Q_PROPERTY(int progressBarProtocolsContainerReinstallMaximium READ getProgressBarProtocolsContainerReinstallMaximium WRITE setProgressBarProtocolsContainerReinstallMaximium NOTIFY progressBarProtocolsContainerReinstallMaximiumChanged) + + Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallChecked READ getPushButtonProtoOpenvpnContInstallChecked WRITE setPushButtonProtoOpenvpnContInstallChecked NOTIFY pushButtonProtoOpenvpnContInstallCheckedChanged) + Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallChecked READ getPushButtonProtoSsOpenvpnContInstallChecked WRITE setPushButtonProtoSsOpenvpnContInstallChecked NOTIFY pushButtonProtoSsOpenvpnContInstallCheckedChanged) + Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallChecked READ getPushButtonProtoCloakOpenvpnContInstallChecked WRITE setPushButtonProtoCloakOpenvpnContInstallChecked NOTIFY pushButtonProtoCloakOpenvpnContInstallCheckedChanged) + Q_PROPERTY(bool pushButtonProtoWireguardContInstallChecked READ getPushButtonProtoWireguardContInstallChecked WRITE setPushButtonProtoWireguardContInstallChecked NOTIFY pushButtonProtoWireguardContInstallCheckedChanged) + Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallEnabled READ getPushButtonProtoOpenvpnContInstallEnabled WRITE setPushButtonProtoOpenvpnContInstallEnabled NOTIFY pushButtonProtoOpenvpnContInstallEnabledChanged) + Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallEnabled READ getPushButtonProtoSsOpenvpnContInstallEnabled WRITE setPushButtonProtoSsOpenvpnContInstallEnabled NOTIFY pushButtonProtoSsOpenvpnContInstallEnabledChanged) + Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallEnabled READ getPushButtonProtoCloakOpenvpnContInstallEnabled WRITE setPushButtonProtoCloakOpenvpnContInstallEnabled NOTIFY pushButtonProtoCloakOpenvpnContInstallEnabledChanged) + Q_PROPERTY(bool pushButtonProtoWireguardContInstallEnabled READ getPushButtonProtoWireguardContInstallEnabled WRITE setPushButtonProtoWireguardContInstallEnabled NOTIFY pushButtonProtoWireguardContInstallEnabledChanged) + Q_PROPERTY(bool pushButtonProtoOpenvpnContDefaultChecked READ getPushButtonProtoOpenvpnContDefaultChecked WRITE setPushButtonProtoOpenvpnContDefaultChecked NOTIFY pushButtonProtoOpenvpnContDefaultCheckedChanged) + Q_PROPERTY(bool pushButtonProtoSsOpenvpnContDefaultChecked READ getPushButtonProtoSsOpenvpnContDefaultChecked WRITE setPushButtonProtoSsOpenvpnContDefaultChecked NOTIFY pushButtonProtoSsOpenvpnContDefaultCheckedChanged) + Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContDefaultChecked READ getPushButtonProtoCloakOpenvpnContDefaultChecked WRITE setPushButtonProtoCloakOpenvpnContDefaultChecked NOTIFY pushButtonProtoCloakOpenvpnContDefaultCheckedChanged) + Q_PROPERTY(bool pushButtonProtoWireguardContDefaultChecked READ getPushButtonProtoWireguardContDefaultChecked WRITE setPushButtonProtoWireguardContDefaultChecked NOTIFY pushButtonProtoWireguardContDefaultCheckedChanged) + Q_PROPERTY(bool pushButtonProtoOpenvpnContDefaultVisible READ getPushButtonProtoOpenvpnContDefaultVisible WRITE setPushButtonProtoOpenvpnContDefaultVisible NOTIFY pushButtonProtoOpenvpnContDefaultVisibleChanged) + Q_PROPERTY(bool pushButtonProtoSsOpenvpnContDefaultVisible READ getPushButtonProtoSsOpenvpnContDefaultVisible WRITE setPushButtonProtoSsOpenvpnContDefaultVisible NOTIFY pushButtonProtoSsOpenvpnContDefaultVisibleChanged) + Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContDefaultVisible READ getPushButtonProtoCloakOpenvpnContDefaultVisible WRITE setPushButtonProtoCloakOpenvpnContDefaultVisible NOTIFY pushButtonProtoCloakOpenvpnContDefaultVisibleChanged) + Q_PROPERTY(bool pushButtonProtoWireguardContDefaultVisible READ getPushButtonProtoWireguardContDefaultVisible WRITE setPushButtonProtoWireguardContDefaultVisible NOTIFY pushButtonProtoWireguardContDefaultVisibleChanged) + Q_PROPERTY(bool pushButtonProtoOpenvpnContShareVisible READ getPushButtonProtoOpenvpnContShareVisible WRITE setPushButtonProtoOpenvpnContShareVisible NOTIFY pushButtonProtoOpenvpnContShareVisibleChanged) + Q_PROPERTY(bool pushButtonProtoSsOpenvpnContShareVisible READ getPushButtonProtoSsOpenvpnContShareVisible WRITE setPushButtonProtoSsOpenvpnContShareVisible NOTIFY pushButtonProtoSsOpenvpnContShareVisibleChanged) + Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContShareVisible READ getPushButtonProtoCloakOpenvpnContShareVisible WRITE setPushButtonProtoCloakOpenvpnContShareVisible NOTIFY pushButtonProtoCloakOpenvpnContShareVisibleChanged) + Q_PROPERTY(bool pushButtonProtoWireguardContShareVisible READ getPushButtonProtoWireguardContShareVisible WRITE setPushButtonProtoWireguardContShareVisible NOTIFY pushButtonProtoWireguardContShareVisibleChanged) + Q_PROPERTY(bool frameOpenvpnSettingsVisible READ getFrameOpenvpnSettingsVisible WRITE setFrameOpenvpnSettingsVisible NOTIFY frameOpenvpnSettingsVisibleChanged) + Q_PROPERTY(bool frameOpenvpnSsSettingsVisible READ getFrameOpenvpnSsSettingsVisible WRITE setFrameOpenvpnSsSettingsVisible NOTIFY frameOpenvpnSsSettingsVisibleChanged) + Q_PROPERTY(bool frameOpenvpnSsCloakSettingsVisible READ getFrameOpenvpnSsCloakSettingsVisible WRITE setFrameOpenvpnSsCloakSettingsVisible NOTIFY frameOpenvpnSsCloakSettingsVisibleChanged) + Q_PROPERTY(bool progressBarProtocolsContainerReinstallVisible READ getProgressBarProtocolsContainerReinstallVisible WRITE setProgressBarProtocolsContainerReinstallVisible NOTIFY progressBarProtocolsContainerReinstallVisibleChanged) + + Q_PROPERTY(bool frameWireguardSettingsVisible READ getFrameWireguardSettingsVisible WRITE setFrameWireguardSettingsVisible NOTIFY frameWireguardSettingsVisibleChanged) + Q_PROPERTY(bool frameWireguardVisible READ getFrameWireguardVisible WRITE setFrameWireguardVisible NOTIFY frameWireguardVisibleChanged) + + Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked(); + Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContSsConfigClicked(); + Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContCloakConfigClicked(); + +public: + explicit ServerContainersLogic(UiLogic *uiLogic, QObject *parent = nullptr); + ~ServerContainersLogic() = default; + + void setupProtocolsPageConnections(); + + bool getPageServerContainersEnabled() const; + void setPageServerContainersEnabled(bool pageServerContainersEnabled); + int getProgressBarProtocolsContainerReinstallValue() const; + void setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue); + int getProgressBarProtocolsContainerReinstallMaximium() const; + void setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium); + + bool getPushButtonProtoOpenvpnContInstallChecked() const; + void setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked); + bool getPushButtonProtoSsOpenvpnContInstallChecked() const; + void setPushButtonProtoSsOpenvpnContInstallChecked(bool pushButtonProtoSsOpenvpnContInstallChecked); + bool getPushButtonProtoCloakOpenvpnContInstallChecked() const; + void setPushButtonProtoCloakOpenvpnContInstallChecked(bool pushButtonProtoCloakOpenvpnContInstallChecked); + bool getPushButtonProtoWireguardContInstallChecked() const; + void setPushButtonProtoWireguardContInstallChecked(bool pushButtonProtoWireguardContInstallChecked); + bool getPushButtonProtoOpenvpnContInstallEnabled() const; + void setPushButtonProtoOpenvpnContInstallEnabled(bool pushButtonProtoOpenvpnContInstallEnabled); + bool getPushButtonProtoSsOpenvpnContInstallEnabled() const; + void setPushButtonProtoSsOpenvpnContInstallEnabled(bool pushButtonProtoSsOpenvpnContInstallEnabled); + bool getPushButtonProtoCloakOpenvpnContInstallEnabled() const; + void setPushButtonProtoCloakOpenvpnContInstallEnabled(bool pushButtonProtoCloakOpenvpnContInstallEnabled); + bool getPushButtonProtoWireguardContInstallEnabled() const; + void setPushButtonProtoWireguardContInstallEnabled(bool pushButtonProtoWireguardContInstallEnabled); + bool getPushButtonProtoOpenvpnContDefaultChecked() const; + void setPushButtonProtoOpenvpnContDefaultChecked(bool pushButtonProtoOpenvpnContDefaultChecked); + bool getPushButtonProtoSsOpenvpnContDefaultChecked() const; + void setPushButtonProtoSsOpenvpnContDefaultChecked(bool pushButtonProtoSsOpenvpnContDefaultChecked); + bool getPushButtonProtoCloakOpenvpnContDefaultChecked() const; + void setPushButtonProtoCloakOpenvpnContDefaultChecked(bool pushButtonProtoCloakOpenvpnContDefaultChecked); + bool getPushButtonProtoWireguardContDefaultChecked() const; + void setPushButtonProtoWireguardContDefaultChecked(bool pushButtonProtoWireguardContDefaultChecked); + bool getPushButtonProtoOpenvpnContDefaultVisible() const; + void setPushButtonProtoOpenvpnContDefaultVisible(bool pushButtonProtoOpenvpnContDefaultVisible); + bool getPushButtonProtoSsOpenvpnContDefaultVisible() const; + void setPushButtonProtoSsOpenvpnContDefaultVisible(bool pushButtonProtoSsOpenvpnContDefaultVisible); + bool getPushButtonProtoCloakOpenvpnContDefaultVisible() const; + void setPushButtonProtoCloakOpenvpnContDefaultVisible(bool pushButtonProtoCloakOpenvpnContDefaultVisible); + bool getPushButtonProtoWireguardContDefaultVisible() const; + void setPushButtonProtoWireguardContDefaultVisible(bool pushButtonProtoWireguardContDefaultVisible); + bool getPushButtonProtoOpenvpnContShareVisible() const; + void setPushButtonProtoOpenvpnContShareVisible(bool pushButtonProtoOpenvpnContShareVisible); + bool getPushButtonProtoSsOpenvpnContShareVisible() const; + void setPushButtonProtoSsOpenvpnContShareVisible(bool pushButtonProtoSsOpenvpnContShareVisible); + bool getPushButtonProtoCloakOpenvpnContShareVisible() const; + void setPushButtonProtoCloakOpenvpnContShareVisible(bool pushButtonProtoCloakOpenvpnContShareVisible); + bool getPushButtonProtoWireguardContShareVisible() const; + void setPushButtonProtoWireguardContShareVisible(bool pushButtonProtoWireguardContShareVisible); + bool getFrameOpenvpnSettingsVisible() const; + void setFrameOpenvpnSettingsVisible(bool frameOpenvpnSettingsVisible); + bool getFrameOpenvpnSsSettingsVisible() const; + void setFrameOpenvpnSsSettingsVisible(bool frameOpenvpnSsSettingsVisible); + bool getFrameOpenvpnSsCloakSettingsVisible() const; + void setFrameOpenvpnSsCloakSettingsVisible(bool frameOpenvpnSsCloakSettingsVisible); + bool getProgressBarProtocolsContainerReinstallVisible() const; + void setProgressBarProtocolsContainerReinstallVisible(bool progressBarProtocolsContainerReinstallVisible); + + bool getFrameWireguardSettingsVisible() const; + void setFrameWireguardSettingsVisible(bool frameWireguardSettingsVisible); + bool getFrameWireguardVisible() const; + void setFrameWireguardVisible(bool frameWireguardVisible); + +signals: + void pageServerContainersEnabledChanged(); + void progressBarProtocolsContainerReinstallValueChanged(); + void progressBarProtocolsContainerReinstallMaximiumChanged(); + + void pushButtonProtoOpenvpnContInstallCheckedChanged(); + void pushButtonProtoSsOpenvpnContInstallCheckedChanged(); + void pushButtonProtoCloakOpenvpnContInstallCheckedChanged(); + void pushButtonProtoWireguardContInstallCheckedChanged(); + void pushButtonProtoOpenvpnContInstallEnabledChanged(); + void pushButtonProtoSsOpenvpnContInstallEnabledChanged(); + void pushButtonProtoCloakOpenvpnContInstallEnabledChanged(); + void pushButtonProtoWireguardContInstallEnabledChanged(); + void pushButtonProtoOpenvpnContDefaultCheckedChanged(); + void pushButtonProtoSsOpenvpnContDefaultCheckedChanged(); + void pushButtonProtoCloakOpenvpnContDefaultCheckedChanged(); + void pushButtonProtoWireguardContDefaultCheckedChanged(); + void pushButtonProtoOpenvpnContDefaultVisibleChanged(); + void pushButtonProtoSsOpenvpnContDefaultVisibleChanged(); + void pushButtonProtoCloakOpenvpnContDefaultVisibleChanged(); + void pushButtonProtoWireguardContDefaultVisibleChanged(); + void pushButtonProtoOpenvpnContShareVisibleChanged(); + void pushButtonProtoSsOpenvpnContShareVisibleChanged(); + void pushButtonProtoCloakOpenvpnContShareVisibleChanged(); + void pushButtonProtoWireguardContShareVisibleChanged(); + void frameOpenvpnSettingsVisibleChanged(); + void frameOpenvpnSsSettingsVisibleChanged(); + void frameOpenvpnSsCloakSettingsVisibleChanged(); + void progressBarProtocolsContainerReinstallVisibleChanged(); + + void frameWireguardSettingsVisibleChanged(); + void frameWireguardVisibleChanged(); + + void pushButtonProtoOpenvpnContDefaultClicked(bool checked); + void pushButtonProtoSsOpenvpnContDefaultClicked(bool checked); + void pushButtonProtoCloakOpenvpnContDefaultClicked(bool checked); + void pushButtonProtoWireguardContDefaultClicked(bool checked); + void pushButtonProtoOpenvpnContInstallClicked(bool checked); + void pushButtonProtoSsOpenvpnContInstallClicked(bool checked); + void pushButtonProtoCloakOpenvpnContInstallClicked(bool checked); + void pushButtonProtoWireguardContInstallClicked(bool checked); + void pushButtonProtoOpenvpnContShareClicked(bool checked); + void pushButtonProtoSsOpenvpnContShareClicked(bool checked); + void pushButtonProtoCloakOpenvpnContShareClicked(bool checked); + void pushButtonProtoWireguardContShareClicked(bool checked); + +private: + + +private slots: + + + +private: + Settings m_settings; + UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } + + bool m_pageServerContainersEnabled; + int m_progressBarProtocolsContainerReinstallValue; + int m_progressBarProtocolsContainerReinstallMaximium; + + bool m_pushButtonProtoOpenvpnContInstallChecked; + bool m_pushButtonProtoSsOpenvpnContInstallChecked; + bool m_pushButtonProtoCloakOpenvpnContInstallChecked; + bool m_pushButtonProtoWireguardContInstallChecked; + bool m_pushButtonProtoOpenvpnContInstallEnabled; + bool m_pushButtonProtoSsOpenvpnContInstallEnabled; + bool m_pushButtonProtoCloakOpenvpnContInstallEnabled; + bool m_pushButtonProtoWireguardContInstallEnabled; + bool m_pushButtonProtoOpenvpnContDefaultChecked; + bool m_pushButtonProtoSsOpenvpnContDefaultChecked; + bool m_pushButtonProtoCloakOpenvpnContDefaultChecked; + bool m_pushButtonProtoWireguardContDefaultChecked; + bool m_pushButtonProtoOpenvpnContDefaultVisible; + bool m_pushButtonProtoSsOpenvpnContDefaultVisible; + bool m_pushButtonProtoCloakOpenvpnContDefaultVisible; + bool m_pushButtonProtoWireguardContDefaultVisible; + bool m_pushButtonProtoOpenvpnContShareVisible; + bool m_pushButtonProtoSsOpenvpnContShareVisible; + bool m_pushButtonProtoCloakOpenvpnContShareVisible; + bool m_pushButtonProtoWireguardContShareVisible; + bool m_frameOpenvpnSettingsVisible; + bool m_frameOpenvpnSsSettingsVisible; + bool m_frameOpenvpnSsCloakSettingsVisible; + bool m_progressBarProtocolsContainerReinstallVisible; + + bool m_frameWireguardSettingsVisible; + bool m_frameWireguardVisible; +}; +#endif // SERVER_CONTAINERS_LOGIC_H diff --git a/client/ui/pages_logic/ServerListLogic.h b/client/ui/pages_logic/ServerListLogic.h index 91db1a2a..7c63928f 100644 --- a/client/ui/pages_logic/ServerListLogic.h +++ b/client/ui/pages_logic/ServerListLogic.h @@ -39,6 +39,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } ServersModel* m_serverListModel; diff --git a/client/ui/pages_logic/ServerSettingsLogic.h b/client/ui/pages_logic/ServerSettingsLogic.h index 1333159d..cb1a4dd8 100644 --- a/client/ui/pages_logic/ServerSettingsLogic.h +++ b/client/ui/pages_logic/ServerSettingsLogic.h @@ -85,6 +85,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } bool m_pageServerSettingsEnabled; bool m_labelServerSettingsWaitInfoVisible; diff --git a/client/ui/pages_logic/ServerVpnProtocolsLogic.cpp b/client/ui/pages_logic/ServerVpnProtocolsLogic.cpp deleted file mode 100644 index 6729d856..00000000 --- a/client/ui/pages_logic/ServerVpnProtocolsLogic.cpp +++ /dev/null @@ -1,54 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -//#include "configurators/cloak_configurator.h" -//#include "configurators/vpn_configurator.h" -//#include "configurators/openvpn_configurator.h" -//#include "configurators/shadowsocks_configurator.h" -//#include "configurators/ssh_configurator.h" - -//#include "core/servercontroller.h" -//#include "core/server_defs.h" -//#include "core/errorstrings.h" - -//#include "protocols/protocols_defs.h" -//#include "protocols/shadowsocksvpnprotocol.h" - -#include "debug.h" -#include "defines.h" -#include "ServerVpnProtocolsLogic.h" -#include "utils.h" -#include "vpnconnection.h" -#include - -#if defined Q_OS_MAC || defined Q_OS_LINUX -#include "ui/macos_util.h" -#endif - -using namespace amnezia; -using namespace PageEnumNS; - - -ServerVpnProtocolsLogic::ServerVpnProtocolsLogic(UiLogic *uiLogic, QObject *parent): - QObject(parent), - m_uiLogic(uiLogic) -{ - -} diff --git a/client/ui/pages_logic/ServerVpnProtocolsLogic.h b/client/ui/pages_logic/ServerVpnProtocolsLogic.h deleted file mode 100644 index 8e56842c..00000000 --- a/client/ui/pages_logic/ServerVpnProtocolsLogic.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef SERVER_VPN_PROTOCOLS_LOGIC_H -#define SERVER_VPN_PROTOCOLS_LOGIC_H - -#include "../pages.h" -#include "settings.h" - -class UiLogic; - -class ServerVpnProtocolsLogic : public QObject -{ - Q_OBJECT - -public: - explicit ServerVpnProtocolsLogic(UiLogic *uiLogic, QObject *parent = nullptr); - ~ServerVpnProtocolsLogic() = default; - - -signals: - - -private: - - -private slots: - - - -private: - Settings m_settings; - UiLogic *m_uiLogic; - - - -}; -#endif // SERVER_VPN_PROTOCOLS_LOGIC_H diff --git a/client/ui/pages_logic/ShareConnectionLogic.h b/client/ui/pages_logic/ShareConnectionLogic.h index 788d8927..62e6737a 100644 --- a/client/ui/pages_logic/ShareConnectionLogic.h +++ b/client/ui/pages_logic/ShareConnectionLogic.h @@ -166,6 +166,8 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } + CQR_Encode m_qrEncode; bool m_pageShareAmneziaVisible; diff --git a/client/ui/pages_logic/SitesLogic.h b/client/ui/pages_logic/SitesLogic.h index 5a1d2e19..f6e14077 100644 --- a/client/ui/pages_logic/SitesLogic.h +++ b/client/ui/pages_logic/SitesLogic.h @@ -50,6 +50,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } QString m_labelSitesAddCustomText; QObject* m_tableViewSitesModel; diff --git a/client/ui/pages_logic/StartPageLogic.cpp b/client/ui/pages_logic/StartPageLogic.cpp index a8675cf5..8a7c4710 100644 --- a/client/ui/pages_logic/StartPageLogic.cpp +++ b/client/ui/pages_logic/StartPageLogic.cpp @@ -297,7 +297,7 @@ void StartPageLogic::onPushButtonNewServerImport() if (!o.contains(config_key::containers)) { m_uiLogic->selectedServerIndex = m_settings.defaultServerIndex(); m_uiLogic->selectedDockerContainer = m_settings.defaultContainer(m_uiLogic->selectedServerIndex); - m_uiLogic->goToPage(Page::ServerVpnProtocols); + m_uiLogic->goToPage(Page::ServerContainers); } } diff --git a/client/ui/pages_logic/StartPageLogic.h b/client/ui/pages_logic/StartPageLogic.h index f2ef9b7f..28c17b5c 100644 --- a/client/ui/pages_logic/StartPageLogic.h +++ b/client/ui/pages_logic/StartPageLogic.h @@ -84,6 +84,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } bool m_pushButtonNewServerConnectEnabled; QString m_pushButtonNewServerConnectText; diff --git a/client/ui/pages_logic/VpnLogic.h b/client/ui/pages_logic/VpnLogic.h index f55d068f..1cfba2dc 100644 --- a/client/ui/pages_logic/VpnLogic.h +++ b/client/ui/pages_logic/VpnLogic.h @@ -27,6 +27,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } diff --git a/client/ui/pages_logic/WizardLogic.h b/client/ui/pages_logic/WizardLogic.h index e0d82cbe..55b2066f 100644 --- a/client/ui/pages_logic/WizardLogic.h +++ b/client/ui/pages_logic/WizardLogic.h @@ -57,6 +57,7 @@ private slots: private: Settings m_settings; UiLogic *m_uiLogic; + UiLogic *uiLogic() const { return m_uiLogic; } bool m_radioButtonSetupWizardHighChecked; bool m_radioButtonSetupWizardMediumChecked; diff --git a/client/ui/qml/Pages/PageServerProtocols.qml b/client/ui/qml/Pages/PageServerContainers.qml similarity index 72% rename from client/ui/qml/Pages/PageServerProtocols.qml rename to client/ui/qml/Pages/PageServerContainers.qml index 6dc9b3be..c728bdaf 100644 --- a/client/ui/qml/Pages/PageServerProtocols.qml +++ b/client/ui/qml/Pages/PageServerContainers.qml @@ -6,7 +6,7 @@ import "../Config" Item { id: root - enabled: UiLogic.pageServerProtocolsEnabled + enabled: ServerContainersLogic.pageServerContainersEnabled ImageButtonType { id: back x: 10 @@ -38,9 +38,9 @@ Item { width: 301 height: 40 from: 0 - to: UiLogic.progressBarProtocolsContainerReinstallMaximium - value: UiLogic.progressBarProtocolsContainerReinstallValue - visible: UiLogic.progressBarProtocolsContainerReinstallVisible + to: ServerContainersLogic.progressBarProtocolsContainerReinstallMaximium + value: ServerContainersLogic.progressBarProtocolsContainerReinstallValue + visible: ServerContainersLogic.progressBarProtocolsContainerReinstallVisible background: Rectangle { implicitWidth: parent.width implicitHeight: parent.height @@ -85,7 +85,7 @@ Item { border.width: 1 border.color: "lightgray" radius: 2 - visible: UiLogic.frameOpenvpnSsCloakSettingsVisible + visible: ServerContainersLogic.frameOpenvpnSsCloakSettingsVisible Item { x: 5 y: 5 @@ -105,15 +105,15 @@ Item { icon.source: checked ? "qrc:/images/check.png" : "qrc:/images/uncheck.png" width: 24 height: 24 - checked: UiLogic.pushButtonProtoCloakOpenvpnContDefaultChecked + checked: ServerContainersLogic.pushButtonProtoCloakOpenvpnContDefaultChecked onCheckedChanged: { - UiLogic.pushButtonProtoCloakOpenvpnContDefaultChecked = checked + ServerContainersLogic.pushButtonProtoCloakOpenvpnContDefaultChecked = checked } onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContDefaultClicked(checked) + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContDefaultClicked(checked) } - visible: UiLogic.pushButtonProtoCloakOpenvpnContDefaultVisible + visible: ServerContainersLogic.pushButtonProtoCloakOpenvpnContDefaultVisible } ImageButtonType { @@ -123,9 +123,9 @@ Item { icon.source: "qrc:/images/share.png" width: 24 height: 24 - visible: UiLogic.pushButtonProtoCloakOpenvpnContShareVisible + visible: ServerContainersLogic.pushButtonProtoCloakOpenvpnContShareVisible onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContShareClicked(false) + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContShareClicked(false) } } ImageButtonType { @@ -136,14 +136,14 @@ Item { : "qrc:/images/connect_button_disconnected.png" width: 36 height: 24 - checked: UiLogic.pushButtonProtoCloakOpenvpnContInstallChecked + checked: ServerContainersLogic.pushButtonProtoCloakOpenvpnContInstallChecked onCheckedChanged: { - UiLogic.pushButtonProtoCloakOpenvpnContInstallChecked = checked + ServerContainersLogic.pushButtonProtoCloakOpenvpnContInstallChecked = checked } onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContInstallClicked(checked) + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContInstallClicked(checked) } - enabled: UiLogic.pushButtonProtoCloakOpenvpnContInstallEnabled + enabled: ServerContainersLogic.pushButtonProtoCloakOpenvpnContInstallEnabled } } Rectangle { @@ -162,7 +162,7 @@ Item { text: qsTr("OpenVPN settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked() + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked() } } SettingButtonType { @@ -173,7 +173,7 @@ Item { text: qsTr("ShadowSocks settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContSsConfigClicked() + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContSsConfigClicked() } } SettingButtonType { @@ -184,7 +184,7 @@ Item { text: qsTr("Cloak settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoCloakOpenvpnContCloakConfigClicked() + ServerContainersLogic.onPushButtonProtoCloakOpenvpnContCloakConfigClicked() } } } @@ -197,7 +197,7 @@ Item { border.width: 1 border.color: "lightgray" radius: 2 - visible: UiLogic.frameOpenvpnSsSettingsVisible + visible: ServerContainersLogic.frameOpenvpnSsSettingsVisible Item { x: 5 y: 5 @@ -217,15 +217,15 @@ Item { icon.source: checked ? "qrc:/images/check.png" : "qrc:/images/uncheck.png" width: 24 height: 24 - checked: UiLogic.pushButtonProtoSsOpenvpnContDefaultChecked + checked: ServerContainersLogic.pushButtonProtoSsOpenvpnContDefaultChecked onCheckedChanged: { - UiLogic.pushButtonProtoSsOpenvpnContDefaultChecked = checked + ServerContainersLogic.pushButtonProtoSsOpenvpnContDefaultChecked = checked } onClicked: { - UiLogic.onPushButtonProtoSsOpenvpnContDefaultClicked(checked) + ServerContainersLogic.onPushButtonProtoSsOpenvpnContDefaultClicked(checked) } - visible: UiLogic.pushButtonProtoSsOpenvpnContDefaultVisible + visible: ServerContainersLogic.pushButtonProtoSsOpenvpnContDefaultVisible } ImageButtonType { @@ -235,9 +235,9 @@ Item { icon.source: "qrc:/images/share.png" width: 24 height: 24 - visible: UiLogic.pushButtonProtoSsOpenvpnContShareVisible + visible: ServerContainersLogic.pushButtonProtoSsOpenvpnContShareVisible onClicked: { - UiLogic.onPushButtonProtoSsOpenvpnContShareClicked(false) + ServerContainersLogic.onPushButtonProtoSsOpenvpnContShareClicked(false) } } ImageButtonType { @@ -248,14 +248,14 @@ Item { : "qrc:/images/connect_button_disconnected.png" width: 36 height: 24 - checked: UiLogic.pushButtonProtoSsOpenvpnContInstallChecked + checked: ServerContainersLogic.pushButtonProtoSsOpenvpnContInstallChecked onCheckedChanged: { - UiLogic.pushButtonProtoSsOpenvpnContInstallChecked = checked + ServerContainersLogic.pushButtonProtoSsOpenvpnContInstallChecked = checked } onClicked: { - UiLogic.onPushButtonProtoSsOpenvpnContInstallClicked(checked) + ServerContainersLogic.onPushButtonProtoSsOpenvpnContInstallClicked(checked) } - enabled: UiLogic.pushButtonProtoSsOpenvpnContInstallEnabled + enabled: ServerContainersLogic.pushButtonProtoSsOpenvpnContInstallEnabled } } Rectangle { @@ -274,7 +274,7 @@ Item { text: qsTr("OpenVPN settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoSsOpenvpnContOpenvpnConfigClicked() + ServerContainersLogic.onPushButtonProtoSsOpenvpnContOpenvpnConfigClicked() } } SettingButtonType { @@ -285,7 +285,7 @@ Item { text: qsTr("ShadowSocks settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoSsOpenvpnContSsConfigClicked() + ServerContainersLogic.onPushButtonProtoSsOpenvpnContSsConfigClicked() } } } @@ -298,7 +298,7 @@ Item { border.width: 1 border.color: "lightgray" radius: 2 - visible: UiLogic.frameOpenvpnSettingsVisible + visible: ServerContainersLogic.frameOpenvpnSettingsVisible Item { x: 5 y: 5 @@ -318,15 +318,15 @@ Item { icon.source: checked ? "qrc:/images/check.png" : "qrc:/images/uncheck.png" width: 24 height: 24 - checked: UiLogic.pushButtonProtoOpenvpnContDefaultChecked + checked: ServerContainersLogic.pushButtonProtoOpenvpnContDefaultChecked onCheckedChanged: { - UiLogic.pushButtonProtoOpenvpnContDefaultChecked = checked + ServerContainersLogic.pushButtonProtoOpenvpnContDefaultChecked = checked } onClicked: { - UiLogic.onPushButtonProtoOpenvpnContDefaultClicked(checked) + ServerContainersLogic.onPushButtonProtoOpenvpnContDefaultClicked(checked) } - visible: UiLogic.pushButtonProtoOpenvpnContDefaultVisible + visible: ServerContainersLogic.pushButtonProtoOpenvpnContDefaultVisible } ImageButtonType { @@ -336,9 +336,9 @@ Item { icon.source: "qrc:/images/share.png" width: 24 height: 24 - visible: UiLogic.pushButtonProtoOpenvpnContShareVisible + visible: ServerContainersLogic.pushButtonProtoOpenvpnContShareVisible onClicked: { - UiLogic.onPushButtonProtoOpenvpnContShareClicked(false) + ServerContainersLogic.onPushButtonProtoOpenvpnContShareClicked(false) } } ImageButtonType { @@ -349,14 +349,14 @@ Item { : "qrc:/images/connect_button_disconnected.png" width: 36 height: 24 - checked: UiLogic.pushButtonProtoOpenvpnContInstallChecked + checked: ServerContainersLogic.pushButtonProtoOpenvpnContInstallChecked onCheckedChanged: { - UiLogic.pushButtonProtoOpenvpnContInstallChecked = checked + ServerContainersLogic.pushButtonProtoOpenvpnContInstallChecked = checked } onClicked: { - UiLogic.onPushButtonProtoOpenvpnContInstallClicked(checked) + ServerContainersLogic.onPushButtonProtoOpenvpnContInstallClicked(checked) } - enabled: UiLogic.pushButtonProtoOpenvpnContInstallEnabled + enabled: ServerContainersLogic.pushButtonProtoOpenvpnContInstallEnabled } } Rectangle { @@ -375,7 +375,7 @@ Item { text: qsTr("OpenVPN settings") icon.source: "qrc:/images/settings.png" onClicked: { - UiLogic.onPushButtonProtoOpenvpnContOpenvpnConfigClicked() + ServerContainersLogic.onPushButtonProtoOpenvpnContOpenvpnConfigClicked() } } } @@ -388,7 +388,7 @@ Item { border.width: 1 border.color: "lightgray" radius: 2 - visible: UiLogic.frameWireguardVisible + visible: ServerContainersLogic.frameWireguardVisible Item { x: 5 y: 5 @@ -408,15 +408,15 @@ Item { icon.source: checked ? "qrc:/images/check.png" : "qrc:/images/uncheck.png" width: 24 height: 24 - checked: UiLogic.pushButtonProtoWireguardContDefaultChecked + checked: ServerContainersLogic.pushButtonProtoWireguardContDefaultChecked onCheckedChanged: { - UiLogic.pushButtonProtoWireguardContDefaultChecked = checked + ServerContainersLogic.pushButtonProtoWireguardContDefaultChecked = checked } onClicked: { - UiLogic.onPushButtonProtoWireguardContDefaultClicked(checked) + ServerContainersLogic.onPushButtonProtoWireguardContDefaultClicked(checked) } - visible: UiLogic.pushButtonProtoWireguardContDefaultVisible + visible: ServerContainersLogic.pushButtonProtoWireguardContDefaultVisible } ImageButtonType { @@ -426,9 +426,9 @@ Item { icon.source: "qrc:/images/share.png" width: 24 height: 24 - visible: UiLogic.pushButtonProtoWireguardContShareVisible + visible: ServerContainersLogic.pushButtonProtoWireguardContShareVisible onClicked: { - UiLogic.onPushButtonProtoWireguardContShareClicked(false) + ServerContainersLogic.onPushButtonProtoWireguardContShareClicked(false) } } ImageButtonType { @@ -439,19 +439,19 @@ Item { : "qrc:/images/connect_button_disconnected.png" width: 36 height: 24 - checked: UiLogic.pushButtonProtoWireguardContInstallChecked + checked: ServerContainersLogic.pushButtonProtoWireguardContInstallChecked onCheckedChanged: { - UiLogic.pushButtonProtoWireguardContInstallChecked = checked + ServerContainersLogic.pushButtonProtoWireguardContInstallChecked = checked } onClicked: { - UiLogic.onPushButtonProtoWireguardContInstallClicked(checked) + ServerContainersLogic.onPushButtonProtoWireguardContInstallClicked(checked) } - enabled: UiLogic.pushButtonProtoWireguardContInstallEnabled + enabled: ServerContainersLogic.pushButtonProtoWireguardContInstallEnabled } } Rectangle { id: frame_wireguard_settings - visible: UiLogic.frameWireguardSettingsVisible + visible: ServerContainersLogic.frameWireguardSettingsVisible x: 10 y: 42 height: 44 diff --git a/client/ui/qml/Pages/PageServerSetting.qml b/client/ui/qml/Pages/PageServerSettings.qml similarity index 98% rename from client/ui/qml/Pages/PageServerSetting.qml rename to client/ui/qml/Pages/PageServerSettings.qml index d59c6394..5b48f345 100644 --- a/client/ui/qml/Pages/PageServerSetting.qml +++ b/client/ui/qml/Pages/PageServerSettings.qml @@ -116,7 +116,7 @@ Item { height: 40 text: qsTr("VPN protocols") onClicked: { - UiLogic.goToPage(PageEnum.ServerVpnProtocols) + UiLogic.goToPage(PageEnum.ServerContainers) } } BlueButtonType { diff --git a/client/ui/qml/main.qml b/client/ui/qml/main.qml index b51e67a6..aff80133 100644 --- a/client/ui/qml/main.qml +++ b/client/ui/qml/main.qml @@ -54,8 +54,8 @@ Window { return page_network_settings case PageEnum.ServerSettings: return page_server_settings - case PageEnum.ServerVpnProtocols: - return page_server_protocols + case PageEnum.ServerContainers: + return page_server_containers case PageEnum.ServersList: return page_servers case PageEnum.ShareConnection: @@ -112,11 +112,11 @@ Window { if (item instanceof PageNetworkSetting) { return PageEnum.NetworkSettings } - if (item instanceof PageServerSetting) { + if (item instanceof PageServerSettings) { return PageEnum.ServerSettings } - if (item instanceof PageServerProtocols) { - return PageEnum.ServerVpnProtocols + if (item instanceof PageServerContainers) { + return PageEnum.ServerContainers } if (item instanceof PageServerList) { return PageEnum.ServersList @@ -169,8 +169,8 @@ Window { if (page === PageEnum.NewServerProtocols) { NewServerProtocolsLogic.updateNewServerProtocolsPage() } - if (page === PageEnum.ServerVpnProtocols) { - UiLogic.updateProtocolsPage() + if (page === PageEnum.ServerContainers) { + ServerContainersLogic.updateServerContainersPage() } if (page === PageEnum.AppSettings) { AppSettingsLogic.updateAppSettingsPage() @@ -316,11 +316,11 @@ Window { } Component { id: page_server_settings - PageServerSetting {} + PageServerSettings {} } Component { - id: page_server_protocols - PageServerProtocols {} + id: page_server_containers + PageServerContainers {} } Component { id: page_share_connection diff --git a/client/ui/uilogic.cpp b/client/ui/uilogic.cpp index bdcb193a..2ed5fe4d 100644 --- a/client/ui/uilogic.cpp +++ b/client/ui/uilogic.cpp @@ -52,7 +52,7 @@ #include "pages_logic/ProtocolSettingsLogic.h" #include "pages_logic/ServerListLogic.h" #include "pages_logic/ServerSettingsLogic.h" -#include "pages_logic/ServerVpnProtocolsLogic.h" +#include "pages_logic/ServerContainersLogic.h" #include "pages_logic/ShareConnectionLogic.h" #include "pages_logic/SitesLogic.h" #include "pages_logic/StartPageLogic.h" @@ -69,10 +69,6 @@ using namespace PageEnumNS; UiLogic::UiLogic(QObject *parent) : QObject(parent), - m_frameWireguardSettingsVisible{false}, - m_frameWireguardVisible{false}, - - m_radioButtonVpnModeAllSitesChecked{true}, m_radioButtonVpnModeForwardSitesChecked{false}, m_radioButtonVpnModeExceptSitesChecked{false}, @@ -93,30 +89,7 @@ UiLogic::UiLogic(QObject *parent) : m_pushButtonConnectChecked{false}, - m_pushButtonProtoOpenvpnContInstallChecked{false}, - m_pushButtonProtoSsOpenvpnContInstallChecked{false}, - m_pushButtonProtoCloakOpenvpnContInstallChecked{false}, - m_pushButtonProtoWireguardContInstallChecked{false}, - m_pushButtonProtoOpenvpnContInstallEnabled{false}, - m_pushButtonProtoSsOpenvpnContInstallEnabled{false}, - m_pushButtonProtoCloakOpenvpnContInstallEnabled{false}, - m_pushButtonProtoWireguardContInstallEnabled{false}, - m_pushButtonProtoOpenvpnContDefaultChecked{false}, - m_pushButtonProtoSsOpenvpnContDefaultChecked{false}, - m_pushButtonProtoCloakOpenvpnContDefaultChecked{false}, - m_pushButtonProtoWireguardContDefaultChecked{false}, - m_pushButtonProtoOpenvpnContDefaultVisible{true}, - m_pushButtonProtoSsOpenvpnContDefaultVisible{false}, - m_pushButtonProtoCloakOpenvpnContDefaultVisible{false}, - m_pushButtonProtoWireguardContDefaultVisible{false}, - m_pushButtonProtoOpenvpnContShareVisible{false}, - m_pushButtonProtoSsOpenvpnContShareVisible{false}, - m_pushButtonProtoCloakOpenvpnContShareVisible{false}, - m_pushButtonProtoWireguardContShareVisible{false}, - m_frameOpenvpnSettingsVisible{true}, - m_frameOpenvpnSsSettingsVisible{true}, - m_frameOpenvpnSsCloakSettingsVisible{true}, - m_progressBarProtocolsContainerReinstallVisible{false}, + m_labelSpeedReceivedText{tr("0 Mbps")}, m_labelSpeedSentText{tr("0 Mbps")}, m_labelStateText{}, @@ -124,15 +97,6 @@ UiLogic::UiLogic(QObject *parent) : m_widgetVpnModeEnabled{false}, m_labelErrorText{tr("Error text")}, m_dialogConnectErrorText{}, - - - - - m_pageServerProtocolsEnabled{true}, - m_progressBarProtocolsContainerReinstallValue{0}, - m_progressBarProtocolsContainerReinstallMaximium{100}, - - m_vpnConnection(nullptr) { m_vpnConnection = new VpnConnection(this); @@ -145,7 +109,7 @@ UiLogic::UiLogic(QObject *parent) : m_protocolSettingsLogic = new ProtocolSettingsLogic(this); m_serverListLogic = new ServerListLogic(this); m_serverSettingsLogic = new ServerSettingsLogic(this); - m_serverVpnProtocolsLogic = new ServerVpnProtocolsLogic(this); + m_serverVpnProtocolsLogic = new ServerContainersLogic(this); m_shareConnectionLogic = new ShareConnectionLogic(this); m_sitesLogic = new SitesLogic(this); m_startPageLogic = new StartPageLogic(this); @@ -163,13 +127,7 @@ UiLogic::UiLogic(QObject *parent) : void UiLogic::initalizeUiLogic() { - setFrameWireguardSettingsVisible(false); - setFrameWireguardVisible(false); - setupTray(); - setupNewServerConnections(); - setupProtocolsPageConnections(); - setLabelErrorText(""); @@ -232,40 +190,6 @@ void UiLogic::initalizeUiLogic() } -bool UiLogic::getFrameWireguardSettingsVisible() const -{ - return m_frameWireguardSettingsVisible; -} - -void UiLogic::setFrameWireguardSettingsVisible(bool frameWireguardSettingsVisible) -{ - if (m_frameWireguardSettingsVisible != frameWireguardSettingsVisible) { - m_frameWireguardSettingsVisible = frameWireguardSettingsVisible; - emit frameWireguardSettingsVisibleChanged(); - } -} - -bool UiLogic::getFrameWireguardVisible() const -{ - return m_frameWireguardVisible; -} - -void UiLogic::setFrameWireguardVisible(bool frameWireguardVisible) -{ - if (m_frameWireguardVisible != frameWireguardVisible) { - m_frameWireguardVisible = frameWireguardVisible; - emit frameWireguardVisibleChanged(); - } -} - - - - - - - - - bool UiLogic::getRadioButtonVpnModeAllSitesChecked() const { return m_radioButtonVpnModeAllSitesChecked; @@ -408,317 +332,7 @@ void UiLogic::setPushButtonVpnAddSiteEnabled(bool pushButtonVpnAddSiteEnabled) -bool UiLogic::getPushButtonProtoOpenvpnContInstallChecked() const -{ - return m_pushButtonProtoOpenvpnContInstallChecked; -} -void UiLogic::setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked) -{ - if (m_pushButtonProtoOpenvpnContInstallChecked != pushButtonProtoOpenvpnContInstallChecked) { - m_pushButtonProtoOpenvpnContInstallChecked = pushButtonProtoOpenvpnContInstallChecked; - emit pushButtonProtoOpenvpnContInstallCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoSsOpenvpnContInstallChecked() const -{ - return m_pushButtonProtoSsOpenvpnContInstallChecked; -} - -void UiLogic::setPushButtonProtoSsOpenvpnContInstallChecked(bool pushButtonProtoSsOpenvpnContInstallChecked) -{ - if (m_pushButtonProtoSsOpenvpnContInstallChecked != pushButtonProtoSsOpenvpnContInstallChecked) { - m_pushButtonProtoSsOpenvpnContInstallChecked = pushButtonProtoSsOpenvpnContInstallChecked; - emit pushButtonProtoSsOpenvpnContInstallCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoCloakOpenvpnContInstallChecked() const -{ - return m_pushButtonProtoCloakOpenvpnContInstallChecked; -} - -void UiLogic::setPushButtonProtoCloakOpenvpnContInstallChecked(bool pushButtonProtoCloakOpenvpnContInstallChecked) -{ - if (m_pushButtonProtoCloakOpenvpnContInstallChecked != pushButtonProtoCloakOpenvpnContInstallChecked) { - m_pushButtonProtoCloakOpenvpnContInstallChecked = pushButtonProtoCloakOpenvpnContInstallChecked; - emit pushButtonProtoCloakOpenvpnContInstallCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoWireguardContInstallChecked() const -{ - return m_pushButtonProtoWireguardContInstallChecked; -} - -void UiLogic::setPushButtonProtoWireguardContInstallChecked(bool pushButtonProtoWireguardContInstallChecked) -{ - if (m_pushButtonProtoWireguardContInstallChecked != pushButtonProtoWireguardContInstallChecked) { - m_pushButtonProtoWireguardContInstallChecked = pushButtonProtoWireguardContInstallChecked; - emit pushButtonProtoWireguardContInstallCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoOpenvpnContInstallEnabled() const -{ - return m_pushButtonProtoOpenvpnContInstallEnabled; -} - -void UiLogic::setPushButtonProtoOpenvpnContInstallEnabled(bool pushButtonProtoOpenvpnContInstallEnabled) -{ - if (m_pushButtonProtoOpenvpnContInstallEnabled != pushButtonProtoOpenvpnContInstallEnabled) { - m_pushButtonProtoOpenvpnContInstallEnabled = pushButtonProtoOpenvpnContInstallEnabled; - emit pushButtonProtoOpenvpnContInstallEnabledChanged(); - } -} - -bool UiLogic::getPushButtonProtoSsOpenvpnContInstallEnabled() const -{ - return m_pushButtonProtoSsOpenvpnContInstallEnabled; -} - -void UiLogic::setPushButtonProtoSsOpenvpnContInstallEnabled(bool pushButtonProtoSsOpenvpnContInstallEnabled) -{ - if (m_pushButtonProtoSsOpenvpnContInstallEnabled != pushButtonProtoSsOpenvpnContInstallEnabled) { - m_pushButtonProtoSsOpenvpnContInstallEnabled = pushButtonProtoSsOpenvpnContInstallEnabled; - emit pushButtonProtoSsOpenvpnContInstallEnabledChanged(); - } -} - -bool UiLogic::getPushButtonProtoCloakOpenvpnContInstallEnabled() const -{ - return m_pushButtonProtoCloakOpenvpnContInstallEnabled; -} - -void UiLogic::setPushButtonProtoCloakOpenvpnContInstallEnabled(bool pushButtonProtoCloakOpenvpnContInstallEnabled) -{ - if (m_pushButtonProtoCloakOpenvpnContInstallEnabled != pushButtonProtoCloakOpenvpnContInstallEnabled) { - m_pushButtonProtoCloakOpenvpnContInstallEnabled = pushButtonProtoCloakOpenvpnContInstallEnabled; - emit pushButtonProtoCloakOpenvpnContInstallEnabledChanged(); - } -} - -bool UiLogic::getPushButtonProtoWireguardContInstallEnabled() const -{ - return m_pushButtonProtoWireguardContInstallEnabled; -} - -void UiLogic::setPushButtonProtoWireguardContInstallEnabled(bool pushButtonProtoWireguardContInstallEnabled) -{ - if (m_pushButtonProtoWireguardContInstallEnabled != pushButtonProtoWireguardContInstallEnabled) { - m_pushButtonProtoWireguardContInstallEnabled = pushButtonProtoWireguardContInstallEnabled; - emit pushButtonProtoWireguardContInstallEnabledChanged(); - } -} - -bool UiLogic::getPushButtonProtoOpenvpnContDefaultChecked() const -{ - return m_pushButtonProtoOpenvpnContDefaultChecked; -} - -void UiLogic::setPushButtonProtoOpenvpnContDefaultChecked(bool pushButtonProtoOpenvpnContDefaultChecked) -{ - if (m_pushButtonProtoOpenvpnContDefaultChecked != pushButtonProtoOpenvpnContDefaultChecked) { - m_pushButtonProtoOpenvpnContDefaultChecked = pushButtonProtoOpenvpnContDefaultChecked; - emit pushButtonProtoOpenvpnContDefaultCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoSsOpenvpnContDefaultChecked() const -{ - return m_pushButtonProtoSsOpenvpnContDefaultChecked; -} - -void UiLogic::setPushButtonProtoSsOpenvpnContDefaultChecked(bool pushButtonProtoSsOpenvpnContDefaultChecked) -{ - if (m_pushButtonProtoSsOpenvpnContDefaultChecked != pushButtonProtoSsOpenvpnContDefaultChecked) { - m_pushButtonProtoSsOpenvpnContDefaultChecked = pushButtonProtoSsOpenvpnContDefaultChecked; - emit pushButtonProtoSsOpenvpnContDefaultCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoCloakOpenvpnContDefaultChecked() const -{ - return m_pushButtonProtoCloakOpenvpnContDefaultChecked; -} - -void UiLogic::setPushButtonProtoCloakOpenvpnContDefaultChecked(bool pushButtonProtoCloakOpenvpnContDefaultChecked) -{ - if (m_pushButtonProtoCloakOpenvpnContDefaultChecked != pushButtonProtoCloakOpenvpnContDefaultChecked) { - m_pushButtonProtoCloakOpenvpnContDefaultChecked = pushButtonProtoCloakOpenvpnContDefaultChecked; - emit pushButtonProtoCloakOpenvpnContDefaultCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoWireguardContDefaultChecked() const -{ - return m_pushButtonProtoWireguardContDefaultChecked; -} - -void UiLogic::setPushButtonProtoWireguardContDefaultChecked(bool pushButtonProtoWireguardContDefaultChecked) -{ - if (m_pushButtonProtoWireguardContDefaultChecked != pushButtonProtoWireguardContDefaultChecked) { - m_pushButtonProtoWireguardContDefaultChecked = pushButtonProtoWireguardContDefaultChecked; - emit pushButtonProtoWireguardContDefaultCheckedChanged(); - } -} - -bool UiLogic::getPushButtonProtoOpenvpnContDefaultVisible() const -{ - return m_pushButtonProtoOpenvpnContDefaultVisible; -} - -void UiLogic::setPushButtonProtoOpenvpnContDefaultVisible(bool pushButtonProtoOpenvpnContDefaultVisible) -{ - if (m_pushButtonProtoOpenvpnContDefaultVisible != pushButtonProtoOpenvpnContDefaultVisible) { - m_pushButtonProtoOpenvpnContDefaultVisible = pushButtonProtoOpenvpnContDefaultVisible; - emit pushButtonProtoOpenvpnContDefaultVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoSsOpenvpnContDefaultVisible() const -{ - return m_pushButtonProtoSsOpenvpnContDefaultVisible; -} - -void UiLogic::setPushButtonProtoSsOpenvpnContDefaultVisible(bool pushButtonProtoSsOpenvpnContDefaultVisible) -{ - if (m_pushButtonProtoSsOpenvpnContDefaultVisible != pushButtonProtoSsOpenvpnContDefaultVisible) { - m_pushButtonProtoSsOpenvpnContDefaultVisible = pushButtonProtoSsOpenvpnContDefaultVisible; - emit pushButtonProtoSsOpenvpnContDefaultVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoCloakOpenvpnContDefaultVisible() const -{ - return m_pushButtonProtoCloakOpenvpnContDefaultVisible; -} - -void UiLogic::setPushButtonProtoCloakOpenvpnContDefaultVisible(bool pushButtonProtoCloakOpenvpnContDefaultVisible) -{ - if (m_pushButtonProtoCloakOpenvpnContDefaultVisible != pushButtonProtoCloakOpenvpnContDefaultVisible) { - m_pushButtonProtoCloakOpenvpnContDefaultVisible = pushButtonProtoCloakOpenvpnContDefaultVisible; - emit pushButtonProtoCloakOpenvpnContDefaultVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoWireguardContDefaultVisible() const -{ - return m_pushButtonProtoWireguardContDefaultVisible; -} - -void UiLogic::setPushButtonProtoWireguardContDefaultVisible(bool pushButtonProtoWireguardContDefaultVisible) -{ - if (m_pushButtonProtoWireguardContDefaultVisible != pushButtonProtoWireguardContDefaultVisible) { - m_pushButtonProtoWireguardContDefaultVisible = pushButtonProtoWireguardContDefaultVisible; - emit pushButtonProtoWireguardContDefaultVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoOpenvpnContShareVisible() const -{ - return m_pushButtonProtoOpenvpnContShareVisible; -} - -void UiLogic::setPushButtonProtoOpenvpnContShareVisible(bool pushButtonProtoOpenvpnContShareVisible) -{ - if (m_pushButtonProtoOpenvpnContShareVisible != pushButtonProtoOpenvpnContShareVisible) { - m_pushButtonProtoOpenvpnContShareVisible = pushButtonProtoOpenvpnContShareVisible; - emit pushButtonProtoOpenvpnContShareVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoSsOpenvpnContShareVisible() const -{ - return m_pushButtonProtoSsOpenvpnContShareVisible; -} - -void UiLogic::setPushButtonProtoSsOpenvpnContShareVisible(bool pushButtonProtoSsOpenvpnContShareVisible) -{ - if (m_pushButtonProtoSsOpenvpnContShareVisible != pushButtonProtoSsOpenvpnContShareVisible) { - m_pushButtonProtoSsOpenvpnContShareVisible = pushButtonProtoSsOpenvpnContShareVisible; - emit pushButtonProtoSsOpenvpnContShareVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoCloakOpenvpnContShareVisible() const -{ - return m_pushButtonProtoCloakOpenvpnContShareVisible; -} - -void UiLogic::setPushButtonProtoCloakOpenvpnContShareVisible(bool pushButtonProtoCloakOpenvpnContShareVisible) -{ - if (m_pushButtonProtoCloakOpenvpnContShareVisible != pushButtonProtoCloakOpenvpnContShareVisible) { - m_pushButtonProtoCloakOpenvpnContShareVisible = pushButtonProtoCloakOpenvpnContShareVisible; - emit pushButtonProtoCloakOpenvpnContShareVisibleChanged(); - } -} - -bool UiLogic::getPushButtonProtoWireguardContShareVisible() const -{ - return m_pushButtonProtoWireguardContShareVisible; -} - -void UiLogic::setPushButtonProtoWireguardContShareVisible(bool pushButtonProtoWireguardContShareVisible) -{ - if (m_pushButtonProtoWireguardContShareVisible != pushButtonProtoWireguardContShareVisible) { - m_pushButtonProtoWireguardContShareVisible = pushButtonProtoWireguardContShareVisible; - emit pushButtonProtoWireguardContShareVisibleChanged(); - } -} - -bool UiLogic::getFrameOpenvpnSettingsVisible() const -{ - return m_frameOpenvpnSettingsVisible; -} - -void UiLogic::setFrameOpenvpnSettingsVisible(bool frameOpenvpnSettingsVisible) -{ - if (m_frameOpenvpnSettingsVisible != frameOpenvpnSettingsVisible) { - m_frameOpenvpnSettingsVisible = frameOpenvpnSettingsVisible; - emit frameOpenvpnSettingsVisibleChanged(); - } -} - -bool UiLogic::getFrameOpenvpnSsSettingsVisible() const -{ - return m_frameOpenvpnSsSettingsVisible; -} - -void UiLogic::setFrameOpenvpnSsSettingsVisible(bool frameOpenvpnSsSettingsVisible) -{ - if (m_frameOpenvpnSsSettingsVisible != frameOpenvpnSsSettingsVisible) { - m_frameOpenvpnSsSettingsVisible = frameOpenvpnSsSettingsVisible; - emit frameOpenvpnSsSettingsVisibleChanged(); - } -} - -bool UiLogic::getFrameOpenvpnSsCloakSettingsVisible() const -{ - return m_frameOpenvpnSsCloakSettingsVisible; -} - -void UiLogic::setFrameOpenvpnSsCloakSettingsVisible(bool frameOpenvpnSsCloakSettingsVisible) -{ - if (m_frameOpenvpnSsCloakSettingsVisible != frameOpenvpnSsCloakSettingsVisible) { - m_frameOpenvpnSsCloakSettingsVisible = frameOpenvpnSsCloakSettingsVisible; - emit frameOpenvpnSsCloakSettingsVisibleChanged(); - } -} - -bool UiLogic::getProgressBarProtocolsContainerReinstallVisible() const -{ - return m_progressBarProtocolsContainerReinstallVisible; -} - -void UiLogic::setProgressBarProtocolsContainerReinstallVisible(bool progressBarProtocolsContainerReinstallVisible) -{ - if (m_progressBarProtocolsContainerReinstallVisible != progressBarProtocolsContainerReinstallVisible) { - m_progressBarProtocolsContainerReinstallVisible = progressBarProtocolsContainerReinstallVisible; - emit progressBarProtocolsContainerReinstallVisibleChanged(); - } -} QString UiLogic::getLabelSpeedReceivedText() const { @@ -813,58 +427,6 @@ void UiLogic::setDialogConnectErrorText(const QString &dialogConnectErrorText) } - - - - - - -bool UiLogic::getPageServerProtocolsEnabled() const -{ - return m_pageServerProtocolsEnabled; -} - -void UiLogic::setPageServerProtocolsEnabled(bool pageServerProtocolsEnabled) -{ - if (m_pageServerProtocolsEnabled != pageServerProtocolsEnabled) { - m_pageServerProtocolsEnabled = pageServerProtocolsEnabled; - emit pageServerProtocolsEnabledChanged(); - } -} - -int UiLogic::getProgressBarProtocolsContainerReinstallValue() const -{ - return m_progressBarProtocolsContainerReinstallValue; -} - -void UiLogic::setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue) -{ - if (m_progressBarProtocolsContainerReinstallValue != progressBarProtocolsContainerReinstallValue) { - m_progressBarProtocolsContainerReinstallValue = progressBarProtocolsContainerReinstallValue; - emit progressBarProtocolsContainerReinstallValueChanged(); - } -} - -int UiLogic::getProgressBarProtocolsContainerReinstallMaximium() const -{ - return m_progressBarProtocolsContainerReinstallMaximium; -} - -void UiLogic::setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium) -{ - if (m_progressBarProtocolsContainerReinstallMaximium != progressBarProtocolsContainerReinstallMaximium) { - m_progressBarProtocolsContainerReinstallMaximium = progressBarProtocolsContainerReinstallMaximium; - emit progressBarProtocolsContainerReinstallMaximiumChanged(); - } -} - - - - - - - - UiLogic::~UiLogic() { hide(); @@ -932,7 +494,7 @@ void UiLogic::showOnStartup() // case Qt::Key_P: // selectedServerIndex = m_settings.defaultServerIndex(); // selectedDockerContainer = m_settings.defaultContainer(selectedServerIndex); -// goToPage(Page::ServerVpnProtocols); +// goToPage(Page::ServerContainers); // break; // case Qt::Key_T: // SshConfigurator::openSshTerminal(m_settings.serverCredentials(m_settings.defaultServerIndex())); @@ -1327,139 +889,6 @@ PageEnumNS::Page UiLogic::currentPage() return static_cast(getCurrentPageValue()); } -void UiLogic::setupNewServerConnections() -{ - connect(newServerProtocolsLogic(), &NewServerProtocolsLogic::pushButtonNewServerConnectConfigureClicked, this, [this](){ - installServer(newServerProtocolsLogic()->getInstallConfigsFromProtocolsPage()); - }); -} - -void UiLogic::setupProtocolsPageConnections() -{ - QJsonObject openvpnConfig; - - // all containers - QList containers { - DockerContainer::OpenVpn, - DockerContainer::OpenVpnOverShadowSocks, - DockerContainer::OpenVpnOverCloak, - DockerContainer::WireGuard - }; - using ButtonClickedFunc = void (UiLogic::*)(bool); - using ButtonSetEnabledFunc = std::function; - - // default buttons - QList defaultButtonClickedSig { - &UiLogic::pushButtonProtoOpenvpnContDefaultClicked, - &UiLogic::pushButtonProtoSsOpenvpnContDefaultClicked, - &UiLogic::pushButtonProtoCloakOpenvpnContDefaultClicked, - &UiLogic::pushButtonProtoWireguardContDefaultClicked - }; - - for (int i = 0; i < containers.size(); ++i) { - connect(this, defaultButtonClickedSig.at(i), [this, containers, i](bool){ - qDebug() << "clmm" << i; - m_settings.setDefaultContainer(selectedServerIndex, containers.at(i)); - updateProtocolsPage(); - }); - } - - // install buttons - QList installButtonsClickedSig { - &UiLogic::pushButtonProtoOpenvpnContInstallClicked, - &UiLogic::pushButtonProtoSsOpenvpnContInstallClicked, - &UiLogic::pushButtonProtoCloakOpenvpnContInstallClicked, - &UiLogic::pushButtonProtoWireguardContInstallClicked, - }; - QList installButtonsSetEnabledFunc { - [this] (bool enabled) -> void { - setPushButtonProtoOpenvpnContInstallEnabled(enabled); - }, - [this] (bool enabled) -> void { - setPushButtonProtoSsOpenvpnContInstallEnabled(enabled); - }, - [this] (bool enabled) -> void { - setPushButtonProtoCloakOpenvpnContInstallEnabled(enabled); - }, - [this] (bool enabled) -> void { - setPushButtonProtoWireguardContInstallEnabled(enabled); - }, - }; - - for (int i = 0; i < containers.size(); ++i) { - ButtonClickedFunc buttonClickedFunc = installButtonsClickedSig.at(i); - ButtonSetEnabledFunc buttonSetEnabledFunc = installButtonsSetEnabledFunc.at(i); - DockerContainer container = containers.at(i); - - connect(this, buttonClickedFunc, [this, container, buttonSetEnabledFunc](bool checked){ - if (checked) { - PageFunc page_server_protocols; - page_server_protocols.setEnabledFunc = [this] (bool enabled) -> void { - setPageServerProtocolsEnabled(enabled); - }; - ButtonFunc no_button; - LabelFunc no_label; - ProgressFunc progressBar_protocols_container_reinstall; - progressBar_protocols_container_reinstall.setVisibleFunc = [this] (bool visible) ->void { - setProgressBarProtocolsContainerReinstallVisible(visible); - }; - progressBar_protocols_container_reinstall.setValueFunc = [this] (int value) ->void { - setProgressBarProtocolsContainerReinstallValue(value); - }; - progressBar_protocols_container_reinstall.getValueFunc = [this] (void) -> int { - return getProgressBarProtocolsContainerReinstallValue(); - }; - progressBar_protocols_container_reinstall.getMaximiumFunc = [this] (void) -> int { - return getProgressBarProtocolsContainerReinstallMaximium(); - }; - - ErrorCode e = doInstallAction([this, container](){ - return ServerController::setupContainer(m_settings.serverCredentials(selectedServerIndex), container); - }, - page_server_protocols, progressBar_protocols_container_reinstall, - no_button, no_label); - - if (!e) { - m_settings.setContainerConfig(selectedServerIndex, container, QJsonObject()); - m_settings.setDefaultContainer(selectedServerIndex, container); - } - } - else { - buttonSetEnabledFunc(false); - ErrorCode e = ServerController::removeContainer(m_settings.serverCredentials(selectedServerIndex), container); - m_settings.removeContainerConfig(selectedServerIndex, container); - buttonSetEnabledFunc(true); - - if (m_settings.defaultContainer(selectedServerIndex) == container) { - const auto &c = m_settings.containers(selectedServerIndex); - if (c.isEmpty()) m_settings.setDefaultContainer(selectedServerIndex, DockerContainer::None); - else m_settings.setDefaultContainer(selectedServerIndex, c.keys().first()); - } - } - - updateProtocolsPage(); - }); - } - - // share buttons - QList shareButtonsClickedSig { - &UiLogic::pushButtonProtoOpenvpnContShareClicked, - &UiLogic::pushButtonProtoSsOpenvpnContShareClicked, - &UiLogic::pushButtonProtoCloakOpenvpnContShareClicked, - &UiLogic::pushButtonProtoWireguardContShareClicked, - }; - - for (int i = 0; i < containers.size(); ++i) { - ButtonClickedFunc buttonClickedFunc = shareButtonsClickedSig.at(i); - DockerContainer container = containers.at(i); - - connect(this, buttonClickedFunc, [this, container](bool){ - shareConnectionLogic()->updateSharingPage(selectedServerIndex, m_settings.serverCredentials(selectedServerIndex), container); - goToPage(Page::ShareConnection); - }); - } -} - void UiLogic::setTrayState(VpnProtocol::ConnectionState state) { QString resourcesPath = "qrc:/images/tray/%1"; @@ -1599,13 +1028,6 @@ void UiLogic::updateVpnPage() } - - - - - - - void UiLogic::onRadioButtonVpnModeAllSitesToggled(bool checked) { if (checked) { @@ -1628,98 +1050,3 @@ void UiLogic::onRadioButtonVpnModeExceptSitesToggled(bool checked) } - - -void UiLogic::updateProtocolsPage() -{ - setProgressBarProtocolsContainerReinstallVisible(false); - - auto containers = m_settings.containers(selectedServerIndex); - DockerContainer defaultContainer = m_settings.defaultContainer(selectedServerIndex); - bool haveAuthData = m_settings.haveAuthData(selectedServerIndex); - - // all containers - QList allContainers { - DockerContainer::OpenVpn, - DockerContainer::OpenVpnOverShadowSocks, - DockerContainer::OpenVpnOverCloak, - DockerContainer::WireGuard - }; - - using SetVisibleFunc = std::function; - using SetCheckedFunc = std::function; - using SetEnabledFunc = std::function; - QList installButtonsCheckedFunc { - [this](bool checked) ->void {setPushButtonProtoOpenvpnContInstallChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoSsOpenvpnContInstallChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoCloakOpenvpnContInstallChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoWireguardContInstallChecked(checked);}, - }; - QList installButtonsEnabledFunc { - [this](bool enabled) ->void {setPushButtonProtoOpenvpnContInstallEnabled(enabled);}, - [this](bool enabled) ->void {setPushButtonProtoSsOpenvpnContInstallEnabled(enabled);}, - [this](bool enabled) ->void {setPushButtonProtoCloakOpenvpnContInstallEnabled(enabled);}, - [this](bool enabled) ->void {setPushButtonProtoWireguardContInstallEnabled(enabled);}, - }; - - QList defaultButtonsCheckedFunc { - [this](bool checked) ->void {setPushButtonProtoOpenvpnContDefaultChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoSsOpenvpnContDefaultChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoCloakOpenvpnContDefaultChecked(checked);}, - [this](bool checked) ->void {setPushButtonProtoWireguardContDefaultChecked(checked);}, - }; - QList defaultButtonsVisibleFunc { - [this](bool visible) ->void {setPushButtonProtoOpenvpnContDefaultVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoSsOpenvpnContDefaultVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoCloakOpenvpnContDefaultVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoWireguardContDefaultVisible(visible);}, - }; - - QList shareButtonsVisibleFunc { - [this](bool visible) ->void {setPushButtonProtoOpenvpnContShareVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoSsOpenvpnContShareVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoCloakOpenvpnContShareVisible(visible);}, - [this](bool visible) ->void {setPushButtonProtoWireguardContShareVisible(visible);}, - }; - - QList framesVisibleFunc { - [this](bool visible) ->void {setFrameOpenvpnSettingsVisible(visible);}, - [this](bool visible) ->void {setFrameOpenvpnSsSettingsVisible(visible);}, - [this](bool visible) ->void {setFrameOpenvpnSsCloakSettingsVisible(visible);}, - [this](bool visible) ->void {setFrameWireguardSettingsVisible(visible);}, - }; - - for (int i = 0; i < allContainers.size(); ++i) { - defaultButtonsCheckedFunc.at(i)(defaultContainer == allContainers.at(i)); - defaultButtonsVisibleFunc.at(i)(haveAuthData && containers.contains(allContainers.at(i))); - shareButtonsVisibleFunc.at(i)(haveAuthData && containers.contains(allContainers.at(i))); - installButtonsCheckedFunc.at(i)(containers.contains(allContainers.at(i))); - installButtonsEnabledFunc.at(i)(haveAuthData); - framesVisibleFunc.at(i)(containers.contains(allContainers.at(i))); - } -} - - -void UiLogic::onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked() -{ - selectedDockerContainer = DockerContainer::OpenVpnOverCloak; - m_openVpnLogic->updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn), - selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex)); - goToPage(Page::OpenVpnSettings); -} - -void UiLogic::onPushButtonProtoCloakOpenvpnContSsConfigClicked() -{ - selectedDockerContainer = DockerContainer::OpenVpnOverCloak; - shadowSocksLogic()->updateShadowSocksPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::ShadowSocks), - selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex)); - goToPage(Page::ShadowSocksSettings); -} - -void UiLogic::onPushButtonProtoCloakOpenvpnContCloakConfigClicked() -{ - selectedDockerContainer = DockerContainer::OpenVpnOverCloak; - cloakLogic()->updateCloakPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::Cloak), - selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex)); - goToPage(Page::CloakSettings); -} diff --git a/client/ui/uilogic.h b/client/ui/uilogic.h index 966f301f..c154807e 100644 --- a/client/ui/uilogic.h +++ b/client/ui/uilogic.h @@ -18,7 +18,7 @@ class NewServerConfiguringLogic; class ProtocolSettingsLogic; class ServerListLogic; class ServerSettingsLogic; -class ServerVpnProtocolsLogic; +class ServerContainersLogic; class ShareConnectionLogic; class SitesLogic; class StartPageLogic; @@ -35,9 +35,6 @@ class VpnConnection; class UiLogic : public QObject { Q_OBJECT - Q_PROPERTY(bool frameWireguardSettingsVisible READ getFrameWireguardSettingsVisible WRITE setFrameWireguardSettingsVisible NOTIFY frameWireguardSettingsVisibleChanged) - Q_PROPERTY(bool frameWireguardVisible READ getFrameWireguardVisible WRITE setFrameWireguardVisible NOTIFY frameWireguardVisibleChanged) - Q_PROPERTY(int currentPageValue READ getCurrentPageValue WRITE setCurrentPageValue NOTIFY currentPageValueChanged) Q_PROPERTY(QString trayIconUrl READ getTrayIconUrl WRITE setTrayIconUrl NOTIFY trayIconUrlChanged) @@ -45,30 +42,8 @@ class UiLogic : public QObject Q_PROPERTY(bool trayActionConnectEnabled READ getTrayActionConnectEnabled WRITE setTrayActionConnectEnabled NOTIFY trayActionConnectEnabledChanged) Q_PROPERTY(bool pushButtonConnectChecked READ getPushButtonConnectChecked WRITE setPushButtonConnectChecked NOTIFY pushButtonConnectCheckedChanged) - Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallChecked READ getPushButtonProtoOpenvpnContInstallChecked WRITE setPushButtonProtoOpenvpnContInstallChecked NOTIFY pushButtonProtoOpenvpnContInstallCheckedChanged) - Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallChecked READ getPushButtonProtoSsOpenvpnContInstallChecked WRITE setPushButtonProtoSsOpenvpnContInstallChecked NOTIFY pushButtonProtoSsOpenvpnContInstallCheckedChanged) - Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallChecked READ getPushButtonProtoCloakOpenvpnContInstallChecked WRITE setPushButtonProtoCloakOpenvpnContInstallChecked NOTIFY pushButtonProtoCloakOpenvpnContInstallCheckedChanged) - Q_PROPERTY(bool pushButtonProtoWireguardContInstallChecked READ getPushButtonProtoWireguardContInstallChecked WRITE setPushButtonProtoWireguardContInstallChecked NOTIFY pushButtonProtoWireguardContInstallCheckedChanged) - Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallEnabled READ getPushButtonProtoOpenvpnContInstallEnabled WRITE setPushButtonProtoOpenvpnContInstallEnabled NOTIFY pushButtonProtoOpenvpnContInstallEnabledChanged) - Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallEnabled READ getPushButtonProtoSsOpenvpnContInstallEnabled WRITE setPushButtonProtoSsOpenvpnContInstallEnabled NOTIFY pushButtonProtoSsOpenvpnContInstallEnabledChanged) - Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallEnabled READ getPushButtonProtoCloakOpenvpnContInstallEnabled WRITE setPushButtonProtoCloakOpenvpnContInstallEnabled NOTIFY pushButtonProtoCloakOpenvpnContInstallEnabledChanged) - Q_PROPERTY(bool pushButtonProtoWireguardContInstallEnabled READ getPushButtonProtoWireguardContInstallEnabled WRITE setPushButtonProtoWireguardContInstallEnabled NOTIFY pushButtonProtoWireguardContInstallEnabledChanged) - Q_PROPERTY(bool pushButtonProtoOpenvpnContDefaultChecked READ getPushButtonProtoOpenvpnContDefaultChecked WRITE setPushButtonProtoOpenvpnContDefaultChecked NOTIFY pushButtonProtoOpenvpnContDefaultCheckedChanged) - Q_PROPERTY(bool pushButtonProtoSsOpenvpnContDefaultChecked READ getPushButtonProtoSsOpenvpnContDefaultChecked WRITE setPushButtonProtoSsOpenvpnContDefaultChecked NOTIFY pushButtonProtoSsOpenvpnContDefaultCheckedChanged) - Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContDefaultChecked READ getPushButtonProtoCloakOpenvpnContDefaultChecked WRITE setPushButtonProtoCloakOpenvpnContDefaultChecked NOTIFY pushButtonProtoCloakOpenvpnContDefaultCheckedChanged) - Q_PROPERTY(bool pushButtonProtoWireguardContDefaultChecked READ getPushButtonProtoWireguardContDefaultChecked WRITE setPushButtonProtoWireguardContDefaultChecked NOTIFY pushButtonProtoWireguardContDefaultCheckedChanged) - Q_PROPERTY(bool pushButtonProtoOpenvpnContDefaultVisible READ getPushButtonProtoOpenvpnContDefaultVisible WRITE setPushButtonProtoOpenvpnContDefaultVisible NOTIFY pushButtonProtoOpenvpnContDefaultVisibleChanged) - Q_PROPERTY(bool pushButtonProtoSsOpenvpnContDefaultVisible READ getPushButtonProtoSsOpenvpnContDefaultVisible WRITE setPushButtonProtoSsOpenvpnContDefaultVisible NOTIFY pushButtonProtoSsOpenvpnContDefaultVisibleChanged) - Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContDefaultVisible READ getPushButtonProtoCloakOpenvpnContDefaultVisible WRITE setPushButtonProtoCloakOpenvpnContDefaultVisible NOTIFY pushButtonProtoCloakOpenvpnContDefaultVisibleChanged) - Q_PROPERTY(bool pushButtonProtoWireguardContDefaultVisible READ getPushButtonProtoWireguardContDefaultVisible WRITE setPushButtonProtoWireguardContDefaultVisible NOTIFY pushButtonProtoWireguardContDefaultVisibleChanged) - Q_PROPERTY(bool pushButtonProtoOpenvpnContShareVisible READ getPushButtonProtoOpenvpnContShareVisible WRITE setPushButtonProtoOpenvpnContShareVisible NOTIFY pushButtonProtoOpenvpnContShareVisibleChanged) - Q_PROPERTY(bool pushButtonProtoSsOpenvpnContShareVisible READ getPushButtonProtoSsOpenvpnContShareVisible WRITE setPushButtonProtoSsOpenvpnContShareVisible NOTIFY pushButtonProtoSsOpenvpnContShareVisibleChanged) - Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContShareVisible READ getPushButtonProtoCloakOpenvpnContShareVisible WRITE setPushButtonProtoCloakOpenvpnContShareVisible NOTIFY pushButtonProtoCloakOpenvpnContShareVisibleChanged) - Q_PROPERTY(bool pushButtonProtoWireguardContShareVisible READ getPushButtonProtoWireguardContShareVisible WRITE setPushButtonProtoWireguardContShareVisible NOTIFY pushButtonProtoWireguardContShareVisibleChanged) - Q_PROPERTY(bool frameOpenvpnSettingsVisible READ getFrameOpenvpnSettingsVisible WRITE setFrameOpenvpnSettingsVisible NOTIFY frameOpenvpnSettingsVisibleChanged) - Q_PROPERTY(bool frameOpenvpnSsSettingsVisible READ getFrameOpenvpnSsSettingsVisible WRITE setFrameOpenvpnSsSettingsVisible NOTIFY frameOpenvpnSsSettingsVisibleChanged) - Q_PROPERTY(bool frameOpenvpnSsCloakSettingsVisible READ getFrameOpenvpnSsCloakSettingsVisible WRITE setFrameOpenvpnSsCloakSettingsVisible NOTIFY frameOpenvpnSsCloakSettingsVisibleChanged) - Q_PROPERTY(bool progressBarProtocolsContainerReinstallVisible READ getProgressBarProtocolsContainerReinstallVisible WRITE setProgressBarProtocolsContainerReinstallVisible NOTIFY progressBarProtocolsContainerReinstallVisibleChanged) + + Q_PROPERTY(QString labelSpeedReceivedText READ getLabelSpeedReceivedText WRITE setLabelSpeedReceivedText NOTIFY labelSpeedReceivedTextChanged) Q_PROPERTY(QString labelSpeedSentText READ getLabelSpeedSentText WRITE setLabelSpeedSentText NOTIFY labelSpeedSentTextChanged) Q_PROPERTY(QString labelStateText READ getLabelStateText WRITE setLabelStateText NOTIFY labelStateTextChanged) @@ -76,9 +51,6 @@ class UiLogic : public QObject Q_PROPERTY(bool widgetVpnModeEnabled READ getWidgetVpnModeEnabled WRITE setWidgetVpnModeEnabled NOTIFY widgetVpnModeEnabledChanged) Q_PROPERTY(QString labelErrorText READ getLabelErrorText WRITE setLabelErrorText NOTIFY labelErrorTextChanged) Q_PROPERTY(QString dialogConnectErrorText READ getDialogConnectErrorText WRITE setDialogConnectErrorText NOTIFY dialogConnectErrorTextChanged) - Q_PROPERTY(bool pageServerProtocolsEnabled READ getPageServerProtocolsEnabled WRITE setPageServerProtocolsEnabled NOTIFY pageServerProtocolsEnabledChanged) - Q_PROPERTY(int progressBarProtocolsContainerReinstallValue READ getProgressBarProtocolsContainerReinstallValue WRITE setProgressBarProtocolsContainerReinstallValue NOTIFY progressBarProtocolsContainerReinstallValueChanged) - Q_PROPERTY(int progressBarProtocolsContainerReinstallMaximium READ getProgressBarProtocolsContainerReinstallMaximium WRITE setProgressBarProtocolsContainerReinstallMaximium NOTIFY progressBarProtocolsContainerReinstallMaximiumChanged) Q_PROPERTY(bool pushButtonVpnAddSiteEnabled READ getPushButtonVpnAddSiteEnabled WRITE setPushButtonVpnAddSiteEnabled NOTIFY pushButtonVpnAddSiteEnabledChanged) @@ -100,7 +72,7 @@ public: friend class ProtocolSettingsLogic; friend class ServerListLogic; friend class ServerSettingsLogic; - friend class ServerVpnProtocolsLogic; + friend class ServerContainersLogic; friend class ShareConnectionLogic; friend class SitesLogic; friend class StartPageLogic; @@ -114,15 +86,6 @@ public: Q_INVOKABLE void initalizeUiLogic(); - bool getFrameWireguardSettingsVisible() const; - void setFrameWireguardSettingsVisible(bool frameWireguardSettingsVisible); - bool getFrameWireguardVisible() const; - void setFrameWireguardVisible(bool frameWireguardVisible); - - - - - int getCurrentPageValue() const; void setCurrentPageValue(int currentPageValue); QString getTrayIconUrl() const; @@ -140,54 +103,8 @@ public: void setPushButtonConnectChecked(bool pushButtonConnectChecked); - bool getPushButtonProtoOpenvpnContInstallChecked() const; - void setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked); - bool getPushButtonProtoSsOpenvpnContInstallChecked() const; - void setPushButtonProtoSsOpenvpnContInstallChecked(bool pushButtonProtoSsOpenvpnContInstallChecked); - bool getPushButtonProtoCloakOpenvpnContInstallChecked() const; - void setPushButtonProtoCloakOpenvpnContInstallChecked(bool pushButtonProtoCloakOpenvpnContInstallChecked); - bool getPushButtonProtoWireguardContInstallChecked() const; - void setPushButtonProtoWireguardContInstallChecked(bool pushButtonProtoWireguardContInstallChecked); - bool getPushButtonProtoOpenvpnContInstallEnabled() const; - void setPushButtonProtoOpenvpnContInstallEnabled(bool pushButtonProtoOpenvpnContInstallEnabled); - bool getPushButtonProtoSsOpenvpnContInstallEnabled() const; - void setPushButtonProtoSsOpenvpnContInstallEnabled(bool pushButtonProtoSsOpenvpnContInstallEnabled); - bool getPushButtonProtoCloakOpenvpnContInstallEnabled() const; - void setPushButtonProtoCloakOpenvpnContInstallEnabled(bool pushButtonProtoCloakOpenvpnContInstallEnabled); - bool getPushButtonProtoWireguardContInstallEnabled() const; - void setPushButtonProtoWireguardContInstallEnabled(bool pushButtonProtoWireguardContInstallEnabled); - bool getPushButtonProtoOpenvpnContDefaultChecked() const; - void setPushButtonProtoOpenvpnContDefaultChecked(bool pushButtonProtoOpenvpnContDefaultChecked); - bool getPushButtonProtoSsOpenvpnContDefaultChecked() const; - void setPushButtonProtoSsOpenvpnContDefaultChecked(bool pushButtonProtoSsOpenvpnContDefaultChecked); - bool getPushButtonProtoCloakOpenvpnContDefaultChecked() const; - void setPushButtonProtoCloakOpenvpnContDefaultChecked(bool pushButtonProtoCloakOpenvpnContDefaultChecked); - bool getPushButtonProtoWireguardContDefaultChecked() const; - void setPushButtonProtoWireguardContDefaultChecked(bool pushButtonProtoWireguardContDefaultChecked); - bool getPushButtonProtoOpenvpnContDefaultVisible() const; - void setPushButtonProtoOpenvpnContDefaultVisible(bool pushButtonProtoOpenvpnContDefaultVisible); - bool getPushButtonProtoSsOpenvpnContDefaultVisible() const; - void setPushButtonProtoSsOpenvpnContDefaultVisible(bool pushButtonProtoSsOpenvpnContDefaultVisible); - bool getPushButtonProtoCloakOpenvpnContDefaultVisible() const; - void setPushButtonProtoCloakOpenvpnContDefaultVisible(bool pushButtonProtoCloakOpenvpnContDefaultVisible); - bool getPushButtonProtoWireguardContDefaultVisible() const; - void setPushButtonProtoWireguardContDefaultVisible(bool pushButtonProtoWireguardContDefaultVisible); - bool getPushButtonProtoOpenvpnContShareVisible() const; - void setPushButtonProtoOpenvpnContShareVisible(bool pushButtonProtoOpenvpnContShareVisible); - bool getPushButtonProtoSsOpenvpnContShareVisible() const; - void setPushButtonProtoSsOpenvpnContShareVisible(bool pushButtonProtoSsOpenvpnContShareVisible); - bool getPushButtonProtoCloakOpenvpnContShareVisible() const; - void setPushButtonProtoCloakOpenvpnContShareVisible(bool pushButtonProtoCloakOpenvpnContShareVisible); - bool getPushButtonProtoWireguardContShareVisible() const; - void setPushButtonProtoWireguardContShareVisible(bool pushButtonProtoWireguardContShareVisible); - bool getFrameOpenvpnSettingsVisible() const; - void setFrameOpenvpnSettingsVisible(bool frameOpenvpnSettingsVisible); - bool getFrameOpenvpnSsSettingsVisible() const; - void setFrameOpenvpnSsSettingsVisible(bool frameOpenvpnSsSettingsVisible); - bool getFrameOpenvpnSsCloakSettingsVisible() const; - void setFrameOpenvpnSsCloakSettingsVisible(bool frameOpenvpnSsCloakSettingsVisible); - bool getProgressBarProtocolsContainerReinstallVisible() const; - void setProgressBarProtocolsContainerReinstallVisible(bool progressBarProtocolsContainerReinstallVisible); + + QString getLabelSpeedReceivedText() const; void setLabelSpeedReceivedText(const QString &labelSpeedReceivedText); QString getLabelSpeedSentText() const; @@ -208,12 +125,7 @@ public: - bool getPageServerProtocolsEnabled() const; - void setPageServerProtocolsEnabled(bool pageServerProtocolsEnabled); - int getProgressBarProtocolsContainerReinstallValue() const; - void setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue); - int getProgressBarProtocolsContainerReinstallMaximium() const; - void setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium); + bool getRadioButtonVpnModeAllSitesChecked() const; @@ -237,20 +149,9 @@ public: Q_INVOKABLE void onPushButtonProtoSsOpenvpnContOpenvpnConfigClicked(); Q_INVOKABLE void onPushButtonProtoSsOpenvpnContSsConfigClicked(); - Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked(); - Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContSsConfigClicked(); - Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContCloakConfigClicked(); - - Q_INVOKABLE void onCloseWindow(); - Q_INVOKABLE void updateProtocolsPage(); - signals: - void frameWireguardSettingsVisibleChanged(); - void frameWireguardVisibleChanged(); - - void radioButtonVpnModeAllSitesCheckedChanged(); void radioButtonVpnModeForwardSitesCheckedChanged(); @@ -274,30 +175,8 @@ signals: void pushButtonConnectCheckedChanged(); - void pushButtonProtoOpenvpnContInstallCheckedChanged(); - void pushButtonProtoSsOpenvpnContInstallCheckedChanged(); - void pushButtonProtoCloakOpenvpnContInstallCheckedChanged(); - void pushButtonProtoWireguardContInstallCheckedChanged(); - void pushButtonProtoOpenvpnContInstallEnabledChanged(); - void pushButtonProtoSsOpenvpnContInstallEnabledChanged(); - void pushButtonProtoCloakOpenvpnContInstallEnabledChanged(); - void pushButtonProtoWireguardContInstallEnabledChanged(); - void pushButtonProtoOpenvpnContDefaultCheckedChanged(); - void pushButtonProtoSsOpenvpnContDefaultCheckedChanged(); - void pushButtonProtoCloakOpenvpnContDefaultCheckedChanged(); - void pushButtonProtoWireguardContDefaultCheckedChanged(); - void pushButtonProtoOpenvpnContDefaultVisibleChanged(); - void pushButtonProtoSsOpenvpnContDefaultVisibleChanged(); - void pushButtonProtoCloakOpenvpnContDefaultVisibleChanged(); - void pushButtonProtoWireguardContDefaultVisibleChanged(); - void pushButtonProtoOpenvpnContShareVisibleChanged(); - void pushButtonProtoSsOpenvpnContShareVisibleChanged(); - void pushButtonProtoCloakOpenvpnContShareVisibleChanged(); - void pushButtonProtoWireguardContShareVisibleChanged(); - void frameOpenvpnSettingsVisibleChanged(); - void frameOpenvpnSsSettingsVisibleChanged(); - void frameOpenvpnSsCloakSettingsVisibleChanged(); - void progressBarProtocolsContainerReinstallVisibleChanged(); + + void labelSpeedReceivedTextChanged(); void labelSpeedSentTextChanged(); void labelStateTextChanged(); @@ -308,13 +187,6 @@ signals: void dialogConnectErrorTextChanged(); - void pageServerProtocolsEnabledChanged(); - void progressBarProtocolsContainerReinstallValueChanged(); - void progressBarProtocolsContainerReinstallMaximiumChanged(); - - - - void goToPage(int page, bool reset = true, bool slide = true); void closePage(); void setStartPage(int page, bool slide = true); @@ -322,25 +194,8 @@ signals: void showConnectErrorDialog(); void show(); void hide(); - void pushButtonProtoOpenvpnContDefaultClicked(bool checked); - void pushButtonProtoSsOpenvpnContDefaultClicked(bool checked); - void pushButtonProtoCloakOpenvpnContDefaultClicked(bool checked); - void pushButtonProtoWireguardContDefaultClicked(bool checked); - void pushButtonProtoOpenvpnContInstallClicked(bool checked); - void pushButtonProtoSsOpenvpnContInstallClicked(bool checked); - void pushButtonProtoCloakOpenvpnContInstallClicked(bool checked); - void pushButtonProtoWireguardContInstallClicked(bool checked); - void pushButtonProtoOpenvpnContShareClicked(bool checked); - void pushButtonProtoSsOpenvpnContShareClicked(bool checked); - void pushButtonProtoCloakOpenvpnContShareClicked(bool checked); - void pushButtonProtoWireguardContShareClicked(bool checked); private: - bool m_frameWireguardSettingsVisible; - bool m_frameWireguardVisible; - - - bool m_radioButtonVpnModeAllSitesChecked; bool m_radioButtonVpnModeForwardSitesChecked; @@ -364,30 +219,8 @@ private: - bool m_pushButtonProtoOpenvpnContInstallChecked; - bool m_pushButtonProtoSsOpenvpnContInstallChecked; - bool m_pushButtonProtoCloakOpenvpnContInstallChecked; - bool m_pushButtonProtoWireguardContInstallChecked; - bool m_pushButtonProtoOpenvpnContInstallEnabled; - bool m_pushButtonProtoSsOpenvpnContInstallEnabled; - bool m_pushButtonProtoCloakOpenvpnContInstallEnabled; - bool m_pushButtonProtoWireguardContInstallEnabled; - bool m_pushButtonProtoOpenvpnContDefaultChecked; - bool m_pushButtonProtoSsOpenvpnContDefaultChecked; - bool m_pushButtonProtoCloakOpenvpnContDefaultChecked; - bool m_pushButtonProtoWireguardContDefaultChecked; - bool m_pushButtonProtoOpenvpnContDefaultVisible; - bool m_pushButtonProtoSsOpenvpnContDefaultVisible; - bool m_pushButtonProtoCloakOpenvpnContDefaultVisible; - bool m_pushButtonProtoWireguardContDefaultVisible; - bool m_pushButtonProtoOpenvpnContShareVisible; - bool m_pushButtonProtoSsOpenvpnContShareVisible; - bool m_pushButtonProtoCloakOpenvpnContShareVisible; - bool m_pushButtonProtoWireguardContShareVisible; - bool m_frameOpenvpnSettingsVisible; - bool m_frameOpenvpnSsSettingsVisible; - bool m_frameOpenvpnSsCloakSettingsVisible; - bool m_progressBarProtocolsContainerReinstallVisible; + + QString m_labelSpeedReceivedText; QString m_labelSpeedSentText; QString m_labelStateText; @@ -396,13 +229,6 @@ private: QString m_labelErrorText; QString m_dialogConnectErrorText; - - bool m_pageServerProtocolsEnabled; - int m_progressBarProtocolsContainerReinstallValue; - int m_progressBarProtocolsContainerReinstallMaximium; - - - private slots: void onBytesChanged(quint64 receivedBytes, quint64 sentBytes); void onConnectionStateChanged(VpnProtocol::ConnectionState state); @@ -452,14 +278,6 @@ private: void setupTray(); void setTrayIcon(const QString &iconPath); - void setupNewServerConnections(); - // void setupSitesPageConnections(); - void setupProtocolsPageConnections(); - - - - - public: AppSettingsLogic *appSettingsLogic() { return m_appSettingsLogic; } @@ -470,7 +288,7 @@ public: ProtocolSettingsLogic *protocolSettingsLogic() { return m_protocolSettingsLogic; } ServerListLogic *serverListLogic() { return m_serverListLogic; } ServerSettingsLogic *serverSettingsLogic() { return m_serverSettingsLogic; } - ServerVpnProtocolsLogic *serverVpnProtocolsLogic() { return m_serverVpnProtocolsLogic; } + ServerContainersLogic *serverVpnProtocolsLogic() { return m_serverVpnProtocolsLogic; } ShareConnectionLogic *shareConnectionLogic() { return m_shareConnectionLogic; } SitesLogic *sitesLogic() { return m_sitesLogic; } StartPageLogic *startPageLogic() { return m_startPageLogic; } @@ -490,7 +308,7 @@ private: ProtocolSettingsLogic *m_protocolSettingsLogic; ServerListLogic *m_serverListLogic; ServerSettingsLogic *m_serverSettingsLogic; - ServerVpnProtocolsLogic *m_serverVpnProtocolsLogic; + ServerContainersLogic *m_serverVpnProtocolsLogic; ShareConnectionLogic *m_shareConnectionLogic; SitesLogic *m_sitesLogic; StartPageLogic *m_startPageLogic;