From 9f2438711a74fb4f7b901a50fe07b14e2aa1bd20 Mon Sep 17 00:00:00 2001 From: Aaron Rainbolt Date: Mon, 27 Nov 2023 19:18:08 -0600 Subject: [PATCH] Properly lock IP address editing tables and buttons when needed --- ipv4settingstab.cpp | 4 ++++ ipv6settingstab.cpp | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/ipv4settingstab.cpp b/ipv4settingstab.cpp index 9860f75..d471b46 100644 --- a/ipv4settingstab.cpp +++ b/ipv4settingstab.cpp @@ -119,8 +119,12 @@ void Ipv4SettingsTab::onMethodComboBoxCurrentIndexChanged(int index) { if (index == 3) { // manual ui->manualIpv4ConfigurationTable->setEnabled(true); + ui->manualIpv4ConfigurationAddButton->setEnabled(true); + ui->manualIpv4ConfigurationRemoveButton->setEnabled(true); } else { ui->manualIpv4ConfigurationTable->setEnabled(false); + ui->manualIpv4ConfigurationAddButton->setEnabled(false); + ui->manualIpv4ConfigurationRemoveButton->setEnabled(false); } } diff --git a/ipv6settingstab.cpp b/ipv6settingstab.cpp index 9e4ce1b..9434977 100644 --- a/ipv6settingstab.cpp +++ b/ipv6settingstab.cpp @@ -85,6 +85,7 @@ QVariantMap Ipv6SettingsTab::readSettings() void Ipv6SettingsTab::loadSettings(QVariantMap settings) { origSettings = settings; // We may need to restore these if something about the settings the user puts in is invalid. + if (settings["ipv6Method"].isValid()) { switch (settings["ipv6Method"].toInt()) { case ConnectionSettingsEngine::Ipv6Automatic: @@ -111,6 +112,8 @@ void Ipv6SettingsTab::loadSettings(QVariantMap settings) } } + onMethodComboBoxCurrentIndexChanged(ui->methodComboBox->currentIndex()); + if (settings["ipv6DnsServers"].isValid()) { ui->dnsServersLineEdit->setText(settings["ipv6DnsServers"].toString()); } @@ -156,8 +159,12 @@ void Ipv6SettingsTab::onMethodComboBoxCurrentIndexChanged(int index) { if (index == 4) { // manual ui->manualIpv6ConfigurationTable->setEnabled(true); + ui->manualIpv6ConfigurationAddButton->setEnabled(true); + ui->manualIpv6ConfigurationRemoveButton->setEnabled(true); } else { ui->manualIpv6ConfigurationTable->setEnabled(false); + ui->manualIpv6ConfigurationAddButton->setEnabled(false); + ui->manualIpv6ConfigurationRemoveButton->setEnabled(false); } }