OpenVpnLogic added
This commit is contained in:
parent
d1ea625435
commit
a6e5cfff8a
12 changed files with 899 additions and 578 deletions
|
@ -47,6 +47,9 @@ HEADERS += \
|
||||||
ui/pages_logic/StartPageLogic.h \
|
ui/pages_logic/StartPageLogic.h \
|
||||||
ui/pages_logic/VpnLogic.h \
|
ui/pages_logic/VpnLogic.h \
|
||||||
ui/pages_logic/WizardLogic.h \
|
ui/pages_logic/WizardLogic.h \
|
||||||
|
ui/pages_logic/protocols/CloakLogic.h \
|
||||||
|
ui/pages_logic/protocols/OpenVpnLogic.h \
|
||||||
|
ui/pages_logic/protocols/ShadowSocksLogic.h \
|
||||||
ui/serversmodel.h \
|
ui/serversmodel.h \
|
||||||
ui/uilogic.h \
|
ui/uilogic.h \
|
||||||
ui/qautostart.h \
|
ui/qautostart.h \
|
||||||
|
@ -89,6 +92,9 @@ SOURCES += \
|
||||||
ui/pages_logic/StartPageLogic.cpp \
|
ui/pages_logic/StartPageLogic.cpp \
|
||||||
ui/pages_logic/VpnLogic.cpp \
|
ui/pages_logic/VpnLogic.cpp \
|
||||||
ui/pages_logic/WizardLogic.cpp \
|
ui/pages_logic/WizardLogic.cpp \
|
||||||
|
ui/pages_logic/protocols/CloakLogic.cpp \
|
||||||
|
ui/pages_logic/protocols/OpenVpnLogic.cpp \
|
||||||
|
ui/pages_logic/protocols/ShadowSocksLogic.cpp \
|
||||||
ui/serversmodel.cpp \
|
ui/serversmodel.cpp \
|
||||||
ui/uilogic.cpp \
|
ui/uilogic.cpp \
|
||||||
ui/qautostart.cpp \
|
ui/qautostart.cpp \
|
||||||
|
|
|
@ -27,6 +27,11 @@
|
||||||
#include "ui/pages_logic/VpnLogic.h"
|
#include "ui/pages_logic/VpnLogic.h"
|
||||||
#include "ui/pages_logic/WizardLogic.h"
|
#include "ui/pages_logic/WizardLogic.h"
|
||||||
|
|
||||||
|
#include "ui/pages_logic/protocols/CloakLogic.h"
|
||||||
|
#include "ui/pages_logic/protocols/OpenVpnLogic.h"
|
||||||
|
#include "ui/pages_logic/protocols/ShadowSocksLogic.h"
|
||||||
|
|
||||||
|
#include "ui/uilogic.h"
|
||||||
|
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "defines.h"
|
#include "defines.h"
|
||||||
|
@ -151,6 +156,10 @@ int main(int argc, char *argv[])
|
||||||
engine.rootContext()->setContextProperty("VpnLogic", uiLogic->vpnLogic());
|
engine.rootContext()->setContextProperty("VpnLogic", uiLogic->vpnLogic());
|
||||||
engine.rootContext()->setContextProperty("WizardLogic", uiLogic->wizardLogic());
|
engine.rootContext()->setContextProperty("WizardLogic", uiLogic->wizardLogic());
|
||||||
|
|
||||||
|
engine.rootContext()->setContextProperty("OpenVpnLogic", uiLogic->openVpnLogic());
|
||||||
|
engine.rootContext()->setContextProperty("ShadowSocksLogic", uiLogic->shadowSocksLogic());
|
||||||
|
engine.rootContext()->setContextProperty("CloakLogic", uiLogic->cloakLogic());
|
||||||
|
|
||||||
engine.load(url);
|
engine.load(url);
|
||||||
|
|
||||||
// TODO - fix
|
// TODO - fix
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#include "GeneralSettingsLogic.h"
|
#include "GeneralSettingsLogic.h"
|
||||||
|
#include "ShareConnectionLogic.h"
|
||||||
|
|
||||||
#include "../uilogic.h"
|
#include "../uilogic.h"
|
||||||
#include "ShareConnectionLogic.h"
|
|
||||||
|
|
||||||
using namespace amnezia;
|
using namespace amnezia;
|
||||||
using namespace PageEnumNS;
|
using namespace PageEnumNS;
|
||||||
|
|
51
client/ui/pages_logic/protocols/CloakLogic.cpp
Normal file
51
client/ui/pages_logic/protocols/CloakLogic.cpp
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
#include <QApplication>
|
||||||
|
#include <QClipboard>
|
||||||
|
#include <QDebug>
|
||||||
|
#include <QDesktopServices>
|
||||||
|
#include <QFileDialog>
|
||||||
|
#include <QHBoxLayout>
|
||||||
|
#include <QHostInfo>
|
||||||
|
#include <QItemSelectionModel>
|
||||||
|
#include <QJsonDocument>
|
||||||
|
#include <QJsonObject>
|
||||||
|
#include <QKeyEvent>
|
||||||
|
#include <QMenu>
|
||||||
|
#include <QMessageBox>
|
||||||
|
#include <QMetaEnum>
|
||||||
|
#include <QSysInfo>
|
||||||
|
#include <QThread>
|
||||||
|
#include <QTimer>
|
||||||
|
#include <QRegularExpression>
|
||||||
|
#include <QSaveFile>
|
||||||
|
|
||||||
|
//#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 "CloakLogic.h"
|
||||||
|
#include "utils.h"
|
||||||
|
#include "vpnconnection.h"
|
||||||
|
#include <functional>
|
||||||
|
|
||||||
|
|
||||||
|
using namespace amnezia;
|
||||||
|
using namespace PageEnumNS;
|
||||||
|
|
||||||
|
|
||||||
|
CloakLogic::CloakLogic(UiLogic *uiLogic, QObject *parent):
|
||||||
|
QObject(parent),
|
||||||
|
m_uiLogic(uiLogic)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
34
client/ui/pages_logic/protocols/CloakLogic.h
Normal file
34
client/ui/pages_logic/protocols/CloakLogic.h
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
#ifndef CLOAK_LOGIC_H
|
||||||
|
#define CLOAK_LOGIC_H
|
||||||
|
|
||||||
|
#include "../../pages.h"
|
||||||
|
#include "settings.h"
|
||||||
|
|
||||||
|
class UiLogic;
|
||||||
|
|
||||||
|
class CloakLogic : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit CloakLogic(UiLogic *uiLogic, QObject *parent = nullptr);
|
||||||
|
~CloakLogic() = default;
|
||||||
|
|
||||||
|
signals:
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
Settings m_settings;
|
||||||
|
UiLogic *m_uiLogic;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
#endif // CLOAK_LOGIC_H
|
474
client/ui/pages_logic/protocols/OpenVpnLogic.cpp
Normal file
474
client/ui/pages_logic/protocols/OpenVpnLogic.cpp
Normal file
|
@ -0,0 +1,474 @@
|
||||||
|
//#include <QApplication>
|
||||||
|
//#include <QClipboard>
|
||||||
|
//#include <QDebug>
|
||||||
|
//#include <QDesktopServices>
|
||||||
|
//#include <QFileDialog>
|
||||||
|
//#include <QHBoxLayout>
|
||||||
|
//#include <QHostInfo>
|
||||||
|
//#include <QItemSelectionModel>
|
||||||
|
//#include <QJsonDocument>
|
||||||
|
//#include <QJsonObject>
|
||||||
|
//#include <QKeyEvent>
|
||||||
|
//#include <QMenu>
|
||||||
|
//#include <QMessageBox>
|
||||||
|
//#include <QMetaEnum>
|
||||||
|
//#include <QSysInfo>
|
||||||
|
//#include <QThread>
|
||||||
|
//#include <QTimer>
|
||||||
|
//#include <QRegularExpression>
|
||||||
|
//#include <QSaveFile>
|
||||||
|
|
||||||
|
//#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 "OpenVpnLogic.h"
|
||||||
|
#include "utils.h"
|
||||||
|
#include "vpnconnection.h"
|
||||||
|
#include <functional>
|
||||||
|
#include "../../uilogic.h"
|
||||||
|
|
||||||
|
using namespace amnezia;
|
||||||
|
using namespace PageEnumNS;
|
||||||
|
|
||||||
|
OpenVpnLogic::OpenVpnLogic(UiLogic *uiLogic, QObject *parent):
|
||||||
|
QObject(parent),
|
||||||
|
m_uiLogic(uiLogic),
|
||||||
|
m_lineEditProtoOpenvpnSubnetText{},
|
||||||
|
m_radioButtonProtoOpenvpnUdpChecked{false},
|
||||||
|
m_checkBoxProtoOpenvpnAutoEncryptionChecked{},
|
||||||
|
m_comboBoxProtoOpenvpnCipherText{"AES-256-GCM"},
|
||||||
|
m_comboBoxProtoOpenvpnHashText{"SHA512"},
|
||||||
|
m_checkBoxProtoOpenvpnBlockDnsChecked{false},
|
||||||
|
m_lineEditProtoOpenvpnPortText{},
|
||||||
|
m_checkBoxProtoOpenvpnTlsAuthChecked{false},
|
||||||
|
m_widgetProtoOpenvpnEnabled{false},
|
||||||
|
m_pushButtonProtoOpenvpnSaveVisible{false},
|
||||||
|
m_progressBarProtoOpenvpnResetVisible{false},
|
||||||
|
m_radioButtonProtoOpenvpnUdpEnabled{false},
|
||||||
|
m_radioButtonProtoOpenvpnTcpEnabled{false},
|
||||||
|
m_radioButtonProtoOpenvpnTcpChecked{false},
|
||||||
|
m_lineEditProtoOpenvpnPortEnabled{false},
|
||||||
|
m_comboBoxProtoOpenvpnCipherEnabled{true},
|
||||||
|
m_comboBoxProtoOpenvpnHashEnabled{true},
|
||||||
|
m_pageProtoOpenvpnEnabled{true},
|
||||||
|
m_labelProtoOpenvpnInfoVisible{true},
|
||||||
|
m_labelProtoOpenvpnInfoText{},
|
||||||
|
m_progressBarProtoOpenvpnResetValue{0},
|
||||||
|
m_progressBarProtoOpenvpnResetMaximium{100}
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::updateOpenVpnPage(const QJsonObject &openvpnConfig, DockerContainer container, bool haveAuthData)
|
||||||
|
{
|
||||||
|
setWidgetProtoOpenvpnEnabled(haveAuthData);
|
||||||
|
setPushButtonProtoOpenvpnSaveVisible(haveAuthData);
|
||||||
|
setProgressBarProtoOpenvpnResetVisible(haveAuthData);
|
||||||
|
|
||||||
|
setRadioButtonProtoOpenvpnUdpEnabled(true);
|
||||||
|
setRadioButtonProtoOpenvpnTcpEnabled(true);
|
||||||
|
|
||||||
|
setLineEditProtoOpenvpnSubnetText(openvpnConfig.value(config_key::subnet_address).
|
||||||
|
toString(protocols::openvpn::defaultSubnetAddress));
|
||||||
|
|
||||||
|
QString trasnsport = openvpnConfig.value(config_key::transport_proto).
|
||||||
|
toString(protocols::openvpn::defaultTransportProto);
|
||||||
|
|
||||||
|
setRadioButtonProtoOpenvpnUdpChecked(trasnsport == protocols::openvpn::defaultTransportProto);
|
||||||
|
setRadioButtonProtoOpenvpnTcpChecked(trasnsport != protocols::openvpn::defaultTransportProto);
|
||||||
|
|
||||||
|
setComboBoxProtoOpenvpnCipherText(openvpnConfig.value(config_key::cipher).
|
||||||
|
toString(protocols::openvpn::defaultCipher));
|
||||||
|
|
||||||
|
setComboBoxProtoOpenvpnHashText(openvpnConfig.value(config_key::hash).
|
||||||
|
toString(protocols::openvpn::defaultHash));
|
||||||
|
|
||||||
|
bool blockOutsideDns = openvpnConfig.value(config_key::block_outside_dns).toBool(protocols::openvpn::defaultBlockOutsideDns);
|
||||||
|
setCheckBoxProtoOpenvpnBlockDnsChecked(blockOutsideDns);
|
||||||
|
|
||||||
|
bool isNcpDisabled = openvpnConfig.value(config_key::ncp_disable).toBool(protocols::openvpn::defaultNcpDisable);
|
||||||
|
setCheckBoxProtoOpenvpnAutoEncryptionChecked(!isNcpDisabled);
|
||||||
|
|
||||||
|
bool isTlsAuth = openvpnConfig.value(config_key::tls_auth).toBool(protocols::openvpn::defaultTlsAuth);
|
||||||
|
setCheckBoxProtoOpenvpnTlsAuthChecked(isTlsAuth);
|
||||||
|
|
||||||
|
if (container == DockerContainer::OpenVpnOverShadowSocks) {
|
||||||
|
setRadioButtonProtoOpenvpnUdpEnabled(false);
|
||||||
|
setRadioButtonProtoOpenvpnTcpEnabled(false);
|
||||||
|
setRadioButtonProtoOpenvpnTcpChecked(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
setLineEditProtoOpenvpnPortText(openvpnConfig.value(config_key::port).
|
||||||
|
toString(protocols::openvpn::defaultPort));
|
||||||
|
|
||||||
|
setLineEditProtoOpenvpnPortEnabled(container == DockerContainer::OpenVpn);
|
||||||
|
}
|
||||||
|
|
||||||
|
QString OpenVpnLogic::getLineEditProtoOpenvpnSubnetText() const
|
||||||
|
{
|
||||||
|
return m_lineEditProtoOpenvpnSubnetText;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setLineEditProtoOpenvpnSubnetText(const QString &lineEditProtoOpenvpnSubnetText)
|
||||||
|
{
|
||||||
|
if (m_lineEditProtoOpenvpnSubnetText != lineEditProtoOpenvpnSubnetText) {
|
||||||
|
m_lineEditProtoOpenvpnSubnetText = lineEditProtoOpenvpnSubnetText;
|
||||||
|
emit lineEditProtoOpenvpnSubnetTextChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getRadioButtonProtoOpenvpnUdpChecked() const
|
||||||
|
{
|
||||||
|
return m_radioButtonProtoOpenvpnUdpChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setRadioButtonProtoOpenvpnUdpChecked(bool radioButtonProtoOpenvpnUdpChecked)
|
||||||
|
{
|
||||||
|
if (m_radioButtonProtoOpenvpnUdpChecked != radioButtonProtoOpenvpnUdpChecked) {
|
||||||
|
m_radioButtonProtoOpenvpnUdpChecked = radioButtonProtoOpenvpnUdpChecked;
|
||||||
|
emit radioButtonProtoOpenvpnUdpCheckedChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getCheckBoxProtoOpenvpnAutoEncryptionChecked() const
|
||||||
|
{
|
||||||
|
return m_checkBoxProtoOpenvpnAutoEncryptionChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setCheckBoxProtoOpenvpnAutoEncryptionChecked(bool checkBoxProtoOpenvpnAutoEncryptionChecked)
|
||||||
|
{
|
||||||
|
if (m_checkBoxProtoOpenvpnAutoEncryptionChecked != checkBoxProtoOpenvpnAutoEncryptionChecked) {
|
||||||
|
m_checkBoxProtoOpenvpnAutoEncryptionChecked = checkBoxProtoOpenvpnAutoEncryptionChecked;
|
||||||
|
emit checkBoxProtoOpenvpnAutoEncryptionCheckedChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString OpenVpnLogic::getComboBoxProtoOpenvpnCipherText() const
|
||||||
|
{
|
||||||
|
return m_comboBoxProtoOpenvpnCipherText;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setComboBoxProtoOpenvpnCipherText(const QString &comboBoxProtoOpenvpnCipherText)
|
||||||
|
{
|
||||||
|
if (m_comboBoxProtoOpenvpnCipherText != comboBoxProtoOpenvpnCipherText) {
|
||||||
|
m_comboBoxProtoOpenvpnCipherText = comboBoxProtoOpenvpnCipherText;
|
||||||
|
emit comboBoxProtoOpenvpnCipherTextChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString OpenVpnLogic::getComboBoxProtoOpenvpnHashText() const
|
||||||
|
{
|
||||||
|
return m_comboBoxProtoOpenvpnHashText;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setComboBoxProtoOpenvpnHashText(const QString &comboBoxProtoOpenvpnHashText)
|
||||||
|
{
|
||||||
|
if (m_comboBoxProtoOpenvpnHashText != comboBoxProtoOpenvpnHashText) {
|
||||||
|
m_comboBoxProtoOpenvpnHashText = comboBoxProtoOpenvpnHashText;
|
||||||
|
emit comboBoxProtoOpenvpnHashTextChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getCheckBoxProtoOpenvpnBlockDnsChecked() const
|
||||||
|
{
|
||||||
|
return m_checkBoxProtoOpenvpnBlockDnsChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setCheckBoxProtoOpenvpnBlockDnsChecked(bool checkBoxProtoOpenvpnBlockDnsChecked)
|
||||||
|
{
|
||||||
|
if (m_checkBoxProtoOpenvpnBlockDnsChecked != checkBoxProtoOpenvpnBlockDnsChecked) {
|
||||||
|
m_checkBoxProtoOpenvpnBlockDnsChecked = checkBoxProtoOpenvpnBlockDnsChecked;
|
||||||
|
emit checkBoxProtoOpenvpnBlockDnsCheckedChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString OpenVpnLogic::getLineEditProtoOpenvpnPortText() const
|
||||||
|
{
|
||||||
|
return m_lineEditProtoOpenvpnPortText;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setLineEditProtoOpenvpnPortText(const QString &lineEditProtoOpenvpnPortText)
|
||||||
|
{
|
||||||
|
if (m_lineEditProtoOpenvpnPortText != lineEditProtoOpenvpnPortText) {
|
||||||
|
m_lineEditProtoOpenvpnPortText = lineEditProtoOpenvpnPortText;
|
||||||
|
emit lineEditProtoOpenvpnPortTextChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getCheckBoxProtoOpenvpnTlsAuthChecked() const
|
||||||
|
{
|
||||||
|
return m_checkBoxProtoOpenvpnTlsAuthChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setCheckBoxProtoOpenvpnTlsAuthChecked(bool checkBoxProtoOpenvpnTlsAuthChecked)
|
||||||
|
{
|
||||||
|
if (m_checkBoxProtoOpenvpnTlsAuthChecked != checkBoxProtoOpenvpnTlsAuthChecked) {
|
||||||
|
m_checkBoxProtoOpenvpnTlsAuthChecked = checkBoxProtoOpenvpnTlsAuthChecked;
|
||||||
|
emit checkBoxProtoOpenvpnTlsAuthCheckedChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getWidgetProtoOpenvpnEnabled() const
|
||||||
|
{
|
||||||
|
return m_widgetProtoOpenvpnEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setWidgetProtoOpenvpnEnabled(bool widgetProtoOpenvpnEnabled)
|
||||||
|
{
|
||||||
|
if (m_widgetProtoOpenvpnEnabled != widgetProtoOpenvpnEnabled) {
|
||||||
|
m_widgetProtoOpenvpnEnabled = widgetProtoOpenvpnEnabled;
|
||||||
|
emit widgetProtoOpenvpnEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getPushButtonProtoOpenvpnSaveVisible() const
|
||||||
|
{
|
||||||
|
return m_pushButtonProtoOpenvpnSaveVisible;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setPushButtonProtoOpenvpnSaveVisible(bool pushButtonProtoOpenvpnSaveVisible)
|
||||||
|
{
|
||||||
|
if (m_pushButtonProtoOpenvpnSaveVisible != pushButtonProtoOpenvpnSaveVisible) {
|
||||||
|
m_pushButtonProtoOpenvpnSaveVisible = pushButtonProtoOpenvpnSaveVisible;
|
||||||
|
emit pushButtonProtoOpenvpnSaveVisibleChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getProgressBarProtoOpenvpnResetVisible() const
|
||||||
|
{
|
||||||
|
return m_progressBarProtoOpenvpnResetVisible;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setProgressBarProtoOpenvpnResetVisible(bool progressBarProtoOpenvpnResetVisible)
|
||||||
|
{
|
||||||
|
if (m_progressBarProtoOpenvpnResetVisible != progressBarProtoOpenvpnResetVisible) {
|
||||||
|
m_progressBarProtoOpenvpnResetVisible = progressBarProtoOpenvpnResetVisible;
|
||||||
|
emit progressBarProtoOpenvpnResetVisibleChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getRadioButtonProtoOpenvpnUdpEnabled() const
|
||||||
|
{
|
||||||
|
return m_radioButtonProtoOpenvpnUdpEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void OpenVpnLogic::setRadioButtonProtoOpenvpnUdpEnabled(bool radioButtonProtoOpenvpnUdpEnabled)
|
||||||
|
{
|
||||||
|
if (m_radioButtonProtoOpenvpnUdpEnabled != radioButtonProtoOpenvpnUdpEnabled) {
|
||||||
|
m_radioButtonProtoOpenvpnUdpEnabled = radioButtonProtoOpenvpnUdpEnabled;
|
||||||
|
emit radioButtonProtoOpenvpnUdpEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getRadioButtonProtoOpenvpnTcpEnabled() const
|
||||||
|
{
|
||||||
|
return m_radioButtonProtoOpenvpnTcpEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setRadioButtonProtoOpenvpnTcpEnabled(bool radioButtonProtoOpenvpnTcpEnabled)
|
||||||
|
{
|
||||||
|
if (m_radioButtonProtoOpenvpnTcpEnabled != radioButtonProtoOpenvpnTcpEnabled) {
|
||||||
|
m_radioButtonProtoOpenvpnTcpEnabled = radioButtonProtoOpenvpnTcpEnabled;
|
||||||
|
emit radioButtonProtoOpenvpnTcpEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getRadioButtonProtoOpenvpnTcpChecked() const
|
||||||
|
{
|
||||||
|
return m_radioButtonProtoOpenvpnTcpChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setRadioButtonProtoOpenvpnTcpChecked(bool radioButtonProtoOpenvpnTcpChecked)
|
||||||
|
{
|
||||||
|
if (m_radioButtonProtoOpenvpnTcpChecked != radioButtonProtoOpenvpnTcpChecked) {
|
||||||
|
m_radioButtonProtoOpenvpnTcpChecked = radioButtonProtoOpenvpnTcpChecked;
|
||||||
|
emit radioButtonProtoOpenvpnTcpCheckedChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getLineEditProtoOpenvpnPortEnabled() const
|
||||||
|
{
|
||||||
|
return m_lineEditProtoOpenvpnPortEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setLineEditProtoOpenvpnPortEnabled(bool lineEditProtoOpenvpnPortEnabled)
|
||||||
|
{
|
||||||
|
if (m_lineEditProtoOpenvpnPortEnabled != lineEditProtoOpenvpnPortEnabled) {
|
||||||
|
m_lineEditProtoOpenvpnPortEnabled = lineEditProtoOpenvpnPortEnabled;
|
||||||
|
emit lineEditProtoOpenvpnPortEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getComboBoxProtoOpenvpnCipherEnabled() const
|
||||||
|
{
|
||||||
|
return m_comboBoxProtoOpenvpnCipherEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setComboBoxProtoOpenvpnCipherEnabled(bool comboBoxProtoOpenvpnCipherEnabled)
|
||||||
|
{
|
||||||
|
if (m_comboBoxProtoOpenvpnCipherEnabled != comboBoxProtoOpenvpnCipherEnabled) {
|
||||||
|
m_comboBoxProtoOpenvpnCipherEnabled = comboBoxProtoOpenvpnCipherEnabled;
|
||||||
|
emit comboBoxProtoOpenvpnCipherEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getComboBoxProtoOpenvpnHashEnabled() const
|
||||||
|
{
|
||||||
|
return m_comboBoxProtoOpenvpnHashEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setComboBoxProtoOpenvpnHashEnabled(bool comboBoxProtoOpenvpnHashEnabled)
|
||||||
|
{
|
||||||
|
if (m_comboBoxProtoOpenvpnHashEnabled != comboBoxProtoOpenvpnHashEnabled) {
|
||||||
|
m_comboBoxProtoOpenvpnHashEnabled = comboBoxProtoOpenvpnHashEnabled;
|
||||||
|
emit comboBoxProtoOpenvpnHashEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bool OpenVpnLogic::getPageProtoOpenvpnEnabled() const
|
||||||
|
{
|
||||||
|
return m_pageProtoOpenvpnEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setPageProtoOpenvpnEnabled(bool pageProtoOpenvpnEnabled)
|
||||||
|
{
|
||||||
|
if (m_pageProtoOpenvpnEnabled != pageProtoOpenvpnEnabled) {
|
||||||
|
m_pageProtoOpenvpnEnabled = pageProtoOpenvpnEnabled;
|
||||||
|
emit pageProtoOpenvpnEnabledChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool OpenVpnLogic::getLabelProtoOpenvpnInfoVisible() const
|
||||||
|
{
|
||||||
|
return m_labelProtoOpenvpnInfoVisible;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setLabelProtoOpenvpnInfoVisible(bool labelProtoOpenvpnInfoVisible)
|
||||||
|
{
|
||||||
|
if (m_labelProtoOpenvpnInfoVisible != labelProtoOpenvpnInfoVisible) {
|
||||||
|
m_labelProtoOpenvpnInfoVisible = labelProtoOpenvpnInfoVisible;
|
||||||
|
emit labelProtoOpenvpnInfoVisibleChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString OpenVpnLogic::getLabelProtoOpenvpnInfoText() const
|
||||||
|
{
|
||||||
|
return m_labelProtoOpenvpnInfoText;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setLabelProtoOpenvpnInfoText(const QString &labelProtoOpenvpnInfoText)
|
||||||
|
{
|
||||||
|
if (m_labelProtoOpenvpnInfoText != labelProtoOpenvpnInfoText) {
|
||||||
|
m_labelProtoOpenvpnInfoText = labelProtoOpenvpnInfoText;
|
||||||
|
emit labelProtoOpenvpnInfoTextChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int OpenVpnLogic::getProgressBarProtoOpenvpnResetValue() const
|
||||||
|
{
|
||||||
|
return m_progressBarProtoOpenvpnResetValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setProgressBarProtoOpenvpnResetValue(int progressBarProtoOpenvpnResetValue)
|
||||||
|
{
|
||||||
|
if (m_progressBarProtoOpenvpnResetValue != progressBarProtoOpenvpnResetValue) {
|
||||||
|
m_progressBarProtoOpenvpnResetValue = progressBarProtoOpenvpnResetValue;
|
||||||
|
emit progressBarProtoOpenvpnResetValueChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int OpenVpnLogic::getProgressBarProtoOpenvpnResetMaximium() const
|
||||||
|
{
|
||||||
|
return m_progressBarProtoOpenvpnResetMaximium;
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::setProgressBarProtoOpenvpnResetMaximium(int progressBarProtoOpenvpnResetMaximium)
|
||||||
|
{
|
||||||
|
if (m_progressBarProtoOpenvpnResetMaximium != progressBarProtoOpenvpnResetMaximium) {
|
||||||
|
m_progressBarProtoOpenvpnResetMaximium = progressBarProtoOpenvpnResetMaximium;
|
||||||
|
emit progressBarProtoOpenvpnResetMaximiumChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::onCheckBoxProtoOpenvpnAutoEncryptionClicked()
|
||||||
|
{
|
||||||
|
setComboBoxProtoOpenvpnCipherEnabled(!getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
||||||
|
setComboBoxProtoOpenvpnHashEnabled(!getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
||||||
|
}
|
||||||
|
|
||||||
|
void OpenVpnLogic::onPushButtonProtoOpenvpnSaveClicked()
|
||||||
|
{
|
||||||
|
QJsonObject protocolConfig = m_settings.protocolConfig(m_uiLogic->selectedServerIndex, m_uiLogic->selectedDockerContainer, Protocol::OpenVpn);
|
||||||
|
protocolConfig = getOpenVpnConfigFromPage(protocolConfig);
|
||||||
|
|
||||||
|
QJsonObject containerConfig = m_settings.containerConfig(m_uiLogic->selectedServerIndex, m_uiLogic->selectedDockerContainer);
|
||||||
|
QJsonObject newContainerConfig = containerConfig;
|
||||||
|
newContainerConfig.insert(config_key::openvpn, protocolConfig);
|
||||||
|
|
||||||
|
UiLogic::PageFunc page_proto_openvpn;
|
||||||
|
page_proto_openvpn.setEnabledFunc = [this] (bool enabled) -> void {
|
||||||
|
setPageProtoOpenvpnEnabled(enabled);
|
||||||
|
};
|
||||||
|
UiLogic::ButtonFunc pushButton_proto_openvpn_save;
|
||||||
|
pushButton_proto_openvpn_save.setVisibleFunc = [this] (bool visible) ->void {
|
||||||
|
setPushButtonProtoOpenvpnSaveVisible(visible);
|
||||||
|
};
|
||||||
|
UiLogic::LabelFunc label_proto_openvpn_info;
|
||||||
|
label_proto_openvpn_info.setVisibleFunc = [this] (bool visible) ->void {
|
||||||
|
setLabelProtoOpenvpnInfoVisible(visible);
|
||||||
|
};
|
||||||
|
label_proto_openvpn_info.setTextFunc = [this] (const QString& text) ->void {
|
||||||
|
setLabelProtoOpenvpnInfoText(text);
|
||||||
|
};
|
||||||
|
UiLogic::ProgressFunc progressBar_proto_openvpn_reset;
|
||||||
|
progressBar_proto_openvpn_reset.setVisibleFunc = [this] (bool visible) ->void {
|
||||||
|
setProgressBarProtoOpenvpnResetVisible(visible);
|
||||||
|
};
|
||||||
|
progressBar_proto_openvpn_reset.setValueFunc = [this] (int value) ->void {
|
||||||
|
setProgressBarProtoOpenvpnResetValue(value);
|
||||||
|
};
|
||||||
|
progressBar_proto_openvpn_reset.getValueFunc = [this] (void) -> int {
|
||||||
|
return getProgressBarProtoOpenvpnResetValue();
|
||||||
|
};
|
||||||
|
progressBar_proto_openvpn_reset.getMaximiumFunc = [this] (void) -> int {
|
||||||
|
return getProgressBarProtoOpenvpnResetMaximium();
|
||||||
|
};
|
||||||
|
|
||||||
|
ErrorCode e = m_uiLogic->doInstallAction([this, containerConfig, newContainerConfig](){
|
||||||
|
return ServerController::updateContainer(m_settings.serverCredentials(m_uiLogic->selectedServerIndex), m_uiLogic->selectedDockerContainer, containerConfig, newContainerConfig);
|
||||||
|
},
|
||||||
|
page_proto_openvpn, progressBar_proto_openvpn_reset,
|
||||||
|
pushButton_proto_openvpn_save, label_proto_openvpn_info);
|
||||||
|
|
||||||
|
if (!e) {
|
||||||
|
m_settings.setContainerConfig(m_uiLogic->selectedServerIndex, m_uiLogic->selectedDockerContainer, newContainerConfig);
|
||||||
|
m_settings.clearLastConnectionConfig(m_uiLogic->selectedServerIndex, m_uiLogic->selectedDockerContainer);
|
||||||
|
}
|
||||||
|
qDebug() << "Protocol saved with code:" << e << "for" << m_uiLogic->selectedServerIndex << m_uiLogic->selectedDockerContainer;
|
||||||
|
}
|
||||||
|
|
||||||
|
QJsonObject OpenVpnLogic::getOpenVpnConfigFromPage(QJsonObject oldConfig)
|
||||||
|
{
|
||||||
|
oldConfig.insert(config_key::subnet_address, getLineEditProtoOpenvpnSubnetText());
|
||||||
|
oldConfig.insert(config_key::transport_proto, getRadioButtonProtoOpenvpnUdpChecked() ? protocols::UDP : protocols::TCP);
|
||||||
|
oldConfig.insert(config_key::ncp_disable, ! getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
||||||
|
oldConfig.insert(config_key::cipher, getComboBoxProtoOpenvpnCipherText());
|
||||||
|
oldConfig.insert(config_key::hash, getComboBoxProtoOpenvpnHashText());
|
||||||
|
oldConfig.insert(config_key::block_outside_dns, getCheckBoxProtoOpenvpnBlockDnsChecked());
|
||||||
|
oldConfig.insert(config_key::port, getLineEditProtoOpenvpnPortText());
|
||||||
|
oldConfig.insert(config_key::tls_auth, getCheckBoxProtoOpenvpnTlsAuthChecked());
|
||||||
|
return oldConfig;
|
||||||
|
}
|
155
client/ui/pages_logic/protocols/OpenVpnLogic.h
Normal file
155
client/ui/pages_logic/protocols/OpenVpnLogic.h
Normal file
|
@ -0,0 +1,155 @@
|
||||||
|
#ifndef OPENVPN_LOGIC_H
|
||||||
|
#define OPENVPN_LOGIC_H
|
||||||
|
|
||||||
|
#include "../../pages.h"
|
||||||
|
#include "settings.h"
|
||||||
|
|
||||||
|
class UiLogic;
|
||||||
|
|
||||||
|
class OpenVpnLogic : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
Q_PROPERTY(QString lineEditProtoOpenvpnSubnetText READ getLineEditProtoOpenvpnSubnetText WRITE setLineEditProtoOpenvpnSubnetText NOTIFY lineEditProtoOpenvpnSubnetTextChanged)
|
||||||
|
Q_PROPERTY(bool radioButtonProtoOpenvpnUdpChecked READ getRadioButtonProtoOpenvpnUdpChecked WRITE setRadioButtonProtoOpenvpnUdpChecked NOTIFY radioButtonProtoOpenvpnUdpCheckedChanged)
|
||||||
|
Q_PROPERTY(bool checkBoxProtoOpenvpnAutoEncryptionChecked READ getCheckBoxProtoOpenvpnAutoEncryptionChecked WRITE setCheckBoxProtoOpenvpnAutoEncryptionChecked NOTIFY checkBoxProtoOpenvpnAutoEncryptionCheckedChanged)
|
||||||
|
Q_PROPERTY(QString comboBoxProtoOpenvpnCipherText READ getComboBoxProtoOpenvpnCipherText WRITE setComboBoxProtoOpenvpnCipherText NOTIFY comboBoxProtoOpenvpnCipherTextChanged)
|
||||||
|
Q_PROPERTY(QString comboBoxProtoOpenvpnHashText READ getComboBoxProtoOpenvpnHashText WRITE setComboBoxProtoOpenvpnHashText NOTIFY comboBoxProtoOpenvpnHashTextChanged)
|
||||||
|
Q_PROPERTY(bool checkBoxProtoOpenvpnBlockDnsChecked READ getCheckBoxProtoOpenvpnBlockDnsChecked WRITE setCheckBoxProtoOpenvpnBlockDnsChecked NOTIFY checkBoxProtoOpenvpnBlockDnsCheckedChanged)
|
||||||
|
Q_PROPERTY(QString lineEditProtoOpenvpnPortText READ getLineEditProtoOpenvpnPortText WRITE setLineEditProtoOpenvpnPortText NOTIFY lineEditProtoOpenvpnPortTextChanged)
|
||||||
|
Q_PROPERTY(bool checkBoxProtoOpenvpnTlsAuthChecked READ getCheckBoxProtoOpenvpnTlsAuthChecked WRITE setCheckBoxProtoOpenvpnTlsAuthChecked NOTIFY checkBoxProtoOpenvpnTlsAuthCheckedChanged)
|
||||||
|
|
||||||
|
Q_PROPERTY(bool widgetProtoOpenvpnEnabled READ getWidgetProtoOpenvpnEnabled WRITE setWidgetProtoOpenvpnEnabled NOTIFY widgetProtoOpenvpnEnabledChanged)
|
||||||
|
Q_PROPERTY(bool pushButtonProtoOpenvpnSaveVisible READ getPushButtonProtoOpenvpnSaveVisible WRITE setPushButtonProtoOpenvpnSaveVisible NOTIFY pushButtonProtoOpenvpnSaveVisibleChanged)
|
||||||
|
Q_PROPERTY(bool progressBarProtoOpenvpnResetVisible READ getProgressBarProtoOpenvpnResetVisible WRITE setProgressBarProtoOpenvpnResetVisible NOTIFY progressBarProtoOpenvpnResetVisibleChanged)
|
||||||
|
Q_PROPERTY(bool radioButtonProtoOpenvpnUdpEnabled READ getRadioButtonProtoOpenvpnUdpEnabled WRITE setRadioButtonProtoOpenvpnUdpEnabled NOTIFY radioButtonProtoOpenvpnUdpEnabledChanged)
|
||||||
|
Q_PROPERTY(bool radioButtonProtoOpenvpnTcpEnabled READ getRadioButtonProtoOpenvpnTcpEnabled WRITE setRadioButtonProtoOpenvpnTcpEnabled NOTIFY radioButtonProtoOpenvpnTcpEnabledChanged)
|
||||||
|
Q_PROPERTY(bool radioButtonProtoOpenvpnTcpChecked READ getRadioButtonProtoOpenvpnTcpChecked WRITE setRadioButtonProtoOpenvpnTcpChecked NOTIFY radioButtonProtoOpenvpnTcpCheckedChanged)
|
||||||
|
Q_PROPERTY(bool lineEditProtoOpenvpnPortEnabled READ getLineEditProtoOpenvpnPortEnabled WRITE setLineEditProtoOpenvpnPortEnabled NOTIFY lineEditProtoOpenvpnPortEnabledChanged)
|
||||||
|
|
||||||
|
Q_PROPERTY(bool comboBoxProtoOpenvpnCipherEnabled READ getComboBoxProtoOpenvpnCipherEnabled WRITE setComboBoxProtoOpenvpnCipherEnabled NOTIFY comboBoxProtoOpenvpnCipherEnabledChanged)
|
||||||
|
Q_PROPERTY(bool comboBoxProtoOpenvpnHashEnabled READ getComboBoxProtoOpenvpnHashEnabled WRITE setComboBoxProtoOpenvpnHashEnabled NOTIFY comboBoxProtoOpenvpnHashEnabledChanged)
|
||||||
|
Q_PROPERTY(bool pageProtoOpenvpnEnabled READ getPageProtoOpenvpnEnabled WRITE setPageProtoOpenvpnEnabled NOTIFY pageProtoOpenvpnEnabledChanged)
|
||||||
|
Q_PROPERTY(bool labelProtoOpenvpnInfoVisible READ getLabelProtoOpenvpnInfoVisible WRITE setLabelProtoOpenvpnInfoVisible NOTIFY labelProtoOpenvpnInfoVisibleChanged)
|
||||||
|
Q_PROPERTY(QString labelProtoOpenvpnInfoText READ getLabelProtoOpenvpnInfoText WRITE setLabelProtoOpenvpnInfoText NOTIFY labelProtoOpenvpnInfoTextChanged)
|
||||||
|
Q_PROPERTY(int progressBarProtoOpenvpnResetValue READ getProgressBarProtoOpenvpnResetValue WRITE setProgressBarProtoOpenvpnResetValue NOTIFY progressBarProtoOpenvpnResetValueChanged)
|
||||||
|
Q_PROPERTY(int progressBarProtoOpenvpnResetMaximium READ getProgressBarProtoOpenvpnResetMaximium WRITE setProgressBarProtoOpenvpnResetMaximium NOTIFY progressBarProtoOpenvpnResetMaximiumChanged)
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit OpenVpnLogic(UiLogic *uiLogic, QObject *parent = nullptr);
|
||||||
|
~OpenVpnLogic() = default;
|
||||||
|
|
||||||
|
void updateOpenVpnPage(const QJsonObject &openvpnConfig, DockerContainer container, bool haveAuthData);
|
||||||
|
QJsonObject getOpenVpnConfigFromPage(QJsonObject oldConfig);
|
||||||
|
|
||||||
|
QString getLineEditProtoOpenvpnSubnetText() const;
|
||||||
|
void setLineEditProtoOpenvpnSubnetText(const QString &lineEditProtoOpenvpnSubnetText);
|
||||||
|
bool getRadioButtonProtoOpenvpnUdpChecked() const;
|
||||||
|
void setRadioButtonProtoOpenvpnUdpChecked(bool radioButtonProtoOpenvpnUdpChecked);
|
||||||
|
bool getCheckBoxProtoOpenvpnAutoEncryptionChecked() const;
|
||||||
|
void setCheckBoxProtoOpenvpnAutoEncryptionChecked(bool checkBoxProtoOpenvpnAutoEncryptionChecked);
|
||||||
|
QString getComboBoxProtoOpenvpnCipherText() const;
|
||||||
|
void setComboBoxProtoOpenvpnCipherText(const QString &comboBoxProtoOpenvpnCipherText);
|
||||||
|
QString getComboBoxProtoOpenvpnHashText() const;
|
||||||
|
void setComboBoxProtoOpenvpnHashText(const QString &comboBoxProtoOpenvpnHashText);
|
||||||
|
bool getCheckBoxProtoOpenvpnBlockDnsChecked() const;
|
||||||
|
void setCheckBoxProtoOpenvpnBlockDnsChecked(bool checkBoxProtoOpenvpnBlockDnsChecked);
|
||||||
|
QString getLineEditProtoOpenvpnPortText() const;
|
||||||
|
void setLineEditProtoOpenvpnPortText(const QString &lineEditProtoOpenvpnPortText);
|
||||||
|
bool getCheckBoxProtoOpenvpnTlsAuthChecked() const;
|
||||||
|
void setCheckBoxProtoOpenvpnTlsAuthChecked(bool checkBoxProtoOpenvpnTlsAuthChecked);
|
||||||
|
|
||||||
|
|
||||||
|
bool getWidgetProtoOpenvpnEnabled() const;
|
||||||
|
void setWidgetProtoOpenvpnEnabled(bool widgetProtoOpenvpnEnabled);
|
||||||
|
bool getPushButtonProtoOpenvpnSaveVisible() const;
|
||||||
|
void setPushButtonProtoOpenvpnSaveVisible(bool pushButtonProtoOpenvpnSaveVisible);
|
||||||
|
bool getProgressBarProtoOpenvpnResetVisible() const;
|
||||||
|
void setProgressBarProtoOpenvpnResetVisible(bool progressBarProtoOpenvpnResetVisible);
|
||||||
|
bool getRadioButtonProtoOpenvpnUdpEnabled() const;
|
||||||
|
void setRadioButtonProtoOpenvpnUdpEnabled(bool radioButtonProtoOpenvpnUdpEnabled);
|
||||||
|
bool getRadioButtonProtoOpenvpnTcpEnabled() const;
|
||||||
|
void setRadioButtonProtoOpenvpnTcpEnabled(bool radioButtonProtoOpenvpnTcpEnabled);
|
||||||
|
bool getRadioButtonProtoOpenvpnTcpChecked() const;
|
||||||
|
void setRadioButtonProtoOpenvpnTcpChecked(bool radioButtonProtoOpenvpnTcpChecked);
|
||||||
|
bool getLineEditProtoOpenvpnPortEnabled() const;
|
||||||
|
void setLineEditProtoOpenvpnPortEnabled(bool lineEditProtoOpenvpnPortEnabled);
|
||||||
|
|
||||||
|
bool getComboBoxProtoOpenvpnCipherEnabled() const;
|
||||||
|
void setComboBoxProtoOpenvpnCipherEnabled(bool comboBoxProtoOpenvpnCipherEnabled);
|
||||||
|
bool getComboBoxProtoOpenvpnHashEnabled() const;
|
||||||
|
void setComboBoxProtoOpenvpnHashEnabled(bool comboBoxProtoOpenvpnHashEnabled);
|
||||||
|
bool getPageProtoOpenvpnEnabled() const;
|
||||||
|
void setPageProtoOpenvpnEnabled(bool pageProtoOpenvpnEnabled);
|
||||||
|
bool getLabelProtoOpenvpnInfoVisible() const;
|
||||||
|
void setLabelProtoOpenvpnInfoVisible(bool labelProtoOpenvpnInfoVisible);
|
||||||
|
QString getLabelProtoOpenvpnInfoText() const;
|
||||||
|
void setLabelProtoOpenvpnInfoText(const QString &labelProtoOpenvpnInfoText);
|
||||||
|
int getProgressBarProtoOpenvpnResetValue() const;
|
||||||
|
void setProgressBarProtoOpenvpnResetValue(int progressBarProtoOpenvpnResetValue);
|
||||||
|
int getProgressBarProtoOpenvpnResetMaximium() const;
|
||||||
|
void setProgressBarProtoOpenvpnResetMaximium(int progressBarProtoOpenvpnResetMaximium);
|
||||||
|
|
||||||
|
Q_INVOKABLE void onCheckBoxProtoOpenvpnAutoEncryptionClicked();
|
||||||
|
Q_INVOKABLE void onPushButtonProtoOpenvpnSaveClicked();
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void lineEditProtoOpenvpnSubnetTextChanged();
|
||||||
|
void radioButtonProtoOpenvpnUdpCheckedChanged();
|
||||||
|
void checkBoxProtoOpenvpnAutoEncryptionCheckedChanged();
|
||||||
|
void comboBoxProtoOpenvpnCipherTextChanged();
|
||||||
|
void comboBoxProtoOpenvpnHashTextChanged();
|
||||||
|
void checkBoxProtoOpenvpnBlockDnsCheckedChanged();
|
||||||
|
void lineEditProtoOpenvpnPortTextChanged();
|
||||||
|
void checkBoxProtoOpenvpnTlsAuthCheckedChanged();
|
||||||
|
void widgetProtoOpenvpnEnabledChanged();
|
||||||
|
void pushButtonProtoOpenvpnSaveVisibleChanged();
|
||||||
|
void progressBarProtoOpenvpnResetVisibleChanged();
|
||||||
|
void radioButtonProtoOpenvpnUdpEnabledChanged();
|
||||||
|
void radioButtonProtoOpenvpnTcpEnabledChanged();
|
||||||
|
void radioButtonProtoOpenvpnTcpCheckedChanged();
|
||||||
|
void lineEditProtoOpenvpnPortEnabledChanged();
|
||||||
|
void comboBoxProtoOpenvpnCipherEnabledChanged();
|
||||||
|
void comboBoxProtoOpenvpnHashEnabledChanged();
|
||||||
|
void pageProtoOpenvpnEnabledChanged();
|
||||||
|
void labelProtoOpenvpnInfoVisibleChanged();
|
||||||
|
void labelProtoOpenvpnInfoTextChanged();
|
||||||
|
void progressBarProtoOpenvpnResetValueChanged();
|
||||||
|
void progressBarProtoOpenvpnResetMaximiumChanged();
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
Settings m_settings;
|
||||||
|
UiLogic *m_uiLogic;
|
||||||
|
|
||||||
|
QString m_lineEditProtoOpenvpnSubnetText;
|
||||||
|
bool m_radioButtonProtoOpenvpnUdpChecked;
|
||||||
|
bool m_checkBoxProtoOpenvpnAutoEncryptionChecked;
|
||||||
|
QString m_comboBoxProtoOpenvpnCipherText;
|
||||||
|
QString m_comboBoxProtoOpenvpnHashText;
|
||||||
|
bool m_checkBoxProtoOpenvpnBlockDnsChecked;
|
||||||
|
QString m_lineEditProtoOpenvpnPortText;
|
||||||
|
bool m_checkBoxProtoOpenvpnTlsAuthChecked;
|
||||||
|
bool m_widgetProtoOpenvpnEnabled;
|
||||||
|
bool m_pushButtonProtoOpenvpnSaveVisible;
|
||||||
|
bool m_progressBarProtoOpenvpnResetVisible;
|
||||||
|
bool m_radioButtonProtoOpenvpnUdpEnabled;
|
||||||
|
bool m_radioButtonProtoOpenvpnTcpEnabled;
|
||||||
|
bool m_radioButtonProtoOpenvpnTcpChecked;
|
||||||
|
bool m_lineEditProtoOpenvpnPortEnabled;
|
||||||
|
bool m_comboBoxProtoOpenvpnCipherEnabled;
|
||||||
|
bool m_comboBoxProtoOpenvpnHashEnabled;
|
||||||
|
bool m_pageProtoOpenvpnEnabled;
|
||||||
|
bool m_labelProtoOpenvpnInfoVisible;
|
||||||
|
QString m_labelProtoOpenvpnInfoText;
|
||||||
|
int m_progressBarProtoOpenvpnResetValue;
|
||||||
|
int m_progressBarProtoOpenvpnResetMaximium;
|
||||||
|
};
|
||||||
|
#endif // OPENVPN_LOGIC_H
|
50
client/ui/pages_logic/protocols/ShadowSocksLogic.cpp
Normal file
50
client/ui/pages_logic/protocols/ShadowSocksLogic.cpp
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
#include <QApplication>
|
||||||
|
#include <QClipboard>
|
||||||
|
#include <QDebug>
|
||||||
|
#include <QDesktopServices>
|
||||||
|
#include <QFileDialog>
|
||||||
|
#include <QHBoxLayout>
|
||||||
|
#include <QHostInfo>
|
||||||
|
#include <QItemSelectionModel>
|
||||||
|
#include <QJsonDocument>
|
||||||
|
#include <QJsonObject>
|
||||||
|
#include <QKeyEvent>
|
||||||
|
#include <QMenu>
|
||||||
|
#include <QMessageBox>
|
||||||
|
#include <QMetaEnum>
|
||||||
|
#include <QSysInfo>
|
||||||
|
#include <QThread>
|
||||||
|
#include <QTimer>
|
||||||
|
#include <QRegularExpression>
|
||||||
|
#include <QSaveFile>
|
||||||
|
|
||||||
|
//#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 "ShadowSocksLogic.h"
|
||||||
|
#include "utils.h"
|
||||||
|
#include "vpnconnection.h"
|
||||||
|
#include <functional>
|
||||||
|
|
||||||
|
using namespace amnezia;
|
||||||
|
using namespace PageEnumNS;
|
||||||
|
|
||||||
|
|
||||||
|
ShadowSocksLogic::ShadowSocksLogic(UiLogic *uiLogic, QObject *parent):
|
||||||
|
QObject(parent),
|
||||||
|
m_uiLogic(uiLogic)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
34
client/ui/pages_logic/protocols/ShadowSocksLogic.h
Normal file
34
client/ui/pages_logic/protocols/ShadowSocksLogic.h
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
#ifndef SHADOWSOCKS_LOGIC_H
|
||||||
|
#define SHADOWSOCKS_LOGIC_H
|
||||||
|
|
||||||
|
#include "../../pages.h"
|
||||||
|
#include "settings.h"
|
||||||
|
|
||||||
|
class UiLogic;
|
||||||
|
|
||||||
|
class ShadowSocksLogic : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit ShadowSocksLogic(UiLogic *uiLogic, QObject *parent = nullptr);
|
||||||
|
~ShadowSocksLogic() = default;
|
||||||
|
|
||||||
|
signals:
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
Settings m_settings;
|
||||||
|
UiLogic *m_uiLogic;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
#endif // SHADOWSOCKS_LOGIC_H
|
|
@ -6,7 +6,7 @@ import "../../Config"
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: root
|
id: root
|
||||||
enabled: UiLogic.pageProtoOpenvpnEnabled
|
enabled: OpenVpnLogic.pageProtoOpenvpnEnabled
|
||||||
ImageButtonType {
|
ImageButtonType {
|
||||||
id: back
|
id: back
|
||||||
x: 10
|
x: 10
|
||||||
|
@ -23,19 +23,19 @@ Item {
|
||||||
y: 40
|
y: 40
|
||||||
width: 380
|
width: 380
|
||||||
height: 600
|
height: 600
|
||||||
enabled: UiLogic.widgetProtoOpenvpnEnabled
|
enabled: OpenVpnLogic.widgetProtoOpenvpnEnabled
|
||||||
CheckBoxType {
|
CheckBoxType {
|
||||||
x: 30
|
x: 30
|
||||||
y: 280
|
y: 280
|
||||||
width: 321
|
width: 321
|
||||||
height: 21
|
height: 21
|
||||||
text: qsTr("Auto-negotiate encryption")
|
text: qsTr("Auto-negotiate encryption")
|
||||||
checked: UiLogic.checkBoxProtoOpenvpnAutoEncryptionChecked
|
checked: OpenVpnLogic.checkBoxProtoOpenvpnAutoEncryptionChecked
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
UiLogic.checkBoxProtoOpenvpnAutoEncryptionChecked = checked
|
OpenVpnLogic.checkBoxProtoOpenvpnAutoEncryptionChecked = checked
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
UiLogic.checkBoxProtoOpenvpnAutoEncryptionClicked()
|
OpenVpnLogic.checkBoxProtoOpenvpnAutoEncryptionClicked()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CheckBoxType {
|
CheckBoxType {
|
||||||
|
@ -44,9 +44,9 @@ Item {
|
||||||
width: 321
|
width: 321
|
||||||
height: 21
|
height: 21
|
||||||
text: qsTr("Block DNS requests outside of VPN")
|
text: qsTr("Block DNS requests outside of VPN")
|
||||||
checked: UiLogic.checkBoxProtoOpenvpnBlockDnsChecked
|
checked: OpenVpnLogic.checkBoxProtoOpenvpnBlockDnsChecked
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
UiLogic.checkBoxProtoOpenvpnBlockDnsChecked = checked
|
OpenVpnLogic.checkBoxProtoOpenvpnBlockDnsChecked = checked
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
CheckBoxType {
|
CheckBoxType {
|
||||||
|
@ -55,9 +55,9 @@ Item {
|
||||||
width: 321
|
width: 321
|
||||||
height: 21
|
height: 21
|
||||||
text: qsTr("Enable TLS auth")
|
text: qsTr("Enable TLS auth")
|
||||||
checked: UiLogic.checkBoxProtoOpenvpnTlsAuthChecked
|
checked: OpenVpnLogic.checkBoxProtoOpenvpnTlsAuthChecked
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
UiLogic.checkBoxProtoOpenvpnTlsAuthChecked = checked
|
OpenVpnLogic.checkBoxProtoOpenvpnTlsAuthChecked = checked
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -80,16 +80,16 @@ Item {
|
||||||
]
|
]
|
||||||
currentIndex: {
|
currentIndex: {
|
||||||
for (let i = 0; i < model.length; ++i) {
|
for (let i = 0; i < model.length; ++i) {
|
||||||
if (UiLogic.comboBoxProtoOpenvpnCipherText === model[i]) {
|
if (OpenVpnLogic.comboBoxProtoOpenvpnCipherText === model[i]) {
|
||||||
return i
|
return i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return -1
|
return -1
|
||||||
}
|
}
|
||||||
onCurrentTextChanged: {
|
onCurrentTextChanged: {
|
||||||
UiLogic.comboBoxProtoOpenvpnCipherText = currentText
|
OpenVpnLogic.comboBoxProtoOpenvpnCipherText = currentText
|
||||||
}
|
}
|
||||||
enabled: UiLogic.comboBoxProtoOpenvpnCipherEnabled
|
enabled: OpenVpnLogic.comboBoxProtoOpenvpnCipherEnabled
|
||||||
}
|
}
|
||||||
ComboBoxType {
|
ComboBoxType {
|
||||||
x: 200
|
x: 200
|
||||||
|
@ -110,16 +110,16 @@ Item {
|
||||||
]
|
]
|
||||||
currentIndex: {
|
currentIndex: {
|
||||||
for (let i = 0; i < model.length; ++i) {
|
for (let i = 0; i < model.length; ++i) {
|
||||||
if (UiLogic.comboBoxProtoOpenvpnHashText === model[i]) {
|
if (OpenVpnLogic.comboBoxProtoOpenvpnHashText === model[i]) {
|
||||||
return i
|
return i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return -1
|
return -1
|
||||||
}
|
}
|
||||||
onCurrentTextChanged: {
|
onCurrentTextChanged: {
|
||||||
UiLogic.comboBoxProtoOpenvpnHashText = currentText
|
OpenVpnLogic.comboBoxProtoOpenvpnHashText = currentText
|
||||||
}
|
}
|
||||||
enabled: UiLogic.comboBoxProtoOpenvpnHashEnabled
|
enabled: OpenVpnLogic.comboBoxProtoOpenvpnHashEnabled
|
||||||
}
|
}
|
||||||
Rectangle {
|
Rectangle {
|
||||||
x: 30
|
x: 30
|
||||||
|
@ -135,8 +135,8 @@ Item {
|
||||||
width: 171
|
width: 171
|
||||||
height: 19
|
height: 19
|
||||||
text: qsTr("TCP")
|
text: qsTr("TCP")
|
||||||
enabled: UiLogic.radioButtonProtoOpenvpnTcpEnabled
|
enabled: OpenVpnLogic.radioButtonProtoOpenvpnTcpEnabled
|
||||||
checked: UiLogic.radioButtonProtoOpenvpnTcpChecked
|
checked: OpenVpnLogic.radioButtonProtoOpenvpnTcpChecked
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
UiLogic.radioButtonProtoOpenvpnTcpChecked = checked
|
UiLogic.radioButtonProtoOpenvpnTcpChecked = checked
|
||||||
}
|
}
|
||||||
|
@ -147,11 +147,11 @@ Item {
|
||||||
width: 171
|
width: 171
|
||||||
height: 19
|
height: 19
|
||||||
text: qsTr("UDP")
|
text: qsTr("UDP")
|
||||||
checked: UiLogic.radioButtonProtoOpenvpnUdpChecked
|
checked: OpenVpnLogic.radioButtonProtoOpenvpnUdpChecked
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
UiLogic.radioButtonProtoOpenvpnUdpChecked = checked
|
OpenVpnLogic.radioButtonProtoOpenvpnUdpChecked = checked
|
||||||
}
|
}
|
||||||
enabled: UiLogic.radioButtonProtoOpenvpnUdpEnabled
|
enabled: OpenVpnLogic.radioButtonProtoOpenvpnUdpEnabled
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
LabelType {
|
LabelType {
|
||||||
|
@ -208,8 +208,8 @@ Item {
|
||||||
y: 550
|
y: 550
|
||||||
width: 321
|
width: 321
|
||||||
height: 41
|
height: 41
|
||||||
visible: UiLogic.labelProtoOpenvpnInfoVisible
|
visible: OpenVpnLogic.labelProtoOpenvpnInfoVisible
|
||||||
text: UiLogic.labelProtoOpenvpnInfoText
|
text: OpenVpnLogic.labelProtoOpenvpnInfoText
|
||||||
}
|
}
|
||||||
TextFieldType {
|
TextFieldType {
|
||||||
id: lineEdit_proto_openvpn_port
|
id: lineEdit_proto_openvpn_port
|
||||||
|
@ -217,11 +217,11 @@ Item {
|
||||||
y: 230
|
y: 230
|
||||||
width: 151
|
width: 151
|
||||||
height: 31
|
height: 31
|
||||||
text: UiLogic.lineEditProtoOpenvpnPortText
|
text: OpenVpnLogic.lineEditProtoOpenvpnPortText
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
UiLogic.lineEditProtoOpenvpnPortText = text
|
OpenVpnLogic.lineEditProtoOpenvpnPortText = text
|
||||||
}
|
}
|
||||||
enabled: UiLogic.lineEditProtoOpenvpnPortEnabled
|
enabled: OpenVpnLogic.lineEditProtoOpenvpnPortEnabled
|
||||||
}
|
}
|
||||||
TextFieldType {
|
TextFieldType {
|
||||||
id: lineEdit_proto_openvpn_subnet
|
id: lineEdit_proto_openvpn_subnet
|
||||||
|
@ -229,9 +229,9 @@ Item {
|
||||||
y: 65
|
y: 65
|
||||||
width: 321
|
width: 321
|
||||||
height: 31
|
height: 31
|
||||||
text: UiLogic.lineEditProtoOpenvpnSubnetText
|
text: OpenVpnLogic.lineEditProtoOpenvpnSubnetText
|
||||||
onEditingFinished: {
|
onEditingFinished: {
|
||||||
UiLogic.lineEditProtoOpenvpnSubnetText = text
|
OpenVpnLogic.lineEditProtoOpenvpnSubnetText = text
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ProgressBar {
|
ProgressBar {
|
||||||
|
@ -241,9 +241,9 @@ Item {
|
||||||
width: 321
|
width: 321
|
||||||
height: 40
|
height: 40
|
||||||
from: 0
|
from: 0
|
||||||
to: UiLogic.progressBarProtoOpenvpnResetMaximium
|
to: OpenVpnLogic.progressBarProtoOpenvpnResetMaximium
|
||||||
value: UiLogic.progressBarProtoOpenvpnResetValue
|
value: OpenVpnLogic.progressBarProtoOpenvpnResetValue
|
||||||
visible: UiLogic.progressBarProtoOpenvpnResetVisible
|
visible: OpenVpnLogic.progressBarProtoOpenvpnResetVisible
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
implicitWidth: parent.width
|
implicitWidth: parent.width
|
||||||
implicitHeight: parent.height
|
implicitHeight: parent.height
|
||||||
|
@ -268,9 +268,9 @@ Item {
|
||||||
width: 321
|
width: 321
|
||||||
height: 40
|
height: 40
|
||||||
text: qsTr("Save and restart VPN")
|
text: qsTr("Save and restart VPN")
|
||||||
visible: UiLogic.pushButtonProtoOpenvpnSaveVisible
|
visible: OpenVpnLogic.pushButtonProtoOpenvpnSaveVisible
|
||||||
onClicked: {
|
onClicked: {
|
||||||
UiLogic.onPushButtonProtoOpenvpnSaveClicked()
|
OpenVpnLogic.onPushButtonProtoOpenvpnSaveClicked()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,6 +58,11 @@
|
||||||
#include "pages_logic/VpnLogic.h"
|
#include "pages_logic/VpnLogic.h"
|
||||||
#include "pages_logic/WizardLogic.h"
|
#include "pages_logic/WizardLogic.h"
|
||||||
|
|
||||||
|
#include "pages_logic/protocols/CloakLogic.h"
|
||||||
|
#include "pages_logic/protocols/OpenVpnLogic.h"
|
||||||
|
#include "pages_logic/protocols/ShadowSocksLogic.h"
|
||||||
|
|
||||||
|
|
||||||
using namespace amnezia;
|
using namespace amnezia;
|
||||||
using namespace PageEnumNS;
|
using namespace PageEnumNS;
|
||||||
|
|
||||||
|
@ -96,14 +101,7 @@ UiLogic::UiLogic(QObject *parent) :
|
||||||
m_lineEditProtoCloakPortText{},
|
m_lineEditProtoCloakPortText{},
|
||||||
m_comboBoxProtoShadowsocksCipherText{"chacha20-poly1305"},
|
m_comboBoxProtoShadowsocksCipherText{"chacha20-poly1305"},
|
||||||
m_lineEditProtoShadowsocksPortText{},
|
m_lineEditProtoShadowsocksPortText{},
|
||||||
m_lineEditProtoOpenvpnSubnetText{},
|
|
||||||
m_radioButtonProtoOpenvpnUdpChecked{false},
|
|
||||||
m_checkBoxProtoOpenvpnAutoEncryptionChecked{},
|
|
||||||
m_comboBoxProtoOpenvpnCipherText{"AES-256-GCM"},
|
|
||||||
m_comboBoxProtoOpenvpnHashText{"SHA512"},
|
|
||||||
m_checkBoxProtoOpenvpnBlockDnsChecked{false},
|
|
||||||
m_lineEditProtoOpenvpnPortText{},
|
|
||||||
m_checkBoxProtoOpenvpnTlsAuthChecked{false},
|
|
||||||
|
|
||||||
m_pushButtonConnectChecked{false},
|
m_pushButtonConnectChecked{false},
|
||||||
|
|
||||||
|
@ -115,13 +113,7 @@ UiLogic::UiLogic(QObject *parent) :
|
||||||
m_pushButtonProtoShadowsocksSaveVisible{false},
|
m_pushButtonProtoShadowsocksSaveVisible{false},
|
||||||
m_progressBarProtoShadowsocksResetVisible{false},
|
m_progressBarProtoShadowsocksResetVisible{false},
|
||||||
m_lineEditProtoShadowsocksPortEnabled{false},
|
m_lineEditProtoShadowsocksPortEnabled{false},
|
||||||
m_widgetProtoOpenvpnEnabled{false},
|
|
||||||
m_pushButtonProtoOpenvpnSaveVisible{false},
|
|
||||||
m_progressBarProtoOpenvpnResetVisible{false},
|
|
||||||
m_radioButtonProtoOpenvpnUdpEnabled{false},
|
|
||||||
m_radioButtonProtoOpenvpnTcpEnabled{false},
|
|
||||||
m_radioButtonProtoOpenvpnTcpChecked{false},
|
|
||||||
m_lineEditProtoOpenvpnPortEnabled{false},
|
|
||||||
m_pushButtonProtoOpenvpnContInstallChecked{false},
|
m_pushButtonProtoOpenvpnContInstallChecked{false},
|
||||||
m_pushButtonProtoSsOpenvpnContInstallChecked{false},
|
m_pushButtonProtoSsOpenvpnContInstallChecked{false},
|
||||||
m_pushButtonProtoCloakOpenvpnContInstallChecked{false},
|
m_pushButtonProtoCloakOpenvpnContInstallChecked{false},
|
||||||
|
@ -163,13 +155,7 @@ UiLogic::UiLogic(QObject *parent) :
|
||||||
m_pageServerProtocolsEnabled{true},
|
m_pageServerProtocolsEnabled{true},
|
||||||
m_progressBarProtocolsContainerReinstallValue{0},
|
m_progressBarProtocolsContainerReinstallValue{0},
|
||||||
m_progressBarProtocolsContainerReinstallMaximium{100},
|
m_progressBarProtocolsContainerReinstallMaximium{100},
|
||||||
m_comboBoxProtoOpenvpnCipherEnabled{true},
|
|
||||||
m_comboBoxProtoOpenvpnHashEnabled{true},
|
|
||||||
m_pageProtoOpenvpnEnabled{true},
|
|
||||||
m_labelProtoOpenvpnInfoVisible{true},
|
|
||||||
m_labelProtoOpenvpnInfoText{},
|
|
||||||
m_progressBarProtoOpenvpnResetValue{0},
|
|
||||||
m_progressBarProtoOpenvpnResetMaximium{100},
|
|
||||||
m_pageProtoShadowsocksEnabled{true},
|
m_pageProtoShadowsocksEnabled{true},
|
||||||
m_labelProtoShadowsocksInfoVisible{true},
|
m_labelProtoShadowsocksInfoVisible{true},
|
||||||
m_labelProtoShadowsocksInfoText{},
|
m_labelProtoShadowsocksInfoText{},
|
||||||
|
@ -198,6 +184,9 @@ UiLogic::UiLogic(QObject *parent) :
|
||||||
m_vpnLogic = new VpnLogic(this);
|
m_vpnLogic = new VpnLogic(this);
|
||||||
m_wizardLogic = new WizardLogic(this);
|
m_wizardLogic = new WizardLogic(this);
|
||||||
|
|
||||||
|
m_openVpnLogic = new OpenVpnLogic(this);
|
||||||
|
m_shadowSocksLogic = new ShadowSocksLogic(this);
|
||||||
|
m_cloakLogic = new CloakLogic(this);
|
||||||
|
|
||||||
connect(m_vpnConnection, SIGNAL(bytesChanged(quint64, quint64)), this, SLOT(onBytesChanged(quint64, quint64)));
|
connect(m_vpnConnection, SIGNAL(bytesChanged(quint64, quint64)), this, SLOT(onBytesChanged(quint64, quint64)));
|
||||||
connect(m_vpnConnection, SIGNAL(connectionStateChanged(VpnProtocol::ConnectionState)), this, SLOT(onConnectionStateChanged(VpnProtocol::ConnectionState)));
|
connect(m_vpnConnection, SIGNAL(connectionStateChanged(VpnProtocol::ConnectionState)), this, SLOT(onConnectionStateChanged(VpnProtocol::ConnectionState)));
|
||||||
|
@ -670,109 +659,7 @@ void UiLogic::setLineEditProtoShadowsocksPortText(const QString &lineEditProtoSh
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QString UiLogic::getLineEditProtoOpenvpnSubnetText() const
|
|
||||||
{
|
|
||||||
return m_lineEditProtoOpenvpnSubnetText;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setLineEditProtoOpenvpnSubnetText(const QString &lineEditProtoOpenvpnSubnetText)
|
|
||||||
{
|
|
||||||
if (m_lineEditProtoOpenvpnSubnetText != lineEditProtoOpenvpnSubnetText) {
|
|
||||||
m_lineEditProtoOpenvpnSubnetText = lineEditProtoOpenvpnSubnetText;
|
|
||||||
emit lineEditProtoOpenvpnSubnetTextChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getRadioButtonProtoOpenvpnUdpChecked() const
|
|
||||||
{
|
|
||||||
return m_radioButtonProtoOpenvpnUdpChecked;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setRadioButtonProtoOpenvpnUdpChecked(bool radioButtonProtoOpenvpnUdpChecked)
|
|
||||||
{
|
|
||||||
if (m_radioButtonProtoOpenvpnUdpChecked != radioButtonProtoOpenvpnUdpChecked) {
|
|
||||||
m_radioButtonProtoOpenvpnUdpChecked = radioButtonProtoOpenvpnUdpChecked;
|
|
||||||
emit radioButtonProtoOpenvpnUdpCheckedChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getCheckBoxProtoOpenvpnAutoEncryptionChecked() const
|
|
||||||
{
|
|
||||||
return m_checkBoxProtoOpenvpnAutoEncryptionChecked;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setCheckBoxProtoOpenvpnAutoEncryptionChecked(bool checkBoxProtoOpenvpnAutoEncryptionChecked)
|
|
||||||
{
|
|
||||||
if (m_checkBoxProtoOpenvpnAutoEncryptionChecked != checkBoxProtoOpenvpnAutoEncryptionChecked) {
|
|
||||||
m_checkBoxProtoOpenvpnAutoEncryptionChecked = checkBoxProtoOpenvpnAutoEncryptionChecked;
|
|
||||||
emit checkBoxProtoOpenvpnAutoEncryptionCheckedChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QString UiLogic::getComboBoxProtoOpenvpnCipherText() const
|
|
||||||
{
|
|
||||||
return m_comboBoxProtoOpenvpnCipherText;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setComboBoxProtoOpenvpnCipherText(const QString &comboBoxProtoOpenvpnCipherText)
|
|
||||||
{
|
|
||||||
if (m_comboBoxProtoOpenvpnCipherText != comboBoxProtoOpenvpnCipherText) {
|
|
||||||
m_comboBoxProtoOpenvpnCipherText = comboBoxProtoOpenvpnCipherText;
|
|
||||||
emit comboBoxProtoOpenvpnCipherTextChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QString UiLogic::getComboBoxProtoOpenvpnHashText() const
|
|
||||||
{
|
|
||||||
return m_comboBoxProtoOpenvpnHashText;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setComboBoxProtoOpenvpnHashText(const QString &comboBoxProtoOpenvpnHashText)
|
|
||||||
{
|
|
||||||
if (m_comboBoxProtoOpenvpnHashText != comboBoxProtoOpenvpnHashText) {
|
|
||||||
m_comboBoxProtoOpenvpnHashText = comboBoxProtoOpenvpnHashText;
|
|
||||||
emit comboBoxProtoOpenvpnHashTextChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getCheckBoxProtoOpenvpnBlockDnsChecked() const
|
|
||||||
{
|
|
||||||
return m_checkBoxProtoOpenvpnBlockDnsChecked;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setCheckBoxProtoOpenvpnBlockDnsChecked(bool checkBoxProtoOpenvpnBlockDnsChecked)
|
|
||||||
{
|
|
||||||
if (m_checkBoxProtoOpenvpnBlockDnsChecked != checkBoxProtoOpenvpnBlockDnsChecked) {
|
|
||||||
m_checkBoxProtoOpenvpnBlockDnsChecked = checkBoxProtoOpenvpnBlockDnsChecked;
|
|
||||||
emit checkBoxProtoOpenvpnBlockDnsCheckedChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QString UiLogic::getLineEditProtoOpenvpnPortText() const
|
|
||||||
{
|
|
||||||
return m_lineEditProtoOpenvpnPortText;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setLineEditProtoOpenvpnPortText(const QString &lineEditProtoOpenvpnPortText)
|
|
||||||
{
|
|
||||||
if (m_lineEditProtoOpenvpnPortText != lineEditProtoOpenvpnPortText) {
|
|
||||||
m_lineEditProtoOpenvpnPortText = lineEditProtoOpenvpnPortText;
|
|
||||||
emit lineEditProtoOpenvpnPortTextChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getCheckBoxProtoOpenvpnTlsAuthChecked() const
|
|
||||||
{
|
|
||||||
return m_checkBoxProtoOpenvpnTlsAuthChecked;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setCheckBoxProtoOpenvpnTlsAuthChecked(bool checkBoxProtoOpenvpnTlsAuthChecked)
|
|
||||||
{
|
|
||||||
if (m_checkBoxProtoOpenvpnTlsAuthChecked != checkBoxProtoOpenvpnTlsAuthChecked) {
|
|
||||||
m_checkBoxProtoOpenvpnTlsAuthChecked = checkBoxProtoOpenvpnTlsAuthChecked;
|
|
||||||
emit checkBoxProtoOpenvpnTlsAuthCheckedChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -907,96 +794,7 @@ void UiLogic::setLineEditProtoShadowsocksPortEnabled(bool lineEditProtoShadowsoc
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool UiLogic::getWidgetProtoOpenvpnEnabled() const
|
|
||||||
{
|
|
||||||
return m_widgetProtoOpenvpnEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setWidgetProtoOpenvpnEnabled(bool widgetProtoOpenvpnEnabled)
|
|
||||||
{
|
|
||||||
if (m_widgetProtoOpenvpnEnabled != widgetProtoOpenvpnEnabled) {
|
|
||||||
m_widgetProtoOpenvpnEnabled = widgetProtoOpenvpnEnabled;
|
|
||||||
emit widgetProtoOpenvpnEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getPushButtonProtoOpenvpnSaveVisible() const
|
|
||||||
{
|
|
||||||
return m_pushButtonProtoOpenvpnSaveVisible;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setPushButtonProtoOpenvpnSaveVisible(bool pushButtonProtoOpenvpnSaveVisible)
|
|
||||||
{
|
|
||||||
if (m_pushButtonProtoOpenvpnSaveVisible != pushButtonProtoOpenvpnSaveVisible) {
|
|
||||||
m_pushButtonProtoOpenvpnSaveVisible = pushButtonProtoOpenvpnSaveVisible;
|
|
||||||
emit pushButtonProtoOpenvpnSaveVisibleChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getProgressBarProtoOpenvpnResetVisible() const
|
|
||||||
{
|
|
||||||
return m_progressBarProtoOpenvpnResetVisible;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setProgressBarProtoOpenvpnResetVisible(bool progressBarProtoOpenvpnResetVisible)
|
|
||||||
{
|
|
||||||
if (m_progressBarProtoOpenvpnResetVisible != progressBarProtoOpenvpnResetVisible) {
|
|
||||||
m_progressBarProtoOpenvpnResetVisible = progressBarProtoOpenvpnResetVisible;
|
|
||||||
emit progressBarProtoOpenvpnResetVisibleChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getRadioButtonProtoOpenvpnUdpEnabled() const
|
|
||||||
{
|
|
||||||
return m_radioButtonProtoOpenvpnUdpEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setRadioButtonProtoOpenvpnUdpEnabled(bool radioButtonProtoOpenvpnUdpEnabled)
|
|
||||||
{
|
|
||||||
if (m_radioButtonProtoOpenvpnUdpEnabled != radioButtonProtoOpenvpnUdpEnabled) {
|
|
||||||
m_radioButtonProtoOpenvpnUdpEnabled = radioButtonProtoOpenvpnUdpEnabled;
|
|
||||||
emit radioButtonProtoOpenvpnUdpEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getRadioButtonProtoOpenvpnTcpEnabled() const
|
|
||||||
{
|
|
||||||
return m_radioButtonProtoOpenvpnTcpEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setRadioButtonProtoOpenvpnTcpEnabled(bool radioButtonProtoOpenvpnTcpEnabled)
|
|
||||||
{
|
|
||||||
if (m_radioButtonProtoOpenvpnTcpEnabled != radioButtonProtoOpenvpnTcpEnabled) {
|
|
||||||
m_radioButtonProtoOpenvpnTcpEnabled = radioButtonProtoOpenvpnTcpEnabled;
|
|
||||||
emit radioButtonProtoOpenvpnTcpEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getRadioButtonProtoOpenvpnTcpChecked() const
|
|
||||||
{
|
|
||||||
return m_radioButtonProtoOpenvpnTcpChecked;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setRadioButtonProtoOpenvpnTcpChecked(bool radioButtonProtoOpenvpnTcpChecked)
|
|
||||||
{
|
|
||||||
if (m_radioButtonProtoOpenvpnTcpChecked != radioButtonProtoOpenvpnTcpChecked) {
|
|
||||||
m_radioButtonProtoOpenvpnTcpChecked = radioButtonProtoOpenvpnTcpChecked;
|
|
||||||
emit radioButtonProtoOpenvpnTcpCheckedChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getLineEditProtoOpenvpnPortEnabled() const
|
|
||||||
{
|
|
||||||
return m_lineEditProtoOpenvpnPortEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setLineEditProtoOpenvpnPortEnabled(bool lineEditProtoOpenvpnPortEnabled)
|
|
||||||
{
|
|
||||||
if (m_lineEditProtoOpenvpnPortEnabled != lineEditProtoOpenvpnPortEnabled) {
|
|
||||||
m_lineEditProtoOpenvpnPortEnabled = lineEditProtoOpenvpnPortEnabled;
|
|
||||||
emit lineEditProtoOpenvpnPortEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getPushButtonProtoOpenvpnContInstallChecked() const
|
bool UiLogic::getPushButtonProtoOpenvpnContInstallChecked() const
|
||||||
{
|
{
|
||||||
|
@ -1537,95 +1335,7 @@ void UiLogic::setProgressBarProtocolsContainerReinstallMaximium(int progressBarP
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool UiLogic::getComboBoxProtoOpenvpnCipherEnabled() const
|
|
||||||
{
|
|
||||||
return m_comboBoxProtoOpenvpnCipherEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setComboBoxProtoOpenvpnCipherEnabled(bool comboBoxProtoOpenvpnCipherEnabled)
|
|
||||||
{
|
|
||||||
if (m_comboBoxProtoOpenvpnCipherEnabled != comboBoxProtoOpenvpnCipherEnabled) {
|
|
||||||
m_comboBoxProtoOpenvpnCipherEnabled = comboBoxProtoOpenvpnCipherEnabled;
|
|
||||||
emit comboBoxProtoOpenvpnCipherEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getComboBoxProtoOpenvpnHashEnabled() const
|
|
||||||
{
|
|
||||||
return m_comboBoxProtoOpenvpnHashEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setComboBoxProtoOpenvpnHashEnabled(bool comboBoxProtoOpenvpnHashEnabled)
|
|
||||||
{
|
|
||||||
if (m_comboBoxProtoOpenvpnHashEnabled != comboBoxProtoOpenvpnHashEnabled) {
|
|
||||||
m_comboBoxProtoOpenvpnHashEnabled = comboBoxProtoOpenvpnHashEnabled;
|
|
||||||
emit comboBoxProtoOpenvpnHashEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bool UiLogic::getPageProtoOpenvpnEnabled() const
|
|
||||||
{
|
|
||||||
return m_pageProtoOpenvpnEnabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setPageProtoOpenvpnEnabled(bool pageProtoOpenvpnEnabled)
|
|
||||||
{
|
|
||||||
if (m_pageProtoOpenvpnEnabled != pageProtoOpenvpnEnabled) {
|
|
||||||
m_pageProtoOpenvpnEnabled = pageProtoOpenvpnEnabled;
|
|
||||||
emit pageProtoOpenvpnEnabledChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool UiLogic::getLabelProtoOpenvpnInfoVisible() const
|
|
||||||
{
|
|
||||||
return m_labelProtoOpenvpnInfoVisible;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setLabelProtoOpenvpnInfoVisible(bool labelProtoOpenvpnInfoVisible)
|
|
||||||
{
|
|
||||||
if (m_labelProtoOpenvpnInfoVisible != labelProtoOpenvpnInfoVisible) {
|
|
||||||
m_labelProtoOpenvpnInfoVisible = labelProtoOpenvpnInfoVisible;
|
|
||||||
emit labelProtoOpenvpnInfoVisibleChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QString UiLogic::getLabelProtoOpenvpnInfoText() const
|
|
||||||
{
|
|
||||||
return m_labelProtoOpenvpnInfoText;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setLabelProtoOpenvpnInfoText(const QString &labelProtoOpenvpnInfoText)
|
|
||||||
{
|
|
||||||
if (m_labelProtoOpenvpnInfoText != labelProtoOpenvpnInfoText) {
|
|
||||||
m_labelProtoOpenvpnInfoText = labelProtoOpenvpnInfoText;
|
|
||||||
emit labelProtoOpenvpnInfoTextChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int UiLogic::getProgressBarProtoOpenvpnResetValue() const
|
|
||||||
{
|
|
||||||
return m_progressBarProtoOpenvpnResetValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setProgressBarProtoOpenvpnResetValue(int progressBarProtoOpenvpnResetValue)
|
|
||||||
{
|
|
||||||
if (m_progressBarProtoOpenvpnResetValue != progressBarProtoOpenvpnResetValue) {
|
|
||||||
m_progressBarProtoOpenvpnResetValue = progressBarProtoOpenvpnResetValue;
|
|
||||||
emit progressBarProtoOpenvpnResetValueChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int UiLogic::getProgressBarProtoOpenvpnResetMaximium() const
|
|
||||||
{
|
|
||||||
return m_progressBarProtoOpenvpnResetMaximium;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::setProgressBarProtoOpenvpnResetMaximium(int progressBarProtoOpenvpnResetMaximium)
|
|
||||||
{
|
|
||||||
if (m_progressBarProtoOpenvpnResetMaximium != progressBarProtoOpenvpnResetMaximium) {
|
|
||||||
m_progressBarProtoOpenvpnResetMaximium = progressBarProtoOpenvpnResetMaximium;
|
|
||||||
emit progressBarProtoOpenvpnResetMaximiumChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bool UiLogic::getPageProtoShadowsocksEnabled() const
|
bool UiLogic::getPageProtoShadowsocksEnabled() const
|
||||||
{
|
{
|
||||||
return m_pageProtoShadowsocksEnabled;
|
return m_pageProtoShadowsocksEnabled;
|
||||||
|
@ -1690,6 +1400,7 @@ void UiLogic::setProgressBarProtoShadowsocksResetMaximium(int progressBarProtoSh
|
||||||
emit progressBarProtoShadowsocksResetMaximiumChanged();
|
emit progressBarProtoShadowsocksResetMaximiumChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool UiLogic::getPageProtoCloakEnabled() const
|
bool UiLogic::getPageProtoCloakEnabled() const
|
||||||
{
|
{
|
||||||
return m_pageProtoCloakEnabled;
|
return m_pageProtoCloakEnabled;
|
||||||
|
@ -2495,7 +2206,7 @@ void UiLogic::onDisconnect()
|
||||||
void UiLogic::onPushButtonProtoOpenvpnContOpenvpnConfigClicked()
|
void UiLogic::onPushButtonProtoOpenvpnContOpenvpnConfigClicked()
|
||||||
{
|
{
|
||||||
selectedDockerContainer = DockerContainer::OpenVpn;
|
selectedDockerContainer = DockerContainer::OpenVpn;
|
||||||
updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
m_openVpnLogic->updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
||||||
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
||||||
goToPage(Page::OpenVpnSettings);
|
goToPage(Page::OpenVpnSettings);
|
||||||
}
|
}
|
||||||
|
@ -2503,7 +2214,7 @@ void UiLogic::onPushButtonProtoOpenvpnContOpenvpnConfigClicked()
|
||||||
void UiLogic::onPushButtonProtoSsOpenvpnContOpenvpnConfigClicked()
|
void UiLogic::onPushButtonProtoSsOpenvpnContOpenvpnConfigClicked()
|
||||||
{
|
{
|
||||||
selectedDockerContainer = DockerContainer::OpenVpnOverShadowSocks;
|
selectedDockerContainer = DockerContainer::OpenVpnOverShadowSocks;
|
||||||
updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
m_openVpnLogic->updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
||||||
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
||||||
goToPage(Page::OpenVpnSettings);
|
goToPage(Page::OpenVpnSettings);
|
||||||
}
|
}
|
||||||
|
@ -2519,7 +2230,7 @@ void UiLogic::onPushButtonProtoSsOpenvpnContSsConfigClicked()
|
||||||
void UiLogic::onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked()
|
void UiLogic::onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked()
|
||||||
{
|
{
|
||||||
selectedDockerContainer = DockerContainer::OpenVpnOverCloak;
|
selectedDockerContainer = DockerContainer::OpenVpnOverCloak;
|
||||||
updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
m_openVpnLogic->updateOpenVpnPage(m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn),
|
||||||
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
selectedDockerContainer, m_settings.haveAuthData(selectedServerIndex));
|
||||||
goToPage(Page::OpenVpnSettings);
|
goToPage(Page::OpenVpnSettings);
|
||||||
}
|
}
|
||||||
|
@ -2540,63 +2251,6 @@ void UiLogic::onPushButtonProtoCloakOpenvpnContCloakConfigClicked()
|
||||||
goToPage(Page::CloakSettings);
|
goToPage(Page::CloakSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
void UiLogic::onCheckBoxProtoOpenvpnAutoEncryptionClicked()
|
|
||||||
{
|
|
||||||
setComboBoxProtoOpenvpnCipherEnabled(!getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
|
||||||
setComboBoxProtoOpenvpnHashEnabled(!getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::onPushButtonProtoOpenvpnSaveClicked()
|
|
||||||
{
|
|
||||||
QJsonObject protocolConfig = m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::OpenVpn);
|
|
||||||
protocolConfig = getOpenVpnConfigFromPage(protocolConfig);
|
|
||||||
|
|
||||||
QJsonObject containerConfig = m_settings.containerConfig(selectedServerIndex, selectedDockerContainer);
|
|
||||||
QJsonObject newContainerConfig = containerConfig;
|
|
||||||
newContainerConfig.insert(config_key::openvpn, protocolConfig);
|
|
||||||
|
|
||||||
PageFunc page_proto_openvpn;
|
|
||||||
page_proto_openvpn.setEnabledFunc = [this] (bool enabled) -> void {
|
|
||||||
setPageProtoOpenvpnEnabled(enabled);
|
|
||||||
};
|
|
||||||
ButtonFunc pushButton_proto_openvpn_save;
|
|
||||||
pushButton_proto_openvpn_save.setVisibleFunc = [this] (bool visible) ->void {
|
|
||||||
setPushButtonProtoOpenvpnSaveVisible(visible);
|
|
||||||
};
|
|
||||||
LabelFunc label_proto_openvpn_info;
|
|
||||||
label_proto_openvpn_info.setVisibleFunc = [this] (bool visible) ->void {
|
|
||||||
setLabelProtoOpenvpnInfoVisible(visible);
|
|
||||||
};
|
|
||||||
label_proto_openvpn_info.setTextFunc = [this] (const QString& text) ->void {
|
|
||||||
setLabelProtoOpenvpnInfoText(text);
|
|
||||||
};
|
|
||||||
ProgressFunc progressBar_proto_openvpn_reset;
|
|
||||||
progressBar_proto_openvpn_reset.setVisibleFunc = [this] (bool visible) ->void {
|
|
||||||
setProgressBarProtoOpenvpnResetVisible(visible);
|
|
||||||
};
|
|
||||||
progressBar_proto_openvpn_reset.setValueFunc = [this] (int value) ->void {
|
|
||||||
setProgressBarProtoOpenvpnResetValue(value);
|
|
||||||
};
|
|
||||||
progressBar_proto_openvpn_reset.getValueFunc = [this] (void) -> int {
|
|
||||||
return getProgressBarProtoOpenvpnResetValue();
|
|
||||||
};
|
|
||||||
progressBar_proto_openvpn_reset.getMaximiumFunc = [this] (void) -> int {
|
|
||||||
return getProgressBarProtoOpenvpnResetMaximium();
|
|
||||||
};
|
|
||||||
|
|
||||||
ErrorCode e = doInstallAction([this, containerConfig, newContainerConfig](){
|
|
||||||
return ServerController::updateContainer(m_settings.serverCredentials(selectedServerIndex), selectedDockerContainer, containerConfig, newContainerConfig);
|
|
||||||
},
|
|
||||||
page_proto_openvpn, progressBar_proto_openvpn_reset,
|
|
||||||
pushButton_proto_openvpn_save, label_proto_openvpn_info);
|
|
||||||
|
|
||||||
if (!e) {
|
|
||||||
m_settings.setContainerConfig(selectedServerIndex, selectedDockerContainer, newContainerConfig);
|
|
||||||
m_settings.clearLastConnectionConfig(selectedServerIndex, selectedDockerContainer);
|
|
||||||
}
|
|
||||||
qDebug() << "Protocol saved with code:" << e << "for" << selectedServerIndex << selectedDockerContainer;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::onPushButtonProtoShadowsocksSaveClicked()
|
void UiLogic::onPushButtonProtoShadowsocksSaveClicked()
|
||||||
{
|
{
|
||||||
QJsonObject protocolConfig = m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::ShadowSocks);
|
QJsonObject protocolConfig = m_settings.protocolConfig(selectedServerIndex, selectedDockerContainer, Protocol::ShadowSocks);
|
||||||
|
@ -2622,7 +2276,7 @@ void UiLogic::onPushButtonProtoShadowsocksSaveClicked()
|
||||||
};
|
};
|
||||||
ProgressFunc progressBar_proto_shadowsocks_reset;
|
ProgressFunc progressBar_proto_shadowsocks_reset;
|
||||||
progressBar_proto_shadowsocks_reset.setVisibleFunc = [this] (bool visible) ->void {
|
progressBar_proto_shadowsocks_reset.setVisibleFunc = [this] (bool visible) ->void {
|
||||||
setProgressBarProtoOpenvpnResetVisible(visible);
|
setProgressBarProtoShadowsocksResetVisible(visible);
|
||||||
};
|
};
|
||||||
progressBar_proto_shadowsocks_reset.setValueFunc = [this] (int value) ->void {
|
progressBar_proto_shadowsocks_reset.setValueFunc = [this] (int value) ->void {
|
||||||
setProgressBarProtoShadowsocksResetValue(value);
|
setProgressBarProtoShadowsocksResetValue(value);
|
||||||
|
@ -2810,50 +2464,7 @@ void UiLogic::updateProtocolsPage()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void UiLogic::updateOpenVpnPage(const QJsonObject &openvpnConfig, DockerContainer container, bool haveAuthData)
|
|
||||||
{
|
|
||||||
setWidgetProtoOpenvpnEnabled(haveAuthData);
|
|
||||||
setPushButtonProtoOpenvpnSaveVisible(haveAuthData);
|
|
||||||
setProgressBarProtoOpenvpnResetVisible(haveAuthData);
|
|
||||||
|
|
||||||
setRadioButtonProtoOpenvpnUdpEnabled(true);
|
|
||||||
setRadioButtonProtoOpenvpnTcpEnabled(true);
|
|
||||||
|
|
||||||
setLineEditProtoOpenvpnSubnetText(openvpnConfig.value(config_key::subnet_address).
|
|
||||||
toString(protocols::openvpn::defaultSubnetAddress));
|
|
||||||
|
|
||||||
QString trasnsport = openvpnConfig.value(config_key::transport_proto).
|
|
||||||
toString(protocols::openvpn::defaultTransportProto);
|
|
||||||
|
|
||||||
setRadioButtonProtoOpenvpnUdpChecked(trasnsport == protocols::openvpn::defaultTransportProto);
|
|
||||||
setRadioButtonProtoOpenvpnTcpChecked(trasnsport != protocols::openvpn::defaultTransportProto);
|
|
||||||
|
|
||||||
setComboBoxProtoOpenvpnCipherText(openvpnConfig.value(config_key::cipher).
|
|
||||||
toString(protocols::openvpn::defaultCipher));
|
|
||||||
|
|
||||||
setComboBoxProtoOpenvpnHashText(openvpnConfig.value(config_key::hash).
|
|
||||||
toString(protocols::openvpn::defaultHash));
|
|
||||||
|
|
||||||
bool blockOutsideDns = openvpnConfig.value(config_key::block_outside_dns).toBool(protocols::openvpn::defaultBlockOutsideDns);
|
|
||||||
setCheckBoxProtoOpenvpnBlockDnsChecked(blockOutsideDns);
|
|
||||||
|
|
||||||
bool isNcpDisabled = openvpnConfig.value(config_key::ncp_disable).toBool(protocols::openvpn::defaultNcpDisable);
|
|
||||||
setCheckBoxProtoOpenvpnAutoEncryptionChecked(!isNcpDisabled);
|
|
||||||
|
|
||||||
bool isTlsAuth = openvpnConfig.value(config_key::tls_auth).toBool(protocols::openvpn::defaultTlsAuth);
|
|
||||||
setCheckBoxProtoOpenvpnTlsAuthChecked(isTlsAuth);
|
|
||||||
|
|
||||||
if (container == DockerContainer::OpenVpnOverShadowSocks) {
|
|
||||||
setRadioButtonProtoOpenvpnUdpEnabled(false);
|
|
||||||
setRadioButtonProtoOpenvpnTcpEnabled(false);
|
|
||||||
setRadioButtonProtoOpenvpnTcpChecked(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
setLineEditProtoOpenvpnPortText(openvpnConfig.value(config_key::port).
|
|
||||||
toString(protocols::openvpn::defaultPort));
|
|
||||||
|
|
||||||
setLineEditProtoOpenvpnPortEnabled(container == DockerContainer::OpenVpn);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UiLogic::updateShadowSocksPage(const QJsonObject &ssConfig, DockerContainer container, bool haveAuthData)
|
void UiLogic::updateShadowSocksPage(const QJsonObject &ssConfig, DockerContainer container, bool haveAuthData)
|
||||||
{
|
{
|
||||||
|
@ -2888,18 +2499,6 @@ void UiLogic::updateCloakPage(const QJsonObject &ckConfig, DockerContainer conta
|
||||||
setLineEditProtoCloakPortEnabled(container == DockerContainer::OpenVpnOverCloak);
|
setLineEditProtoCloakPortEnabled(container == DockerContainer::OpenVpnOverCloak);
|
||||||
}
|
}
|
||||||
|
|
||||||
QJsonObject UiLogic::getOpenVpnConfigFromPage(QJsonObject oldConfig)
|
|
||||||
{
|
|
||||||
oldConfig.insert(config_key::subnet_address, getLineEditProtoOpenvpnSubnetText());
|
|
||||||
oldConfig.insert(config_key::transport_proto, getRadioButtonProtoOpenvpnUdpChecked() ? protocols::UDP : protocols::TCP);
|
|
||||||
oldConfig.insert(config_key::ncp_disable, ! getCheckBoxProtoOpenvpnAutoEncryptionChecked());
|
|
||||||
oldConfig.insert(config_key::cipher, getComboBoxProtoOpenvpnCipherText());
|
|
||||||
oldConfig.insert(config_key::hash, getComboBoxProtoOpenvpnHashText());
|
|
||||||
oldConfig.insert(config_key::block_outside_dns, getCheckBoxProtoOpenvpnBlockDnsChecked());
|
|
||||||
oldConfig.insert(config_key::port, getLineEditProtoOpenvpnPortText());
|
|
||||||
oldConfig.insert(config_key::tls_auth, getCheckBoxProtoOpenvpnTlsAuthChecked());
|
|
||||||
return oldConfig;
|
|
||||||
}
|
|
||||||
|
|
||||||
QJsonObject UiLogic::getShadowSocksConfigFromPage(QJsonObject oldConfig)
|
QJsonObject UiLogic::getShadowSocksConfigFromPage(QJsonObject oldConfig)
|
||||||
{
|
{
|
||||||
|
|
|
@ -24,8 +24,11 @@ class StartPageLogic;
|
||||||
class VpnLogic;
|
class VpnLogic;
|
||||||
class WizardLogic;
|
class WizardLogic;
|
||||||
|
|
||||||
class VpnConnection;
|
class OpenVpnLogic;
|
||||||
|
class ShadowSocksLogic;
|
||||||
|
class CloakLogic;
|
||||||
|
|
||||||
|
class VpnConnection;
|
||||||
|
|
||||||
|
|
||||||
class UiLogic : public QObject
|
class UiLogic : public QObject
|
||||||
|
@ -58,14 +61,6 @@ class UiLogic : public QObject
|
||||||
Q_PROPERTY(QString lineEditProtoCloakPortText READ getLineEditProtoCloakPortText WRITE setLineEditProtoCloakPortText NOTIFY lineEditProtoCloakPortTextChanged)
|
Q_PROPERTY(QString lineEditProtoCloakPortText READ getLineEditProtoCloakPortText WRITE setLineEditProtoCloakPortText NOTIFY lineEditProtoCloakPortTextChanged)
|
||||||
Q_PROPERTY(QString comboBoxProtoShadowsocksCipherText READ getComboBoxProtoShadowsocksCipherText WRITE setComboBoxProtoShadowsocksCipherText NOTIFY comboBoxProtoShadowsocksCipherTextChanged)
|
Q_PROPERTY(QString comboBoxProtoShadowsocksCipherText READ getComboBoxProtoShadowsocksCipherText WRITE setComboBoxProtoShadowsocksCipherText NOTIFY comboBoxProtoShadowsocksCipherTextChanged)
|
||||||
Q_PROPERTY(QString lineEditProtoShadowsocksPortText READ getLineEditProtoShadowsocksPortText WRITE setLineEditProtoShadowsocksPortText NOTIFY lineEditProtoShadowsocksPortTextChanged)
|
Q_PROPERTY(QString lineEditProtoShadowsocksPortText READ getLineEditProtoShadowsocksPortText WRITE setLineEditProtoShadowsocksPortText NOTIFY lineEditProtoShadowsocksPortTextChanged)
|
||||||
Q_PROPERTY(QString lineEditProtoOpenvpnSubnetText READ getLineEditProtoOpenvpnSubnetText WRITE setLineEditProtoOpenvpnSubnetText NOTIFY lineEditProtoOpenvpnSubnetTextChanged)
|
|
||||||
Q_PROPERTY(bool radioButtonProtoOpenvpnUdpChecked READ getRadioButtonProtoOpenvpnUdpChecked WRITE setRadioButtonProtoOpenvpnUdpChecked NOTIFY radioButtonProtoOpenvpnUdpCheckedChanged)
|
|
||||||
Q_PROPERTY(bool checkBoxProtoOpenvpnAutoEncryptionChecked READ getCheckBoxProtoOpenvpnAutoEncryptionChecked WRITE setCheckBoxProtoOpenvpnAutoEncryptionChecked NOTIFY checkBoxProtoOpenvpnAutoEncryptionCheckedChanged)
|
|
||||||
Q_PROPERTY(QString comboBoxProtoOpenvpnCipherText READ getComboBoxProtoOpenvpnCipherText WRITE setComboBoxProtoOpenvpnCipherText NOTIFY comboBoxProtoOpenvpnCipherTextChanged)
|
|
||||||
Q_PROPERTY(QString comboBoxProtoOpenvpnHashText READ getComboBoxProtoOpenvpnHashText WRITE setComboBoxProtoOpenvpnHashText NOTIFY comboBoxProtoOpenvpnHashTextChanged)
|
|
||||||
Q_PROPERTY(bool checkBoxProtoOpenvpnBlockDnsChecked READ getCheckBoxProtoOpenvpnBlockDnsChecked WRITE setCheckBoxProtoOpenvpnBlockDnsChecked NOTIFY checkBoxProtoOpenvpnBlockDnsCheckedChanged)
|
|
||||||
Q_PROPERTY(QString lineEditProtoOpenvpnPortText READ getLineEditProtoOpenvpnPortText WRITE setLineEditProtoOpenvpnPortText NOTIFY lineEditProtoOpenvpnPortTextChanged)
|
|
||||||
Q_PROPERTY(bool checkBoxProtoOpenvpnTlsAuthChecked READ getCheckBoxProtoOpenvpnTlsAuthChecked WRITE setCheckBoxProtoOpenvpnTlsAuthChecked NOTIFY checkBoxProtoOpenvpnTlsAuthCheckedChanged)
|
|
||||||
|
|
||||||
Q_PROPERTY(bool pushButtonConnectChecked READ getPushButtonConnectChecked WRITE setPushButtonConnectChecked NOTIFY pushButtonConnectCheckedChanged)
|
Q_PROPERTY(bool pushButtonConnectChecked READ getPushButtonConnectChecked WRITE setPushButtonConnectChecked NOTIFY pushButtonConnectCheckedChanged)
|
||||||
Q_PROPERTY(bool widgetProtoCloakEnabled READ getWidgetProtoCloakEnabled WRITE setWidgetProtoCloakEnabled NOTIFY widgetProtoCloakEnabledChanged)
|
Q_PROPERTY(bool widgetProtoCloakEnabled READ getWidgetProtoCloakEnabled WRITE setWidgetProtoCloakEnabled NOTIFY widgetProtoCloakEnabledChanged)
|
||||||
|
@ -76,13 +71,6 @@ class UiLogic : public QObject
|
||||||
Q_PROPERTY(bool pushButtonProtoShadowsocksSaveVisible READ getPushButtonProtoShadowsocksSaveVisible WRITE setPushButtonProtoShadowsocksSaveVisible NOTIFY pushButtonProtoShadowsocksSaveVisibleChanged)
|
Q_PROPERTY(bool pushButtonProtoShadowsocksSaveVisible READ getPushButtonProtoShadowsocksSaveVisible WRITE setPushButtonProtoShadowsocksSaveVisible NOTIFY pushButtonProtoShadowsocksSaveVisibleChanged)
|
||||||
Q_PROPERTY(bool progressBarProtoShadowsocksResetVisible READ getProgressBarProtoShadowsocksResetVisible WRITE setProgressBarProtoShadowsocksResetVisible NOTIFY progressBarProtoShadowsocksResetVisibleChanged)
|
Q_PROPERTY(bool progressBarProtoShadowsocksResetVisible READ getProgressBarProtoShadowsocksResetVisible WRITE setProgressBarProtoShadowsocksResetVisible NOTIFY progressBarProtoShadowsocksResetVisibleChanged)
|
||||||
Q_PROPERTY(bool lineEditProtoShadowsocksPortEnabled READ getLineEditProtoShadowsocksPortEnabled WRITE setLineEditProtoShadowsocksPortEnabled NOTIFY lineEditProtoShadowsocksPortEnabledChanged)
|
Q_PROPERTY(bool lineEditProtoShadowsocksPortEnabled READ getLineEditProtoShadowsocksPortEnabled WRITE setLineEditProtoShadowsocksPortEnabled NOTIFY lineEditProtoShadowsocksPortEnabledChanged)
|
||||||
Q_PROPERTY(bool widgetProtoOpenvpnEnabled READ getWidgetProtoOpenvpnEnabled WRITE setWidgetProtoOpenvpnEnabled NOTIFY widgetProtoOpenvpnEnabledChanged)
|
|
||||||
Q_PROPERTY(bool pushButtonProtoOpenvpnSaveVisible READ getPushButtonProtoOpenvpnSaveVisible WRITE setPushButtonProtoOpenvpnSaveVisible NOTIFY pushButtonProtoOpenvpnSaveVisibleChanged)
|
|
||||||
Q_PROPERTY(bool progressBarProtoOpenvpnResetVisible READ getProgressBarProtoOpenvpnResetVisible WRITE setProgressBarProtoOpenvpnResetVisible NOTIFY progressBarProtoOpenvpnResetVisibleChanged)
|
|
||||||
Q_PROPERTY(bool radioButtonProtoOpenvpnUdpEnabled READ getRadioButtonProtoOpenvpnUdpEnabled WRITE setRadioButtonProtoOpenvpnUdpEnabled NOTIFY radioButtonProtoOpenvpnUdpEnabledChanged)
|
|
||||||
Q_PROPERTY(bool radioButtonProtoOpenvpnTcpEnabled READ getRadioButtonProtoOpenvpnTcpEnabled WRITE setRadioButtonProtoOpenvpnTcpEnabled NOTIFY radioButtonProtoOpenvpnTcpEnabledChanged)
|
|
||||||
Q_PROPERTY(bool radioButtonProtoOpenvpnTcpChecked READ getRadioButtonProtoOpenvpnTcpChecked WRITE setRadioButtonProtoOpenvpnTcpChecked NOTIFY radioButtonProtoOpenvpnTcpCheckedChanged)
|
|
||||||
Q_PROPERTY(bool lineEditProtoOpenvpnPortEnabled READ getLineEditProtoOpenvpnPortEnabled WRITE setLineEditProtoOpenvpnPortEnabled NOTIFY lineEditProtoOpenvpnPortEnabledChanged)
|
|
||||||
Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallChecked READ getPushButtonProtoOpenvpnContInstallChecked WRITE setPushButtonProtoOpenvpnContInstallChecked NOTIFY pushButtonProtoOpenvpnContInstallCheckedChanged)
|
Q_PROPERTY(bool pushButtonProtoOpenvpnContInstallChecked READ getPushButtonProtoOpenvpnContInstallChecked WRITE setPushButtonProtoOpenvpnContInstallChecked NOTIFY pushButtonProtoOpenvpnContInstallCheckedChanged)
|
||||||
Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallChecked READ getPushButtonProtoSsOpenvpnContInstallChecked WRITE setPushButtonProtoSsOpenvpnContInstallChecked NOTIFY pushButtonProtoSsOpenvpnContInstallCheckedChanged)
|
Q_PROPERTY(bool pushButtonProtoSsOpenvpnContInstallChecked READ getPushButtonProtoSsOpenvpnContInstallChecked WRITE setPushButtonProtoSsOpenvpnContInstallChecked NOTIFY pushButtonProtoSsOpenvpnContInstallCheckedChanged)
|
||||||
Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallChecked READ getPushButtonProtoCloakOpenvpnContInstallChecked WRITE setPushButtonProtoCloakOpenvpnContInstallChecked NOTIFY pushButtonProtoCloakOpenvpnContInstallCheckedChanged)
|
Q_PROPERTY(bool pushButtonProtoCloakOpenvpnContInstallChecked READ getPushButtonProtoCloakOpenvpnContInstallChecked WRITE setPushButtonProtoCloakOpenvpnContInstallChecked NOTIFY pushButtonProtoCloakOpenvpnContInstallCheckedChanged)
|
||||||
|
@ -124,13 +112,6 @@ class UiLogic : public QObject
|
||||||
Q_PROPERTY(bool pageServerProtocolsEnabled READ getPageServerProtocolsEnabled WRITE setPageServerProtocolsEnabled NOTIFY pageServerProtocolsEnabledChanged)
|
Q_PROPERTY(bool pageServerProtocolsEnabled READ getPageServerProtocolsEnabled WRITE setPageServerProtocolsEnabled NOTIFY pageServerProtocolsEnabledChanged)
|
||||||
Q_PROPERTY(int progressBarProtocolsContainerReinstallValue READ getProgressBarProtocolsContainerReinstallValue WRITE setProgressBarProtocolsContainerReinstallValue NOTIFY progressBarProtocolsContainerReinstallValueChanged)
|
Q_PROPERTY(int progressBarProtocolsContainerReinstallValue READ getProgressBarProtocolsContainerReinstallValue WRITE setProgressBarProtocolsContainerReinstallValue NOTIFY progressBarProtocolsContainerReinstallValueChanged)
|
||||||
Q_PROPERTY(int progressBarProtocolsContainerReinstallMaximium READ getProgressBarProtocolsContainerReinstallMaximium WRITE setProgressBarProtocolsContainerReinstallMaximium NOTIFY progressBarProtocolsContainerReinstallMaximiumChanged)
|
Q_PROPERTY(int progressBarProtocolsContainerReinstallMaximium READ getProgressBarProtocolsContainerReinstallMaximium WRITE setProgressBarProtocolsContainerReinstallMaximium NOTIFY progressBarProtocolsContainerReinstallMaximiumChanged)
|
||||||
Q_PROPERTY(bool comboBoxProtoOpenvpnCipherEnabled READ getComboBoxProtoOpenvpnCipherEnabled WRITE setComboBoxProtoOpenvpnCipherEnabled NOTIFY comboBoxProtoOpenvpnCipherEnabledChanged)
|
|
||||||
Q_PROPERTY(bool comboBoxProtoOpenvpnHashEnabled READ getComboBoxProtoOpenvpnHashEnabled WRITE setComboBoxProtoOpenvpnHashEnabled NOTIFY comboBoxProtoOpenvpnHashEnabledChanged)
|
|
||||||
Q_PROPERTY(bool pageProtoOpenvpnEnabled READ getPageProtoOpenvpnEnabled WRITE setPageProtoOpenvpnEnabled NOTIFY pageProtoOpenvpnEnabledChanged)
|
|
||||||
Q_PROPERTY(bool labelProtoOpenvpnInfoVisible READ getLabelProtoOpenvpnInfoVisible WRITE setLabelProtoOpenvpnInfoVisible NOTIFY labelProtoOpenvpnInfoVisibleChanged)
|
|
||||||
Q_PROPERTY(QString labelProtoOpenvpnInfoText READ getLabelProtoOpenvpnInfoText WRITE setLabelProtoOpenvpnInfoText NOTIFY labelProtoOpenvpnInfoTextChanged)
|
|
||||||
Q_PROPERTY(int progressBarProtoOpenvpnResetValue READ getProgressBarProtoOpenvpnResetValue WRITE setProgressBarProtoOpenvpnResetValue NOTIFY progressBarProtoOpenvpnResetValueChanged)
|
|
||||||
Q_PROPERTY(int progressBarProtoOpenvpnResetMaximium READ getProgressBarProtoOpenvpnResetMaximium WRITE setProgressBarProtoOpenvpnResetMaximium NOTIFY progressBarProtoOpenvpnResetMaximiumChanged)
|
|
||||||
Q_PROPERTY(bool pageProtoShadowsocksEnabled READ getPageProtoShadowsocksEnabled WRITE setPageProtoShadowsocksEnabled NOTIFY pageProtoShadowsocksEnabledChanged)
|
Q_PROPERTY(bool pageProtoShadowsocksEnabled READ getPageProtoShadowsocksEnabled WRITE setPageProtoShadowsocksEnabled NOTIFY pageProtoShadowsocksEnabledChanged)
|
||||||
Q_PROPERTY(bool labelProtoShadowsocksInfoVisible READ getLabelProtoShadowsocksInfoVisible WRITE setLabelProtoShadowsocksInfoVisible NOTIFY labelProtoShadowsocksInfoVisibleChanged)
|
Q_PROPERTY(bool labelProtoShadowsocksInfoVisible READ getLabelProtoShadowsocksInfoVisible WRITE setLabelProtoShadowsocksInfoVisible NOTIFY labelProtoShadowsocksInfoVisibleChanged)
|
||||||
Q_PROPERTY(QString labelProtoShadowsocksInfoText READ getLabelProtoShadowsocksInfoText WRITE setLabelProtoShadowsocksInfoText NOTIFY labelProtoShadowsocksInfoTextChanged)
|
Q_PROPERTY(QString labelProtoShadowsocksInfoText READ getLabelProtoShadowsocksInfoText WRITE setLabelProtoShadowsocksInfoText NOTIFY labelProtoShadowsocksInfoTextChanged)
|
||||||
|
@ -168,6 +149,10 @@ public:
|
||||||
friend class VpnLogic;
|
friend class VpnLogic;
|
||||||
friend class WizardLogic;
|
friend class WizardLogic;
|
||||||
|
|
||||||
|
friend class OpenVpnLogic;
|
||||||
|
friend class ShadowSocksLogic;
|
||||||
|
friend class CloakLogic;
|
||||||
|
|
||||||
Q_INVOKABLE void initalizeUiLogic();
|
Q_INVOKABLE void initalizeUiLogic();
|
||||||
|
|
||||||
|
|
||||||
|
@ -225,22 +210,6 @@ public:
|
||||||
void setComboBoxProtoShadowsocksCipherText(const QString &comboBoxProtoShadowsocksCipherText);
|
void setComboBoxProtoShadowsocksCipherText(const QString &comboBoxProtoShadowsocksCipherText);
|
||||||
QString getLineEditProtoShadowsocksPortText() const;
|
QString getLineEditProtoShadowsocksPortText() const;
|
||||||
void setLineEditProtoShadowsocksPortText(const QString &lineEditProtoShadowsocksPortText);
|
void setLineEditProtoShadowsocksPortText(const QString &lineEditProtoShadowsocksPortText);
|
||||||
QString getLineEditProtoOpenvpnSubnetText() const;
|
|
||||||
void setLineEditProtoOpenvpnSubnetText(const QString &lineEditProtoOpenvpnSubnetText);
|
|
||||||
bool getRadioButtonProtoOpenvpnUdpChecked() const;
|
|
||||||
void setRadioButtonProtoOpenvpnUdpChecked(bool radioButtonProtoOpenvpnUdpChecked);
|
|
||||||
bool getCheckBoxProtoOpenvpnAutoEncryptionChecked() const;
|
|
||||||
void setCheckBoxProtoOpenvpnAutoEncryptionChecked(bool checkBoxProtoOpenvpnAutoEncryptionChecked);
|
|
||||||
QString getComboBoxProtoOpenvpnCipherText() const;
|
|
||||||
void setComboBoxProtoOpenvpnCipherText(const QString &comboBoxProtoOpenvpnCipherText);
|
|
||||||
QString getComboBoxProtoOpenvpnHashText() const;
|
|
||||||
void setComboBoxProtoOpenvpnHashText(const QString &comboBoxProtoOpenvpnHashText);
|
|
||||||
bool getCheckBoxProtoOpenvpnBlockDnsChecked() const;
|
|
||||||
void setCheckBoxProtoOpenvpnBlockDnsChecked(bool checkBoxProtoOpenvpnBlockDnsChecked);
|
|
||||||
QString getLineEditProtoOpenvpnPortText() const;
|
|
||||||
void setLineEditProtoOpenvpnPortText(const QString &lineEditProtoOpenvpnPortText);
|
|
||||||
bool getCheckBoxProtoOpenvpnTlsAuthChecked() const;
|
|
||||||
void setCheckBoxProtoOpenvpnTlsAuthChecked(bool checkBoxProtoOpenvpnTlsAuthChecked);
|
|
||||||
|
|
||||||
bool getPushButtonConnectChecked() const;
|
bool getPushButtonConnectChecked() const;
|
||||||
void setPushButtonConnectChecked(bool pushButtonConnectChecked);
|
void setPushButtonConnectChecked(bool pushButtonConnectChecked);
|
||||||
|
@ -261,20 +230,7 @@ public:
|
||||||
void setProgressBarProtoShadowsocksResetVisible(bool progressBarProtoShadowsocksResetVisible);
|
void setProgressBarProtoShadowsocksResetVisible(bool progressBarProtoShadowsocksResetVisible);
|
||||||
bool getLineEditProtoShadowsocksPortEnabled() const;
|
bool getLineEditProtoShadowsocksPortEnabled() const;
|
||||||
void setLineEditProtoShadowsocksPortEnabled(bool lineEditProtoShadowsocksPortEnabled);
|
void setLineEditProtoShadowsocksPortEnabled(bool lineEditProtoShadowsocksPortEnabled);
|
||||||
bool getWidgetProtoOpenvpnEnabled() const;
|
|
||||||
void setWidgetProtoOpenvpnEnabled(bool widgetProtoOpenvpnEnabled);
|
|
||||||
bool getPushButtonProtoOpenvpnSaveVisible() const;
|
|
||||||
void setPushButtonProtoOpenvpnSaveVisible(bool pushButtonProtoOpenvpnSaveVisible);
|
|
||||||
bool getProgressBarProtoOpenvpnResetVisible() const;
|
|
||||||
void setProgressBarProtoOpenvpnResetVisible(bool progressBarProtoOpenvpnResetVisible);
|
|
||||||
bool getRadioButtonProtoOpenvpnUdpEnabled() const;
|
|
||||||
void setRadioButtonProtoOpenvpnUdpEnabled(bool radioButtonProtoOpenvpnUdpEnabled);
|
|
||||||
bool getRadioButtonProtoOpenvpnTcpEnabled() const;
|
|
||||||
void setRadioButtonProtoOpenvpnTcpEnabled(bool radioButtonProtoOpenvpnTcpEnabled);
|
|
||||||
bool getRadioButtonProtoOpenvpnTcpChecked() const;
|
|
||||||
void setRadioButtonProtoOpenvpnTcpChecked(bool radioButtonProtoOpenvpnTcpChecked);
|
|
||||||
bool getLineEditProtoOpenvpnPortEnabled() const;
|
|
||||||
void setLineEditProtoOpenvpnPortEnabled(bool lineEditProtoOpenvpnPortEnabled);
|
|
||||||
bool getPushButtonProtoOpenvpnContInstallChecked() const;
|
bool getPushButtonProtoOpenvpnContInstallChecked() const;
|
||||||
void setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked);
|
void setPushButtonProtoOpenvpnContInstallChecked(bool pushButtonProtoOpenvpnContInstallChecked);
|
||||||
bool getPushButtonProtoSsOpenvpnContInstallChecked() const;
|
bool getPushButtonProtoSsOpenvpnContInstallChecked() const;
|
||||||
|
@ -362,20 +318,6 @@ public:
|
||||||
void setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue);
|
void setProgressBarProtocolsContainerReinstallValue(int progressBarProtocolsContainerReinstallValue);
|
||||||
int getProgressBarProtocolsContainerReinstallMaximium() const;
|
int getProgressBarProtocolsContainerReinstallMaximium() const;
|
||||||
void setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium);
|
void setProgressBarProtocolsContainerReinstallMaximium(int progressBarProtocolsContainerReinstallMaximium);
|
||||||
bool getComboBoxProtoOpenvpnCipherEnabled() const;
|
|
||||||
void setComboBoxProtoOpenvpnCipherEnabled(bool comboBoxProtoOpenvpnCipherEnabled);
|
|
||||||
bool getComboBoxProtoOpenvpnHashEnabled() const;
|
|
||||||
void setComboBoxProtoOpenvpnHashEnabled(bool comboBoxProtoOpenvpnHashEnabled);
|
|
||||||
bool getPageProtoOpenvpnEnabled() const;
|
|
||||||
void setPageProtoOpenvpnEnabled(bool pageProtoOpenvpnEnabled);
|
|
||||||
bool getLabelProtoOpenvpnInfoVisible() const;
|
|
||||||
void setLabelProtoOpenvpnInfoVisible(bool labelProtoOpenvpnInfoVisible);
|
|
||||||
QString getLabelProtoOpenvpnInfoText() const;
|
|
||||||
void setLabelProtoOpenvpnInfoText(const QString &labelProtoOpenvpnInfoText);
|
|
||||||
int getProgressBarProtoOpenvpnResetValue() const;
|
|
||||||
void setProgressBarProtoOpenvpnResetValue(int progressBarProtoOpenvpnResetValue);
|
|
||||||
int getProgressBarProtoOpenvpnResetMaximium() const;
|
|
||||||
void setProgressBarProtoOpenvpnResetMaximium(int progressBarProtoOpenvpnResetMaximium);
|
|
||||||
bool getPageProtoShadowsocksEnabled() const;
|
bool getPageProtoShadowsocksEnabled() const;
|
||||||
void setPageProtoShadowsocksEnabled(bool pageProtoShadowsocksEnabled);
|
void setPageProtoShadowsocksEnabled(bool pageProtoShadowsocksEnabled);
|
||||||
bool getLabelProtoShadowsocksInfoVisible() const;
|
bool getLabelProtoShadowsocksInfoVisible() const;
|
||||||
|
@ -427,8 +369,7 @@ public:
|
||||||
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked();
|
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContOpenvpnConfigClicked();
|
||||||
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContSsConfigClicked();
|
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContSsConfigClicked();
|
||||||
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContCloakConfigClicked();
|
Q_INVOKABLE void onPushButtonProtoCloakOpenvpnContCloakConfigClicked();
|
||||||
Q_INVOKABLE void onCheckBoxProtoOpenvpnAutoEncryptionClicked();
|
|
||||||
Q_INVOKABLE void onPushButtonProtoOpenvpnSaveClicked();
|
|
||||||
Q_INVOKABLE void onPushButtonProtoShadowsocksSaveClicked();
|
Q_INVOKABLE void onPushButtonProtoShadowsocksSaveClicked();
|
||||||
Q_INVOKABLE void onPushButtonProtoCloakSaveClicked();
|
Q_INVOKABLE void onPushButtonProtoCloakSaveClicked();
|
||||||
Q_INVOKABLE void onCloseWindow();
|
Q_INVOKABLE void onCloseWindow();
|
||||||
|
@ -475,14 +416,7 @@ signals:
|
||||||
void lineEditProtoCloakPortTextChanged();
|
void lineEditProtoCloakPortTextChanged();
|
||||||
void comboBoxProtoShadowsocksCipherTextChanged();
|
void comboBoxProtoShadowsocksCipherTextChanged();
|
||||||
void lineEditProtoShadowsocksPortTextChanged();
|
void lineEditProtoShadowsocksPortTextChanged();
|
||||||
void lineEditProtoOpenvpnSubnetTextChanged();
|
|
||||||
void radioButtonProtoOpenvpnUdpCheckedChanged();
|
|
||||||
void checkBoxProtoOpenvpnAutoEncryptionCheckedChanged();
|
|
||||||
void comboBoxProtoOpenvpnCipherTextChanged();
|
|
||||||
void comboBoxProtoOpenvpnHashTextChanged();
|
|
||||||
void checkBoxProtoOpenvpnBlockDnsCheckedChanged();
|
|
||||||
void lineEditProtoOpenvpnPortTextChanged();
|
|
||||||
void checkBoxProtoOpenvpnTlsAuthCheckedChanged();
|
|
||||||
|
|
||||||
|
|
||||||
void pushButtonConnectCheckedChanged();
|
void pushButtonConnectCheckedChanged();
|
||||||
|
@ -495,13 +429,7 @@ signals:
|
||||||
void pushButtonProtoShadowsocksSaveVisibleChanged();
|
void pushButtonProtoShadowsocksSaveVisibleChanged();
|
||||||
void progressBarProtoShadowsocksResetVisibleChanged();
|
void progressBarProtoShadowsocksResetVisibleChanged();
|
||||||
void lineEditProtoShadowsocksPortEnabledChanged();
|
void lineEditProtoShadowsocksPortEnabledChanged();
|
||||||
void widgetProtoOpenvpnEnabledChanged();
|
|
||||||
void pushButtonProtoOpenvpnSaveVisibleChanged();
|
|
||||||
void progressBarProtoOpenvpnResetVisibleChanged();
|
|
||||||
void radioButtonProtoOpenvpnUdpEnabledChanged();
|
|
||||||
void radioButtonProtoOpenvpnTcpEnabledChanged();
|
|
||||||
void radioButtonProtoOpenvpnTcpCheckedChanged();
|
|
||||||
void lineEditProtoOpenvpnPortEnabledChanged();
|
|
||||||
void pushButtonProtoOpenvpnContInstallCheckedChanged();
|
void pushButtonProtoOpenvpnContInstallCheckedChanged();
|
||||||
void pushButtonProtoSsOpenvpnContInstallCheckedChanged();
|
void pushButtonProtoSsOpenvpnContInstallCheckedChanged();
|
||||||
void pushButtonProtoCloakOpenvpnContInstallCheckedChanged();
|
void pushButtonProtoCloakOpenvpnContInstallCheckedChanged();
|
||||||
|
@ -545,13 +473,7 @@ signals:
|
||||||
void pageServerProtocolsEnabledChanged();
|
void pageServerProtocolsEnabledChanged();
|
||||||
void progressBarProtocolsContainerReinstallValueChanged();
|
void progressBarProtocolsContainerReinstallValueChanged();
|
||||||
void progressBarProtocolsContainerReinstallMaximiumChanged();
|
void progressBarProtocolsContainerReinstallMaximiumChanged();
|
||||||
void comboBoxProtoOpenvpnCipherEnabledChanged();
|
|
||||||
void comboBoxProtoOpenvpnHashEnabledChanged();
|
|
||||||
void pageProtoOpenvpnEnabledChanged();
|
|
||||||
void labelProtoOpenvpnInfoVisibleChanged();
|
|
||||||
void labelProtoOpenvpnInfoTextChanged();
|
|
||||||
void progressBarProtoOpenvpnResetValueChanged();
|
|
||||||
void progressBarProtoOpenvpnResetMaximiumChanged();
|
|
||||||
void pageProtoShadowsocksEnabledChanged();
|
void pageProtoShadowsocksEnabledChanged();
|
||||||
void labelProtoShadowsocksInfoVisibleChanged();
|
void labelProtoShadowsocksInfoVisibleChanged();
|
||||||
void labelProtoShadowsocksInfoTextChanged();
|
void labelProtoShadowsocksInfoTextChanged();
|
||||||
|
@ -621,14 +543,7 @@ private:
|
||||||
QString m_lineEditProtoCloakPortText;
|
QString m_lineEditProtoCloakPortText;
|
||||||
QString m_comboBoxProtoShadowsocksCipherText;
|
QString m_comboBoxProtoShadowsocksCipherText;
|
||||||
QString m_lineEditProtoShadowsocksPortText;
|
QString m_lineEditProtoShadowsocksPortText;
|
||||||
QString m_lineEditProtoOpenvpnSubnetText;
|
|
||||||
bool m_radioButtonProtoOpenvpnUdpChecked;
|
|
||||||
bool m_checkBoxProtoOpenvpnAutoEncryptionChecked;
|
|
||||||
QString m_comboBoxProtoOpenvpnCipherText;
|
|
||||||
QString m_comboBoxProtoOpenvpnHashText;
|
|
||||||
bool m_checkBoxProtoOpenvpnBlockDnsChecked;
|
|
||||||
QString m_lineEditProtoOpenvpnPortText;
|
|
||||||
bool m_checkBoxProtoOpenvpnTlsAuthChecked;
|
|
||||||
|
|
||||||
|
|
||||||
bool m_pushButtonConnectChecked;
|
bool m_pushButtonConnectChecked;
|
||||||
|
@ -641,13 +556,7 @@ private:
|
||||||
bool m_pushButtonProtoShadowsocksSaveVisible;
|
bool m_pushButtonProtoShadowsocksSaveVisible;
|
||||||
bool m_progressBarProtoShadowsocksResetVisible;
|
bool m_progressBarProtoShadowsocksResetVisible;
|
||||||
bool m_lineEditProtoShadowsocksPortEnabled;
|
bool m_lineEditProtoShadowsocksPortEnabled;
|
||||||
bool m_widgetProtoOpenvpnEnabled;
|
|
||||||
bool m_pushButtonProtoOpenvpnSaveVisible;
|
|
||||||
bool m_progressBarProtoOpenvpnResetVisible;
|
|
||||||
bool m_radioButtonProtoOpenvpnUdpEnabled;
|
|
||||||
bool m_radioButtonProtoOpenvpnTcpEnabled;
|
|
||||||
bool m_radioButtonProtoOpenvpnTcpChecked;
|
|
||||||
bool m_lineEditProtoOpenvpnPortEnabled;
|
|
||||||
bool m_pushButtonProtoOpenvpnContInstallChecked;
|
bool m_pushButtonProtoOpenvpnContInstallChecked;
|
||||||
bool m_pushButtonProtoSsOpenvpnContInstallChecked;
|
bool m_pushButtonProtoSsOpenvpnContInstallChecked;
|
||||||
bool m_pushButtonProtoCloakOpenvpnContInstallChecked;
|
bool m_pushButtonProtoCloakOpenvpnContInstallChecked;
|
||||||
|
@ -690,13 +599,7 @@ private:
|
||||||
bool m_pageServerProtocolsEnabled;
|
bool m_pageServerProtocolsEnabled;
|
||||||
int m_progressBarProtocolsContainerReinstallValue;
|
int m_progressBarProtocolsContainerReinstallValue;
|
||||||
int m_progressBarProtocolsContainerReinstallMaximium;
|
int m_progressBarProtocolsContainerReinstallMaximium;
|
||||||
bool m_comboBoxProtoOpenvpnCipherEnabled;
|
|
||||||
bool m_comboBoxProtoOpenvpnHashEnabled;
|
|
||||||
bool m_pageProtoOpenvpnEnabled;
|
|
||||||
bool m_labelProtoOpenvpnInfoVisible;
|
|
||||||
QString m_labelProtoOpenvpnInfoText;
|
|
||||||
int m_progressBarProtoOpenvpnResetValue;
|
|
||||||
int m_progressBarProtoOpenvpnResetMaximium;
|
|
||||||
bool m_pageProtoShadowsocksEnabled;
|
bool m_pageProtoShadowsocksEnabled;
|
||||||
bool m_labelProtoShadowsocksInfoVisible;
|
bool m_labelProtoShadowsocksInfoVisible;
|
||||||
QString m_labelProtoShadowsocksInfoText;
|
QString m_labelProtoShadowsocksInfoText;
|
||||||
|
@ -761,32 +664,34 @@ private:
|
||||||
// void setupSitesPageConnections();
|
// void setupSitesPageConnections();
|
||||||
void setupProtocolsPageConnections();
|
void setupProtocolsPageConnections();
|
||||||
|
|
||||||
void updateOpenVpnPage(const QJsonObject &openvpnConfig, DockerContainer container, bool haveAuthData);
|
|
||||||
void updateShadowSocksPage(const QJsonObject &ssConfig, DockerContainer container, bool haveAuthData);
|
void updateShadowSocksPage(const QJsonObject &ssConfig, DockerContainer container, bool haveAuthData);
|
||||||
void updateCloakPage(const QJsonObject &ckConfig, DockerContainer container, bool haveAuthData);
|
void updateCloakPage(const QJsonObject &ckConfig, DockerContainer container, bool haveAuthData);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
QJsonObject getOpenVpnConfigFromPage(QJsonObject oldConfig);
|
|
||||||
QJsonObject getShadowSocksConfigFromPage(QJsonObject oldConfig);
|
QJsonObject getShadowSocksConfigFromPage(QJsonObject oldConfig);
|
||||||
QJsonObject getCloakConfigFromPage(QJsonObject oldConfig);
|
QJsonObject getCloakConfigFromPage(QJsonObject oldConfig);
|
||||||
|
|
||||||
QMap<DockerContainer, QJsonObject> getInstallConfigsFromProtocolsPage() const;
|
QMap<DockerContainer, QJsonObject> getInstallConfigsFromProtocolsPage() const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
AppSettingsLogic *appSettingsLogic() { return m_appSettingsLogic;}
|
AppSettingsLogic *appSettingsLogic() { return m_appSettingsLogic; }
|
||||||
GeneralSettingsLogic *generalSettingsLogic() { return m_generalSettingsLogic;}
|
GeneralSettingsLogic *generalSettingsLogic() { return m_generalSettingsLogic; }
|
||||||
NetworkSettingsLogic *networkSettingsLogic() { return m_networkSettingsLogic;}
|
NetworkSettingsLogic *networkSettingsLogic() { return m_networkSettingsLogic; }
|
||||||
NewServerLogic *newServerLogic() { return m_newServerLogic;}
|
NewServerLogic *newServerLogic() { return m_newServerLogic; }
|
||||||
ProtocolSettingsLogic *protocolSettingsLogic() { return m_protocolSettingsLogic;}
|
ProtocolSettingsLogic *protocolSettingsLogic() { return m_protocolSettingsLogic; }
|
||||||
ServerListLogic *serverListLogic() { return m_serverListLogic;}
|
ServerListLogic *serverListLogic() { return m_serverListLogic; }
|
||||||
ServerSettingsLogic *serverSettingsLogic() { return m_serverSettingsLogic;}
|
ServerSettingsLogic *serverSettingsLogic() { return m_serverSettingsLogic; }
|
||||||
ServerVpnProtocolsLogic *serverVpnProtocolsLogic() { return m_serverVpnProtocolsLogic;}
|
ServerVpnProtocolsLogic *serverVpnProtocolsLogic() { return m_serverVpnProtocolsLogic; }
|
||||||
ShareConnectionLogic *shareConnectionLogic() { return m_shareConnectionLogic;}
|
ShareConnectionLogic *shareConnectionLogic() { return m_shareConnectionLogic; }
|
||||||
SitesLogic *sitesLogic() { return m_sitesLogic;}
|
SitesLogic *sitesLogic() { return m_sitesLogic; }
|
||||||
StartPageLogic *startPageLogic() { return m_startPageLogic;}
|
StartPageLogic *startPageLogic() { return m_startPageLogic; }
|
||||||
VpnLogic *vpnLogic() { return m_vpnLogic;}
|
VpnLogic *vpnLogic() { return m_vpnLogic; }
|
||||||
WizardLogic *wizardLogic() { return m_wizardLogic;}
|
WizardLogic *wizardLogic() { return m_wizardLogic; }
|
||||||
|
|
||||||
|
OpenVpnLogic *openVpnLogic() { return m_openVpnLogic; }
|
||||||
|
ShadowSocksLogic *shadowSocksLogic() { return m_shadowSocksLogic; }
|
||||||
|
CloakLogic *cloakLogic() { return m_cloakLogic; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
AppSettingsLogic *m_appSettingsLogic;
|
AppSettingsLogic *m_appSettingsLogic;
|
||||||
|
@ -803,6 +708,10 @@ private:
|
||||||
VpnLogic *m_vpnLogic;
|
VpnLogic *m_vpnLogic;
|
||||||
WizardLogic *m_wizardLogic;
|
WizardLogic *m_wizardLogic;
|
||||||
|
|
||||||
|
OpenVpnLogic *m_openVpnLogic;
|
||||||
|
ShadowSocksLogic *m_shadowSocksLogic;
|
||||||
|
CloakLogic *m_cloakLogic;
|
||||||
|
|
||||||
VpnConnection* m_vpnConnection;
|
VpnConnection* m_vpnConnection;
|
||||||
Settings m_settings;
|
Settings m_settings;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue