diff --git a/client/ui/pages_logic/protocols/OpenVpnLogic.cpp b/client/ui/pages_logic/protocols/OpenVpnLogic.cpp index 910211c6..704b2937 100644 --- a/client/ui/pages_logic/protocols/OpenVpnLogic.cpp +++ b/client/ui/pages_logic/protocols/OpenVpnLogic.cpp @@ -8,29 +8,27 @@ using namespace PageEnumNS; OpenVpnLogic::OpenVpnLogic(UiLogic *logic, QObject *parent): PageProtocolLogicBase(logic, parent), - m_lineEditProtoOpenVpnSubnetText{""}, + m_lineEditSubnetText{""}, - m_radioButtonProtoOpenVpnTcpEnabled{true}, - m_radioButtonProtoOpenVpnTcpChecked{false}, - m_radioButtonProtoOpenVpnUdpEnabled{true}, - m_radioButtonProtoOpenVpnUdpChecked{false}, + m_radioButtonTcpEnabled{true}, + m_radioButtonTcpChecked{false}, + m_radioButtonUdpEnabled{true}, + m_radioButtonUdpChecked{false}, - m_checkBoxProtoOpenVpnAutoEncryptionChecked{}, - m_comboBoxProtoOpenVpnCipherText{"AES-256-GCM"}, - m_comboBoxProtoOpenVpnHashText{"SHA512"}, - m_checkBoxProtoOpenVpnBlockDnsChecked{false}, - m_lineEditProtoOpenVpnPortText{}, - m_checkBoxProtoOpenVpnTlsAuthChecked{false}, - m_pushButtonOpenvpnSaveVisible{false}, - m_progressBarProtoOpenVpnResetVisible{false}, + m_checkBoxAutoEncryptionChecked{}, + m_comboBoxVpnCipherText{"AES-256-GCM"}, + m_comboBoxVpnHashText{"SHA512"}, + m_checkBoxBlockDnsChecked{false}, + m_lineEditPortText{}, + m_checkBoxTlsAuthChecked{false}, + m_pushButtonSaveVisible{false}, + m_progressBarResetVisible{false}, - m_lineEditProtoOpenVpnPortEnabled{false}, - m_comboBoxProtoOpenVpnCipherEnabled{true}, - m_comboBoxProtoOpenVpnHashEnabled{true}, + m_lineEditPortEnabled{false}, m_labelProtoOpenVpnInfoVisible{true}, m_labelProtoOpenVpnInfoText{}, - m_progressBarProtoOpenVpnResetValue{0}, - m_progressBarProtoOpenVpnResetMaximium{100} + m_progressBarResetValue{0}, + m_progressBarResetMaximium{100} { } @@ -39,52 +37,46 @@ void OpenVpnLogic::updateProtocolPage(const QJsonObject &openvpnConfig, DockerCo { qDebug() << "OpenVpnLogic::updateProtocolPage"; set_pageEnabled(haveAuthData); - set_pushButtonOpenvpnSaveVisible(haveAuthData); - set_progressBarProtoOpenVpnResetVisible(haveAuthData); + set_pushButtonSaveVisible(haveAuthData); + set_progressBarResetVisible(haveAuthData); - set_radioButtonProtoOpenVpnUdpEnabled(true); - set_radioButtonProtoOpenVpnTcpEnabled(true); + set_radioButtonUdpEnabled(true); + set_radioButtonTcpEnabled(true); - set_lineEditProtoOpenVpnSubnetText(openvpnConfig.value(config_key::subnet_address). + set_lineEditSubnetText(openvpnConfig.value(config_key::subnet_address). toString(protocols::openvpn::defaultSubnetAddress)); QString trasnsport = openvpnConfig.value(config_key::transport_proto). toString(protocols::openvpn::defaultTransportProto); - set_radioButtonProtoOpenVpnUdpChecked(trasnsport == protocols::openvpn::defaultTransportProto); - set_radioButtonProtoOpenVpnTcpChecked(trasnsport != protocols::openvpn::defaultTransportProto); + set_radioButtonUdpChecked(trasnsport == protocols::openvpn::defaultTransportProto); + set_radioButtonTcpChecked(trasnsport != protocols::openvpn::defaultTransportProto); - set_comboBoxProtoOpenVpnCipherText(openvpnConfig.value(config_key::cipher). + set_comboBoxVpnCipherText(openvpnConfig.value(config_key::cipher). toString(protocols::openvpn::defaultCipher)); - set_comboBoxProtoOpenVpnHashText(openvpnConfig.value(config_key::hash). + set_comboBoxVpnHashText(openvpnConfig.value(config_key::hash). toString(protocols::openvpn::defaultHash)); bool blockOutsideDns = openvpnConfig.value(config_key::block_outside_dns).toBool(protocols::openvpn::defaultBlockOutsideDns); - set_checkBoxProtoOpenVpnBlockDnsChecked(blockOutsideDns); + set_checkBoxBlockDnsChecked(blockOutsideDns); bool isNcpDisabled = openvpnConfig.value(config_key::ncp_disable).toBool(protocols::openvpn::defaultNcpDisable); - set_checkBoxProtoOpenVpnAutoEncryptionChecked(!isNcpDisabled); + set_checkBoxAutoEncryptionChecked(!isNcpDisabled); bool isTlsAuth = openvpnConfig.value(config_key::tls_auth).toBool(protocols::openvpn::defaultTlsAuth); - set_checkBoxProtoOpenVpnTlsAuthChecked(isTlsAuth); + set_checkBoxTlsAuthChecked(isTlsAuth); if (container == DockerContainer::ShadowSocks) { - set_radioButtonProtoOpenVpnUdpEnabled(false); - set_radioButtonProtoOpenVpnTcpEnabled(false); - set_radioButtonProtoOpenVpnTcpChecked(true); + set_radioButtonUdpEnabled(false); + set_radioButtonTcpEnabled(false); + set_radioButtonTcpChecked(true); } - set_lineEditProtoOpenVpnPortText(openvpnConfig.value(config_key::port). + set_lineEditPortText(openvpnConfig.value(config_key::port). toString(protocols::openvpn::defaultPort)); - set_lineEditProtoOpenVpnPortEnabled(container == DockerContainer::OpenVpn); -} - -void OpenVpnLogic::onCheckBoxProtoOpenVpnAutoEncryptionClicked() -{ - set_comboBoxProtoOpenVpnCipherEnabled(!checkBoxProtoOpenVpnAutoEncryptionChecked()); - set_comboBoxProtoOpenVpnHashEnabled(!checkBoxProtoOpenVpnAutoEncryptionChecked()); + set_lineEditPortEnabled(container == DockerContainer::OpenVpn); } void OpenVpnLogic::onPushButtonProtoOpenVpnSaveClicked() @@ -102,7 +94,7 @@ void OpenVpnLogic::onPushButtonProtoOpenVpnSaveClicked() }; UiLogic::ButtonFunc pushButton_proto_openvpn_save; pushButton_proto_openvpn_save.setVisibleFunc = [this] (bool visible) ->void { - set_pushButtonOpenvpnSaveVisible(visible); + set_pushButtonSaveVisible(visible); }; UiLogic::LabelFunc label_proto_openvpn_info; label_proto_openvpn_info.setVisibleFunc = [this] (bool visible) ->void { @@ -113,16 +105,16 @@ void OpenVpnLogic::onPushButtonProtoOpenVpnSaveClicked() }; UiLogic::ProgressFunc progressBar_proto_openvpn_reset; progressBar_proto_openvpn_reset.setVisibleFunc = [this] (bool visible) ->void { - set_progressBarProtoOpenVpnResetVisible(visible); + set_progressBarResetVisible(visible); }; progressBar_proto_openvpn_reset.setValueFunc = [this] (int value) ->void { - set_progressBarProtoOpenVpnResetValue(value); + set_progressBarResetValue(value); }; progressBar_proto_openvpn_reset.getValueFunc = [this] (void) -> int { - return progressBarProtoOpenVpnResetValue(); + return progressBarResetValue(); }; progressBar_proto_openvpn_reset.getMaximiumFunc = [this] (void) -> int { - return progressBarProtoOpenVpnResetMaximium(); + return progressBarResetMaximium(); }; ErrorCode e = uiLogic()->doInstallAction([this, containerConfig, &newContainerConfig](){ @@ -140,13 +132,13 @@ void OpenVpnLogic::onPushButtonProtoOpenVpnSaveClicked() QJsonObject OpenVpnLogic::getProtocolConfigFromPage(QJsonObject oldConfig) { - oldConfig.insert(config_key::subnet_address, lineEditProtoOpenVpnSubnetText()); - oldConfig.insert(config_key::transport_proto, radioButtonProtoOpenVpnUdpChecked() ? protocols::UDP : protocols::TCP); - oldConfig.insert(config_key::ncp_disable, ! checkBoxProtoOpenVpnAutoEncryptionChecked()); - oldConfig.insert(config_key::cipher, comboBoxProtoOpenVpnCipherText()); - oldConfig.insert(config_key::hash, comboBoxProtoOpenVpnHashText()); - oldConfig.insert(config_key::block_outside_dns, checkBoxProtoOpenVpnBlockDnsChecked()); - oldConfig.insert(config_key::port, lineEditProtoOpenVpnPortText()); - oldConfig.insert(config_key::tls_auth, checkBoxProtoOpenVpnTlsAuthChecked()); + oldConfig.insert(config_key::subnet_address, lineEditSubnetText()); + oldConfig.insert(config_key::transport_proto, radioButtonUdpChecked() ? protocols::UDP : protocols::TCP); + oldConfig.insert(config_key::ncp_disable, ! checkBoxAutoEncryptionChecked()); + oldConfig.insert(config_key::cipher, comboBoxVpnCipherText()); + oldConfig.insert(config_key::hash, comboBoxVpnHashText()); + oldConfig.insert(config_key::block_outside_dns, checkBoxBlockDnsChecked()); + oldConfig.insert(config_key::port, lineEditPortText()); + oldConfig.insert(config_key::tls_auth, checkBoxTlsAuthChecked()); return oldConfig; } diff --git a/client/ui/pages_logic/protocols/OpenVpnLogic.h b/client/ui/pages_logic/protocols/OpenVpnLogic.h index d537f288..1d5c7f78 100644 --- a/client/ui/pages_logic/protocols/OpenVpnLogic.h +++ b/client/ui/pages_logic/protocols/OpenVpnLogic.h @@ -9,34 +9,31 @@ class OpenVpnLogic : public PageProtocolLogicBase { Q_OBJECT - AUTO_PROPERTY(QString, lineEditProtoOpenVpnSubnetText) + AUTO_PROPERTY(QString, lineEditSubnetText) - AUTO_PROPERTY(bool, radioButtonProtoOpenVpnTcpEnabled) - AUTO_PROPERTY(bool, radioButtonProtoOpenVpnUdpEnabled) - AUTO_PROPERTY(bool, radioButtonProtoOpenVpnTcpChecked) - AUTO_PROPERTY(bool, radioButtonProtoOpenVpnUdpChecked) + AUTO_PROPERTY(bool, radioButtonTcpEnabled) + AUTO_PROPERTY(bool, radioButtonUdpEnabled) + AUTO_PROPERTY(bool, radioButtonTcpChecked) + AUTO_PROPERTY(bool, radioButtonUdpChecked) - AUTO_PROPERTY(bool, checkBoxProtoOpenVpnAutoEncryptionChecked) - AUTO_PROPERTY(QString, comboBoxProtoOpenVpnCipherText) - AUTO_PROPERTY(QString, comboBoxProtoOpenVpnHashText) - AUTO_PROPERTY(bool, checkBoxProtoOpenVpnBlockDnsChecked) - AUTO_PROPERTY(QString, lineEditProtoOpenVpnPortText) - AUTO_PROPERTY(bool, checkBoxProtoOpenVpnTlsAuthChecked) + AUTO_PROPERTY(bool, checkBoxAutoEncryptionChecked) + AUTO_PROPERTY(QString, comboBoxVpnCipherText) + AUTO_PROPERTY(QString, comboBoxVpnHashText) + AUTO_PROPERTY(bool, checkBoxBlockDnsChecked) + AUTO_PROPERTY(QString, lineEditPortText) + AUTO_PROPERTY(bool, checkBoxTlsAuthChecked) - AUTO_PROPERTY(bool, pushButtonOpenvpnSaveVisible) - AUTO_PROPERTY(bool, progressBarProtoOpenVpnResetVisible) + AUTO_PROPERTY(bool, pushButtonSaveVisible) + AUTO_PROPERTY(bool, progressBarResetVisible) - AUTO_PROPERTY(bool, lineEditProtoOpenVpnPortEnabled) + AUTO_PROPERTY(bool, lineEditPortEnabled) - AUTO_PROPERTY(bool, comboBoxProtoOpenVpnCipherEnabled) - AUTO_PROPERTY(bool, comboBoxProtoOpenVpnHashEnabled) AUTO_PROPERTY(bool, labelProtoOpenVpnInfoVisible) AUTO_PROPERTY(QString, labelProtoOpenVpnInfoText) - AUTO_PROPERTY(int, progressBarProtoOpenVpnResetValue) - AUTO_PROPERTY(int, progressBarProtoOpenVpnResetMaximium) + AUTO_PROPERTY(int, progressBarResetValue) + AUTO_PROPERTY(int, progressBarResetMaximium) public: - Q_INVOKABLE void onCheckBoxProtoOpenVpnAutoEncryptionClicked(); Q_INVOKABLE void onPushButtonProtoOpenVpnSaveClicked(); public: diff --git a/client/ui/qml/Pages/Protocols/PageProtoOpenVPN.qml b/client/ui/qml/Pages/Protocols/PageProtoOpenVPN.qml index d40dda1c..c1545a19 100644 --- a/client/ui/qml/Pages/Protocols/PageProtoOpenVPN.qml +++ b/client/ui/qml/Pages/Protocols/PageProtoOpenVPN.qml @@ -52,9 +52,9 @@ PageProtocolBase { implicitWidth: parent.width height: 31 - text: logic.lineEditProtoOpenVpnSubnetText + text: logic.lineEditSubnetText onEditingFinished: { - logic.lineEditProtoOpenVpnSubnetText = text + logic.lineEditSubnetText = text } } @@ -78,10 +78,10 @@ PageProtocolBase { width: 171 height: 19 text: qsTr("TCP") - enabled: logic.radioButtonProtoOpenVpnTcpEnabled - checked: logic.radioButtonProtoOpenVpnTcpChecked + enabled: logic.radioButtonTcpEnabled + checked: logic.radioButtonTcpChecked onCheckedChanged: { - UiLogic.radioButtonProtoOpenVpnTcpChecked = checked + UiLogic.radioButtonTcpChecked = checked } } RadioButtonType { @@ -90,11 +90,11 @@ PageProtocolBase { width: 171 height: 19 text: qsTr("UDP") - checked: logic.radioButtonProtoOpenVpnUdpChecked + checked: logic.radioButtonUdpChecked onCheckedChanged: { - logic.radioButtonProtoOpenVpnUdpChecked = checked + logic.radioButtonUdpChecked = checked } - enabled: logic.radioButtonProtoOpenVpnUdpEnabled + enabled: logic.radioButtonUdpEnabled } } @@ -113,11 +113,11 @@ PageProtocolBase { Layout.fillWidth: true height: 31 - text: logic.lineEditProtoOpenVpnPortText + text: logic.lineEditPortText onEditingFinished: { - logic.lineEditProtoOpenVpnPortText = text + logic.lineEditPortText = text } - enabled: logic.lineEditProtoOpenVpnPortEnabled + enabled: logic.lineEditPortEnabled } } @@ -130,12 +130,12 @@ PageProtocolBase { implicitWidth: parent.width height: 21 text: qsTr("Auto-negotiate encryption") - checked: logic.checkBoxProtoOpenVpnAutoEncryptionChecked + checked: logic.checkBoxAutoEncryptionChecked onCheckedChanged: { - logic.checkBoxProtoOpenVpnAutoEncryptionChecked = checked + logic.checkBoxAutoEncryptionChecked = checked } onClicked: { - logic.checkBoxProtoOpenVpnAutoEncryptionClicked() + logic.checkBoxAutoEncryptionClicked() } } @@ -165,16 +165,16 @@ PageProtocolBase { ] currentIndex: { for (let i = 0; i < model.length; ++i) { - if (logic.comboBoxProtoOpenVpnCipherText === model[i]) { + if (logic.comboBoxVpnCipherText === model[i]) { return i } } return -1 } onCurrentTextChanged: { - logic.comboBoxProtoOpenVpnCipherText = currentText + logic.comboBoxVpnCipherText = currentText } - enabled: logic.comboBoxProtoOpenVpnCipherEnabled + enabled: !check_auto_enc.checked } // @@ -202,16 +202,16 @@ PageProtocolBase { ] currentIndex: { for (let i = 0; i < model.length; ++i) { - if (logic.comboBoxProtoOpenVpnHashText === model[i]) { + if (logic.comboBoxVpnHashText === model[i]) { return i } } return -1 } onCurrentTextChanged: { - logic.comboBoxProtoOpenVpnHashText = currentText + logic.comboBoxVpnHashText = currentText } - enabled: logic.comboBoxProtoOpenVpnHashEnabled + enabled: !check_auto_enc.checked } CheckBoxType { @@ -220,9 +220,9 @@ PageProtocolBase { Layout.topMargin: 20 height: 21 text: qsTr("Enable TLS auth") - checked: logic.checkBoxProtoOpenVpnTlsAuthChecked + checked: logic.checkBoxTlsAuthChecked onCheckedChanged: { - logic.checkBoxProtoOpenVpnTlsAuthChecked = checked + logic.checkBoxTlsAuthChecked = checked } } @@ -232,9 +232,9 @@ PageProtocolBase { implicitWidth: parent.width height: 21 text: qsTr("Block DNS requests outside of VPN") - checked: logic.checkBoxProtoOpenVpnBlockDnsChecked + checked: logic.checkBoxBlockDnsChecked onCheckedChanged: { - logic.checkBoxProtoOpenVpnBlockDnsChecked = checked + logic.checkBoxBlockDnsChecked = checked } } @@ -363,7 +363,7 @@ PageProtocolBase { height: 40 text: qsTr("Save and restart VPN") width: parent.width - visible: logic.pushButtonOpenvpnSaveVisible + visible: logic.pushButtonSaveVisible onClicked: { logic.onPushButtonProtoOpenVpnSaveClicked() } @@ -373,9 +373,9 @@ PageProtocolBase { id: progress_save anchors.fill: pb_save from: 0 - to: logic.progressBarProtoOpenVpnResetMaximium - value: logic.progressBarProtoOpenVpnResetValue - visible: logic.progressBarProtoOpenVpnResetVisible + to: logic.progressBarResetMaximium + value: logic.progressBarResetValue + visible: logic.progressBarResetVisible background: Rectangle { implicitWidth: parent.width implicitHeight: parent.height