diff --git a/sources/.kdev4/sources.kdev4 b/sources/.kdev4/sources.kdev4 index 587b19d..d7d83c5 100644 --- a/sources/.kdev4/sources.kdev4 +++ b/sources/.kdev4/sources.kdev4 @@ -8,7 +8,7 @@ ProjectRootRelative=./ [CMake][CMake Build Directory 0] Build Directory Path=file:///home/arcanis/Documents/github/netctl-gui/build -Build Type=Debug +Build Type=Release CMake Binary=file:///usr/bin/cmake Environment Profile= Extra Arguments= diff --git a/sources/gui/src/bridgewidget.cpp b/sources/gui/src/bridgewidget.cpp index 8ab9810..5da7e59 100644 --- a/sources/gui/src/bridgewidget.cpp +++ b/sources/gui/src/bridgewidget.cpp @@ -40,26 +40,16 @@ void BridgeWidget::clear() } -void BridgeWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - QMap BridgeWidget::getSettings() { - QMap bridgeSettings; + QMap settings; - if (isOk() != 0) - return bridgeSettings; + if (isOk() != 0) return settings; if (ui->checkBox_skip->checkState() == Qt::Checked) - bridgeSettings[QString("SkipForwardingDelay")] = QString("yes"); + settings[QString("SkipForwardingDelay")] = QString("yes"); - return bridgeSettings; + return settings; } @@ -73,9 +63,8 @@ int BridgeWidget::isOk() void BridgeWidget::setSettings(const QMap settings) { clear(); - QMap bridgeSettings = settings; - if (bridgeSettings.contains(QString("SkipForwardingDelay"))) - if (bridgeSettings[QString("SkipForwardingDelay")] == QString("yes")) + if (settings.contains(QString("SkipForwardingDelay"))) + if (settings[QString("SkipForwardingDelay")] == QString("yes")) ui->checkBox_skip->setCheckState(Qt::Checked); } diff --git a/sources/gui/src/bridgewidget.h b/sources/gui/src/bridgewidget.h index 4b445ed..65d56cf 100644 --- a/sources/gui/src/bridgewidget.h +++ b/sources/gui/src/bridgewidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private: Ui::BridgeWidget *ui; diff --git a/sources/gui/src/ethernetwidget.cpp b/sources/gui/src/ethernetwidget.cpp index 14e6ace..17db7bf 100644 --- a/sources/gui/src/ethernetwidget.cpp +++ b/sources/gui/src/ethernetwidget.cpp @@ -54,15 +54,6 @@ void EthernetWidget::clear() } -void EthernetWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void EthernetWidget::createActions() { connect(ui->pushButton_ethernetAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced())); @@ -73,8 +64,7 @@ void EthernetWidget::createActions() void EthernetWidget::selectWpaConfig() { - QString filename = QFileDialog::getOpenFileName( - this, + QString filename = QFileDialog::getOpenFileName(this, QApplication::translate("EthernetWidget", "Select wpa configuration file"), QDir::currentPath(), QApplication::translate("EthernetWidget", "Configuration files (*.conf)")); @@ -97,33 +87,29 @@ void EthernetWidget::showAdvanced() void EthernetWidget::showWpa(const int state) { - if (state == 0) - ui->widget_wpa->setHidden(true); - else - ui->widget_wpa->setHidden(false); + ui->widget_wpa->setHidden(state == 0); } QMap EthernetWidget::getSettings() { - QMap ethernetSettings; + QMap settings; - if (isOk() != 0) - return ethernetSettings; + if (isOk() != 0) return settings; if (ui->checkBox_skip->checkState() == Qt::Checked) - ethernetSettings[QString("SkipNoCarrier")] = QString("yes"); + settings[QString("SkipNoCarrier")] = QString("yes"); if (ui->checkBox_8021x->checkState() == Qt::Checked) { - ethernetSettings[QString("Auth8021X")] = QString("yes"); - ethernetSettings[QString("WPAConfigFile")] = QString("'") + ui->lineEdit_wpaConfig->text() + QString("'"); - ethernetSettings[QString("WPADriver")] = ui->comboBox_driver->currentText(); + settings[QString("Auth8021X")] = QString("yes"); + settings[QString("WPAConfigFile")] = QString("'%1'").arg(ui->lineEdit_wpaConfig->text()); + settings[QString("WPADriver")] = ui->comboBox_driver->currentText(); } if (ui->spinBox_timeoutCarrier->value() != 5) - ethernetSettings[QString("TimeoutCarrier")] = QString::number(ui->spinBox_timeoutCarrier->value()); + settings[QString("TimeoutCarrier")] = QString::number(ui->spinBox_timeoutCarrier->value()); if (ui->spinBox_timeoutWpa->value() != 15) - ethernetSettings[QString("TimeoutWPA")] = QString::number(ui->spinBox_timeoutWpa->value()); + settings[QString("TimeoutWPA")] = QString::number(ui->spinBox_timeoutWpa->value()); - return ethernetSettings; + return settings; } @@ -141,24 +127,23 @@ int EthernetWidget::isOk() void EthernetWidget::setSettings(const QMap settings) { clear(); - QMap ethernetSettings = settings; - if (ethernetSettings.contains(QString("SkipNoCarrier"))) - if (ethernetSettings[QString("SkipNoCarrier")] == QString("yes")) + if (settings.contains(QString("SkipNoCarrier"))) + if (settings[QString("SkipNoCarrier")] == QString("yes")) ui->checkBox_skip->setCheckState(Qt::Checked); - if (ethernetSettings.contains(QString("Auth8021X"))) - if (ethernetSettings[QString("Auth8021X")] == QString("yes")) + if (settings.contains(QString("Auth8021X"))) + if (settings[QString("Auth8021X")] == QString("yes")) ui->checkBox_8021x->setCheckState(Qt::Checked); - if (ethernetSettings.contains(QString("WPAConfigFile"))) - ui->lineEdit_wpaConfig->setText(ethernetSettings[QString("WPAConfigFile")]); - if (ethernetSettings.contains(QString("WPADriver"))) - for (int i=0; icomboBox_driver->count(); i++) - if (ethernetSettings[QString("WPADriver")] == ui->comboBox_driver->itemText(i)) - ui->comboBox_driver->setCurrentIndex(i); - if (ethernetSettings.contains(QString("TimeoutCarrier"))) - ui->spinBox_timeoutCarrier->setValue(ethernetSettings[QString("TimeoutCarrier")].toInt()); - if (ethernetSettings.contains(QString("TimeoutWPA"))) - ui->spinBox_timeoutWpa->setValue(ethernetSettings[QString("TimeoutWPA")].toInt()); + if (settings.contains(QString("WPAConfigFile"))) + ui->lineEdit_wpaConfig->setText(settings[QString("WPAConfigFile")]); + if (settings.contains(QString("WPADriver"))) { + int index = ui->comboBox_driver->findText(settings[QString("WPADriver")]); + ui->comboBox_driver->setCurrentIndex(index); + } + if (settings.contains(QString("TimeoutCarrier"))) + ui->spinBox_timeoutCarrier->setValue(settings[QString("TimeoutCarrier")].toInt()); + if (settings.contains(QString("TimeoutWPA"))) + ui->spinBox_timeoutWpa->setValue(settings[QString("TimeoutWPA")].toInt()); showWpa(ui->checkBox_8021x->checkState()); } diff --git a/sources/gui/src/ethernetwidget.h b/sources/gui/src/ethernetwidget.h index 522e85c..6116924 100644 --- a/sources/gui/src/ethernetwidget.h +++ b/sources/gui/src/ethernetwidget.h @@ -39,7 +39,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: void selectWpaConfig(); diff --git a/sources/gui/src/generalwidget.cpp b/sources/gui/src/generalwidget.cpp index b8c4140..5254a66 100644 --- a/sources/gui/src/generalwidget.cpp +++ b/sources/gui/src/generalwidget.cpp @@ -67,15 +67,6 @@ void GeneralWidget::clear() } -void GeneralWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void GeneralWidget::createActions() { connect(ui->pushButton_generalAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced())); @@ -102,10 +93,10 @@ void GeneralWidget::keyPressEvent(QKeyEvent *pressedKey) { if (pressedKey->key() == Qt::Key_Delete) { if (ui->listWidget_bindto->hasFocus() && - (ui->listWidget_bindto->currentItem() != 0)) + (ui->listWidget_bindto->currentItem() != nullptr)) delete ui->listWidget_bindto->currentItem(); else if (ui->listWidget_after->hasFocus() && - (ui->listWidget_after->currentItem() != 0)) + (ui->listWidget_after->currentItem() != nullptr)) delete ui->listWidget_after->currentItem(); } } @@ -125,36 +116,35 @@ void GeneralWidget::showAdvanced() QMap GeneralWidget::getSettings() { - QMap generalSettings; + QMap settings; - if (isOk() != 0) - return generalSettings; + if (isOk() != 0) return settings; - generalSettings[QString("Description")] = QString("'") + ui->lineEdit_description->text() + QString("'"); - generalSettings[QString("Connection")] = ui->comboBox_connection->currentText(); - generalSettings[QString("Interface")] = ui->comboBox_interface->currentText(); + settings[QString("Description")] = QString("'%1'").arg(ui->lineEdit_description->text()); + settings[QString("Connection")] = ui->comboBox_connection->currentText(); + settings[QString("Interface")] = ui->comboBox_interface->currentText(); if (ui->listWidget_bindto->count() != 0) { QStringList interfaces; for (int i=0; ilistWidget_bindto->count(); i++) interfaces.append(ui->listWidget_bindto->item(i)->text()); - generalSettings[QString("BindsToInterfaces")] = interfaces.join(QChar(' ')); + settings[QString("BindsToInterfaces")] = interfaces.join(QChar(' ')); } if (ui->listWidget_after->count() != 0) { QStringList profiles; for (int i=0; ilistWidget_after->count(); i++) profiles.append(ui->listWidget_after->item(i)->text()); - generalSettings[QString("After")] = profiles.join(QChar(' ')); + settings[QString("After")] = profiles.join(QChar(' ')); } if (!ui->lineEdit_execUpPost->text().isEmpty()) - generalSettings[QString("ExecUpPost")] = QString("'") + ui->lineEdit_execUpPost->text() + QString("'"); + settings[QString("ExecUpPost")] = QString("'%1'").arg(ui->lineEdit_execUpPost->text()); if (!ui->lineEdit_execDownPre->text().isEmpty()) - generalSettings[QString("ExecDownPre")] = QString("'") + ui->lineEdit_execDownPre->text() + QString("'"); + settings[QString("ExecDownPre")] = QString("'%1'").arg(ui->lineEdit_execDownPre->text()); if (ui->checkBox_forceConnect->checkState() == Qt::Checked) - generalSettings[QString("ForceConnect")] = QString("yes"); + settings[QString("ForceConnect")] = QString("yes"); if (ui->checkBox_debug->checkState() == Qt::Checked) - generalSettings[QString("NETCTL_DEBUG")] = QString("yes"); + settings[QString("NETCTL_DEBUG")] = QString("yes"); - return generalSettings; + return settings; } @@ -162,10 +152,10 @@ int GeneralWidget::isOk() { // bind interfaces is not set if ((ui->comboBox_connection->currentText() == QString("bond")) || - (ui->comboBox_connection->currentText() == QString("bridge")) || - (ui->comboBox_connection->currentText() == QString("vlan")) || - (ui->comboBox_connection->currentText() == QString("macvlan")) || - (ui->comboBox_connection->currentText() == QString("openvswitch"))) + (ui->comboBox_connection->currentText() == QString("bridge")) || + (ui->comboBox_connection->currentText() == QString("vlan")) || + (ui->comboBox_connection->currentText() == QString("macvlan")) || + (ui->comboBox_connection->currentText() == QString("openvswitch"))) if (ui->listWidget_bindto->count() == 0) return 1; // empty description @@ -179,30 +169,29 @@ int GeneralWidget::isOk() void GeneralWidget::setSettings(const QMap settings) { clear(); - QMap generalSettings = settings; - if (generalSettings.contains(QString("Description"))) - ui->lineEdit_description->setText(generalSettings[QString("Description")]); - if (generalSettings.contains(QString("Connection"))) - for (int i=0; icomboBox_connection->count(); i++) - if (generalSettings[QString("Connection")] == ui->comboBox_connection->itemText(i)) - ui->comboBox_connection->setCurrentIndex(i); - if (generalSettings.contains(QString("Interface"))) { - ui->comboBox_interface->addItem(generalSettings[QString("Interface")]); - ui->comboBox_interface->setCurrentIndex(ui->comboBox_interface->count()-1); + if (settings.contains(QString("Description"))) + ui->lineEdit_description->setText(settings[QString("Description")]); + if (settings.contains(QString("Connection"))) { + int index = ui->comboBox_connection->findText(settings[QString("Connection")]); + ui->comboBox_connection->setCurrentIndex(index); } - if (generalSettings.contains(QString("BindsToInterfaces"))) - ui->listWidget_bindto->addItems(generalSettings[QString("BindsToInterfaces")].split(QChar('\n'))); - if (generalSettings.contains(QString("After"))) - ui->listWidget_after->addItems(generalSettings[QString("After")].split(QChar('\n'))); - if (generalSettings.contains(QString("ExecUpPost"))) - ui->lineEdit_execUpPost->setText(generalSettings[QString("ExecUpPost")]); - if (generalSettings.contains(QString("ExecDownPre"))) - ui->lineEdit_execDownPre->setText(generalSettings[QString("ExecDownPre")]); - if (generalSettings.contains(QString("ForceConnect"))) - if (generalSettings[QString("ForceConnect")] == QString("yes")) + if (settings.contains(QString("Interface"))) { + ui->comboBox_interface->addItem(settings[QString("Interface")]); + ui->comboBox_interface->setCurrentIndex(ui->comboBox_interface->count() - 1); + } + if (settings.contains(QString("BindsToInterfaces"))) + ui->listWidget_bindto->addItems(settings[QString("BindsToInterfaces")].split(QChar('\n'))); + if (settings.contains(QString("After"))) + ui->listWidget_after->addItems(settings[QString("After")].split(QChar('\n'))); + if (settings.contains(QString("ExecUpPost"))) + ui->lineEdit_execUpPost->setText(settings[QString("ExecUpPost")]); + if (settings.contains(QString("ExecDownPre"))) + ui->lineEdit_execDownPre->setText(settings[QString("ExecDownPre")]); + if (settings.contains(QString("ForceConnect"))) + if (settings[QString("ForceConnect")] == QString("yes")) ui->checkBox_forceConnect->setCheckState(Qt::Checked); - if (generalSettings.contains(QString("NETCTL_DEBUG"))) - if (generalSettings[QString("NETCTL_DEBUG")] == QString("yes")) + if (settings.contains(QString("NETCTL_DEBUG"))) + if (settings[QString("NETCTL_DEBUG")] == QString("yes")) ui->checkBox_debug->setCheckState(Qt::Checked); } diff --git a/sources/gui/src/generalwidget.h b/sources/gui/src/generalwidget.h index b0ac669..4a1bcca 100644 --- a/sources/gui/src/generalwidget.h +++ b/sources/gui/src/generalwidget.h @@ -43,7 +43,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: void addAfter(); diff --git a/sources/gui/src/ipwidget.cpp b/sources/gui/src/ipwidget.cpp index 3af770e..52c9fee 100644 --- a/sources/gui/src/ipwidget.cpp +++ b/sources/gui/src/ipwidget.cpp @@ -92,15 +92,6 @@ void IpWidget::clear() } -void IpWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void IpWidget::createActions() { connect(ui->pushButton_ipAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced())); @@ -151,25 +142,25 @@ void IpWidget::keyPressEvent(QKeyEvent *pressedKey) { if (pressedKey->key() == Qt::Key_Delete) { if (ui->listWidget_ipAddress->hasFocus() && - (ui->listWidget_ipAddress->currentItem() != 0)) + (ui->listWidget_ipAddress->currentItem() != nullptr)) delete ui->listWidget_ipAddress->currentItem(); else if (ui->listWidget_ipRoutes->hasFocus() && - (ui->listWidget_ipRoutes->currentItem() != 0)) + (ui->listWidget_ipRoutes->currentItem() != nullptr)) delete ui->listWidget_ipRoutes->currentItem(); else if (ui->listWidget_ipAddress6->hasFocus() && - (ui->listWidget_ipAddress6->currentItem() != 0)) + (ui->listWidget_ipAddress6->currentItem() != nullptr)) delete ui->listWidget_ipAddress6->currentItem(); else if (ui->listWidget_ipRoutes6->hasFocus() && - (ui->listWidget_ipRoutes6->currentItem() != 0)) + (ui->listWidget_ipRoutes6->currentItem() != nullptr)) delete ui->listWidget_ipRoutes6->currentItem(); else if (ui->listWidget_custom->hasFocus() && - (ui->listWidget_custom->currentItem() != 0)) + (ui->listWidget_custom->currentItem() != nullptr)) delete ui->listWidget_custom->currentItem(); else if (ui->listWidget_dns->hasFocus() && - (ui->listWidget_dns->currentItem() != 0)) + (ui->listWidget_dns->currentItem() != nullptr)) delete ui->listWidget_dns->currentItem(); else if (ui->listWidget_dnsOptions->hasFocus() && - (ui->listWidget_dnsOptions->currentItem() != 0)) + (ui->listWidget_dnsOptions->currentItem() != nullptr)) delete ui->listWidget_dnsOptions->currentItem(); } } @@ -247,61 +238,36 @@ void IpWidget::addDnsOpt() void IpWidget::changeIpMode(const QString currentText) { - if (currentText == QString("dhcp")) - ui->widget_ip->setHidden(true); - else if (currentText == QString("static")) - ui->widget_ip->setHidden(false); + ui->widget_ip->setHidden(currentText == QString("dhcp")); } void IpWidget::ipEnable(const int state) { - if (state == 0) { - ui->comboBox_ip->setDisabled(true); - ui->widget_ip->setDisabled(true); - ui->widget_ipRoutes->setDisabled(true); - } else { - ui->comboBox_ip->setEnabled(true); - ui->widget_ip->setEnabled(true); - ui->widget_ipRoutes->setEnabled(true); - } + ui->comboBox_ip->setDisabled(state == 0); + ui->widget_ip->setDisabled(state == 0); + ui->widget_ipRoutes->setDisabled(state == 0); } void IpWidget::changeIp6Mode(const QString currentText) { - if ((currentText == QString("dhcp")) || - (currentText == QString("dhcp-noaddr"))) - ui->widget_ip6->setHidden(true); - else if ((currentText == QString("static")) || - (currentText == QString("stateless"))) - ui->widget_ip6->setHidden(false); + ui->widget_ip6->setHidden(currentText.startsWith(QString("dhcp"))); } void IpWidget::ip6Enable(const int state) { - if (state == 0) { - ui->comboBox_ip6->setDisabled(true); - ui->widget_ip6->setDisabled(true); - ui->widget_ipRoutes6->setDisabled(true); - } else { - ui->comboBox_ip6->setEnabled(true); - ui->widget_ip6->setEnabled(true); - ui->widget_ipRoutes6->setEnabled(true); - } + ui->comboBox_ip6->setDisabled(state == 0); + ui->widget_ip6->setDisabled(state == 0); + ui->widget_ipRoutes6->setDisabled(state == 0); } void IpWidget::changeDhcpClient(const QString currentText) { - if (currentText == QString("dhcpcd")) { - ui->widget_dhcpcdOpt->setHidden(false); - ui->widget_dhclientOpt->setHidden(true); - } else if (currentText == QString("dhclient")) { - ui->widget_dhcpcdOpt->setHidden(true); - ui->widget_dhclientOpt->setHidden(false); - } + ui->widget_dhcpcdOpt->setHidden(currentText != QString("dhcpcd")); + ui->widget_dhclientOpt->setHidden(currentText == QString("dhcpcd")); } @@ -319,106 +285,105 @@ void IpWidget::showAdvanced() QMap IpWidget::getSettings() { - QMap ipSettings; + QMap settings; - if (isOk() != 0) - return ipSettings; + if (isOk() != 0) return settings; if (ui->checkBox_ip->checkState() == Qt::Checked) { - ipSettings[QString("IP")] = ui->comboBox_ip->currentText(); + settings[QString("IP")] = ui->comboBox_ip->currentText(); if (ui->comboBox_ip->currentText() == QString("static")) { QStringList addresses; for (int i=0; ilistWidget_ipAddress->count(); i++) - addresses.append(QString("'") + ui->listWidget_ipAddress->item(i)->text() + QString("'")); - ipSettings[QString("Address")] = addresses.join(QChar(' ')); - ipSettings[QString("Gateway")] = QString("'") + ui->lineEdit_gateway->text() + QString("'"); + addresses.append(QString("'%1'").arg(ui->listWidget_ipAddress->item(i)->text())); + settings[QString("Address")] = addresses.join(QChar(' ')); + settings[QString("Gateway")] = QString("'%1'").arg(ui->lineEdit_gateway->text()); } if (ui->listWidget_ipRoutes->count() > 0) { QStringList routes; for (int i=0; ilistWidget_ipRoutes->count(); i++) - routes.append(QString("'") + ui->listWidget_ipRoutes->item(i)->text() + QString("'")); - ipSettings[QString("Routes")] = routes.join(QChar(' ')); + routes.append(QString("'%1'").arg(ui->listWidget_ipRoutes->item(i)->text())); + settings[QString("Routes")] = routes.join(QChar(' ')); } } else - ipSettings[QString("IP")] = QString("no"); + settings[QString("IP")] = QString("no"); if (ui->checkBox_ip6->checkState() == Qt::Checked) { - ipSettings[QString("IP6")] = ui->comboBox_ip6->currentText(); + settings[QString("IP6")] = ui->comboBox_ip6->currentText(); if ((ui->comboBox_ip6->currentText() == QString("static")) || - (ui->comboBox_ip6->currentText() == QString("stateless"))) { + (ui->comboBox_ip6->currentText() == QString("stateless"))) { QStringList addresses; for (int i=0; ilistWidget_ipAddress6->count(); i++) - addresses.append(QString("'") + ui->listWidget_ipAddress6->item(i)->text() + QString("'")); - ipSettings[QString("Address6")] = addresses.join(QChar(' ')); - ipSettings[QString("Gateway6")] = QString("'") + ui->lineEdit_gateway6->text() + QString("'"); + addresses.append(QString("'%1'").arg(ui->listWidget_ipAddress6->item(i)->text())); + settings[QString("Address6")] = addresses.join(QChar(' ')); + settings[QString("Gateway6")] = QString("'%1'").arg(ui->lineEdit_gateway6->text()); } if (ui->listWidget_ipRoutes6->count() > 0) { QStringList routes; for (int i=0; ilistWidget_ipRoutes6->count(); i++) - routes.append(QString("'") + ui->listWidget_ipRoutes6->item(i)->text() + QString("'")); - ipSettings[QString("Routes6")] = routes.join(QChar(' ')); + routes.append(QString("'%1'").arg(ui->listWidget_ipRoutes6->item(i)->text())); + settings[QString("Routes6")] = routes.join(QChar(' ')); } } else - ipSettings[QString("IP6")] = QString("no"); + settings[QString("IP6")] = QString("no"); if (ui->listWidget_custom->count() > 0) { QStringList custom; for (int i=0; ilistWidget_custom->count(); i++) - custom.append(QString("'") + ui->listWidget_custom->item(i)->text() + QString("'")); - ipSettings[QString("IPCustom")] = custom.join(QChar(' ')); + custom.append(QString("'%1'").arg(ui->listWidget_custom->item(i)->text())); + settings[QString("IPCustom")] = custom.join(QChar(' ')); } if (!ui->lineEdit_hostname->text().isEmpty()) - ipSettings[QString("Hostname")] = QString("'") + ui->lineEdit_hostname->text() + QString("'"); + settings[QString("Hostname")] = QString("'%1'").arg(ui->lineEdit_hostname->text()); if (ui->spinBox_timeoutDad->value() != 3) - ipSettings[QString("TimeoutDAD")] = QString::number(ui->spinBox_timeoutDad->value()); + settings[QString("TimeoutDAD")] = QString::number(ui->spinBox_timeoutDad->value()); if (ui->comboBox_dhcp->currentText() == QString("dhcpcd")) { if (!ui->lineEdit_dhcpcdOpt->text().isEmpty()) - ipSettings[QString("DhcpcdOptions")] = QString("'") + ui->lineEdit_dhcpcdOpt->text() + QString("'"); + settings[QString("DhcpcdOptions")] = QString("'%1'").arg(ui->lineEdit_dhcpcdOpt->text()); } else if (ui->comboBox_dhcp->currentText() == QString("dhclient")) { - ipSettings[QString("DHCPClient")] = ui->comboBox_dhcp->currentText(); + settings[QString("DHCPClient")] = ui->comboBox_dhcp->currentText(); if (!ui->lineEdit_dhclientOpt->text().isEmpty()) - ipSettings[QString("DhclientOptions")] = QString("'") + ui->lineEdit_dhclientOpt->text() + QString("'"); + settings[QString("DhclientOptions")] = QString("'%1'").arg(ui->lineEdit_dhclientOpt->text()); if (!ui->lineEdit_dhclientOpt6->text().isEmpty()) - ipSettings[QString("DhclientOptions6")] = QString("'") + ui->lineEdit_dhclientOpt6->text() + QString("'"); + settings[QString("DhclientOptions6")] = QString("'%1'").arg(ui->lineEdit_dhclientOpt6->text()); } if (ui->spinBox_timeoutDhcp->value() != 30) - ipSettings[QString("TimeoutDHCP")] = QString::number(ui->spinBox_timeoutDhcp->value()); + settings[QString("TimeoutDHCP")] = QString::number(ui->spinBox_timeoutDhcp->value()); if (ui->checkBox_dhcp->checkState() == Qt::Checked) - ipSettings[QString("DHCPReleaseOnStop")] = QString("yes"); + settings[QString("DHCPReleaseOnStop")] = QString("yes"); if (ui->listWidget_dns->count() > 0) { QStringList dns; for (int i=0; ilistWidget_dns->count(); i++) - dns.append(QString("'") + ui->listWidget_dns->item(i)->text() + QString("'")); - ipSettings[QString("DNS")] = dns.join(QChar(' ')); + dns.append(QString("'%1'").arg(ui->listWidget_dns->item(i)->text())); + settings[QString("DNS")] = dns.join(QChar(' ')); } if (!ui->lineEdit_dnsDomain->text().isEmpty()) - ipSettings[QString("DNSDomain")] = QString("'") + ui->lineEdit_dnsDomain->text() + QString("'"); + settings[QString("DNSDomain")] = QString("'%1'").arg(ui->lineEdit_dnsDomain->text()); if (!ui->lineEdit_dnsSearch->text().isEmpty()) - ipSettings[QString("DNSSearch")] = QString("'") + ui->lineEdit_dnsSearch->text() + QString("'"); + settings[QString("DNSSearch")] = QString("'%1'").arg(ui->lineEdit_dnsSearch->text()); if (ui->listWidget_dnsOptions->count() > 0) { QStringList dnsOpt; for (int i=0; ilistWidget_dnsOptions->count(); i++) - dnsOpt.append(QString("'") + ui->listWidget_dnsOptions->item(i)->text() + QString("'")); - ipSettings[QString("DNSOptions")] = dnsOpt.join(QChar(' ')); + dnsOpt.append(QString("'%1'").arg(ui->listWidget_dnsOptions->item(i)->text())); + settings[QString("DNSOptions")] = dnsOpt.join(QChar(' ')); } - return ipSettings; + return settings; } int IpWidget::isOk() { // ip settings is not set - if (ui->checkBox_ip->checkState() == Qt::Checked) - if (ui->comboBox_ip->currentText() == QString("static")) - if ((ui->listWidget_ipAddress->count() == 0) || - (ui->lineEdit_gateway->text().isEmpty())) - return 1; + if ((ui->checkBox_ip->checkState() == Qt::Checked) && + (ui->comboBox_ip->currentText() == QString("static"))) + if ((ui->listWidget_ipAddress->count() == 0) || + (ui->lineEdit_gateway->text().isEmpty())) + return 1; // ipv6 settings is not set - if (ui->checkBox_ip6->checkState() == Qt::Checked) - if ((ui->comboBox_ip6->currentText() == QString("static")) || - (ui->comboBox_ip6->currentText() == QString("stateless"))) - if ((ui->listWidget_ipAddress6->count() == 0) || - (ui->lineEdit_gateway6->text().isEmpty())) - return 2; + if ((ui->checkBox_ip6->checkState() == Qt::Checked) && + ((ui->comboBox_ip6->currentText() == QString("static")) || + (ui->comboBox_ip6->currentText() == QString("stateless")))) + if ((ui->listWidget_ipAddress6->count() == 0) || + (ui->lineEdit_gateway6->text().isEmpty())) + return 2; // all fine return 0; } @@ -427,70 +392,66 @@ int IpWidget::isOk() void IpWidget::setSettings(const QMap settings) { clear(); - QMap ipSettings = settings; - if (ipSettings.contains(QString("IP"))) { - if (ipSettings[QString("IP")] == QString("no")) + if (settings.contains(QString("IP"))) { + if (settings[QString("IP")] == QString("no")) ui->checkBox_ip->setCheckState(Qt::Unchecked); else { ui->checkBox_ip->setCheckState(Qt::Checked); - for (int i=0; icomboBox_ip->count(); i++) - if (ipSettings[QString("IP")] == ui->comboBox_ip->itemText(i)) - ui->comboBox_ip->setCurrentIndex(i); + int index = ui->comboBox_ip->findText(settings[QString("IP")]); + ui->comboBox_ip->setCurrentIndex(index); } } - if (ipSettings.contains(QString("Address"))) - ui->listWidget_ipAddress->addItems(ipSettings[QString("Address")].split(QChar('\n'))); - if (ipSettings.contains(QString("Gateway"))) - ui->lineEdit_gateway->setText(ipSettings[QString("Gateway")]); - if (ipSettings.contains(QString("Routes"))) - ui->listWidget_ipRoutes->addItems(ipSettings[QString("Routes")].split(QChar('\n'))); - if (ipSettings.contains(QString("IP6"))) { - if (ipSettings[QString("IP6")] == QString("no")) + if (settings.contains(QString("Address"))) + ui->listWidget_ipAddress->addItems(settings[QString("Address")].split(QChar('\n'))); + if (settings.contains(QString("Gateway"))) + ui->lineEdit_gateway->setText(settings[QString("Gateway")]); + if (settings.contains(QString("Routes"))) + ui->listWidget_ipRoutes->addItems(settings[QString("Routes")].split(QChar('\n'))); + if (settings.contains(QString("IP6"))) { + if (settings[QString("IP6")] == QString("no")) ui->checkBox_ip6->setCheckState(Qt::Unchecked); else { ui->checkBox_ip6->setCheckState(Qt::Checked); - for (int i=0; icomboBox_ip6->count(); i++) - if (ipSettings[QString("IP6")] == ui->comboBox_ip6->itemText(i)) - ui->comboBox_ip6->setCurrentIndex(i); + int index = ui->comboBox_ip6->findText(settings[QString("IP6")]); + ui->comboBox_ip6->setCurrentIndex(index); } } - if (ipSettings.contains(QString("Address6"))) - ui->listWidget_ipAddress6->addItems(ipSettings[QString("Address6")].split(QChar('\n'))); - if (ipSettings.contains(QString("Gateway6"))) - ui->lineEdit_gateway6->setText(ipSettings[QString("Gateway6")]); - if (ipSettings.contains(QString("Routes6"))) - ui->listWidget_ipRoutes6->addItems(ipSettings[QString("Routes6")].split(QChar('\n'))); - if (ipSettings.contains(QString("IPCustom"))) - ui->listWidget_custom->addItems(ipSettings[QString("IPCustom")].split(QChar('\n'))); - if (ipSettings.contains(QString("Hostname"))) - ui->lineEdit_hostname->setText(ipSettings[QString("Hostname")]); - if (ipSettings.contains(QString("TimeoutDAD"))) - ui->spinBox_timeoutDad->setValue(ipSettings[QString("TimeoutDAD")].toInt()); - if (ipSettings.contains(QString("DHCPClient"))) - for (int i=0; icomboBox_dhcp->count(); i++) - if (ipSettings[QString("DHCPClient")] == ui->comboBox_dhcp->itemText(i)) - ui->comboBox_dhcp->setCurrentIndex(i); - if (ipSettings.contains(QString("DhcpcdOptions"))) - ui->lineEdit_dhcpcdOpt->setText(ipSettings[QString("DhcpcdOptions")] - .remove(QChar('\'')).remove(QChar('"'))); - if (ipSettings.contains(QString("DhclientOptions"))) - ui->lineEdit_dhclientOpt->setText(ipSettings[QString("DhclientOptions")]); - if (ipSettings.contains(QString("DhclientOptions6"))) - ui->lineEdit_dhclientOpt6->setText(ipSettings[QString("DhclientOptions6")]); - if (ipSettings.contains(QString("TimeoutDHCP"))) - ui->spinBox_timeoutDhcp->setValue(ipSettings[QString("TimeoutDHCP")].toInt()); - if (ipSettings.contains(QString("DHCPReleaseOnStop"))) - if (ipSettings[QString("DHCPReleaseOnStop")] == QString("yes")) + if (settings.contains(QString("Address6"))) + ui->listWidget_ipAddress6->addItems(settings[QString("Address6")].split(QChar('\n'))); + if (settings.contains(QString("Gateway6"))) + ui->lineEdit_gateway6->setText(settings[QString("Gateway6")]); + if (settings.contains(QString("Routes6"))) + ui->listWidget_ipRoutes6->addItems(settings[QString("Routes6")].split(QChar('\n'))); + if (settings.contains(QString("IPCustom"))) + ui->listWidget_custom->addItems(settings[QString("IPCustom")].split(QChar('\n'))); + if (settings.contains(QString("Hostname"))) + ui->lineEdit_hostname->setText(settings[QString("Hostname")]); + if (settings.contains(QString("TimeoutDAD"))) + ui->spinBox_timeoutDad->setValue(settings[QString("TimeoutDAD")].toInt()); + if (settings.contains(QString("DHCPClient"))) { + int index = ui->comboBox_dhcp->findText(settings[QString("DHCPClient")]); + ui->comboBox_dhcp->setCurrentIndex(index); + } + if (settings.contains(QString("DhcpcdOptions"))) + ui->lineEdit_dhcpcdOpt->setText(settings[QString("DhcpcdOptions")]); + if (settings.contains(QString("DhclientOptions"))) + ui->lineEdit_dhclientOpt->setText(settings[QString("DhclientOptions")]); + if (settings.contains(QString("DhclientOptions6"))) + ui->lineEdit_dhclientOpt6->setText(settings[QString("DhclientOptions6")]); + if (settings.contains(QString("TimeoutDHCP"))) + ui->spinBox_timeoutDhcp->setValue(settings[QString("TimeoutDHCP")].toInt()); + if (settings.contains(QString("DHCPReleaseOnStop"))) + if (settings[QString("DHCPReleaseOnStop")] == QString("yes")) ui->checkBox_dhcp->setCheckState(Qt::Checked); - if (ipSettings.contains(QString("DNS"))) - ui->listWidget_dns->addItems(ipSettings[QString("DNS")].split(QChar('\n'))); - if (ipSettings.contains(QString("DNSDomain"))) - ui->lineEdit_dnsDomain->setText(ipSettings[QString("DNSDomain")]); - if (ipSettings.contains(QString("DNSSearch"))) - ui->lineEdit_dnsSearch->setText(ipSettings[QString("DNSSearch")]); - if (ipSettings.contains(QString("DNSOptions"))) - ui->listWidget_dnsOptions->addItems(ipSettings[QString("DNSOptions")].split(QChar('\n'))); + if (settings.contains(QString("DNS"))) + ui->listWidget_dns->addItems(settings[QString("DNS")].split(QChar('\n'))); + if (settings.contains(QString("DNSDomain"))) + ui->lineEdit_dnsDomain->setText(settings[QString("DNSDomain")]); + if (settings.contains(QString("DNSSearch"))) + ui->lineEdit_dnsSearch->setText(settings[QString("DNSSearch")]); + if (settings.contains(QString("DNSOptions"))) + ui->listWidget_dnsOptions->addItems(settings[QString("DNSOptions")].split(QChar('\n'))); ipEnable(ui->checkBox_ip->checkState()); changeIpMode(ui->comboBox_ip->currentText()); diff --git a/sources/gui/src/ipwidget.h b/sources/gui/src/ipwidget.h index f895a4a..6e3ae4b 100644 --- a/sources/gui/src/ipwidget.h +++ b/sources/gui/src/ipwidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: // buttons diff --git a/sources/gui/src/macvlanwidget.cpp b/sources/gui/src/macvlanwidget.cpp index 24cdda3..80cc240 100644 --- a/sources/gui/src/macvlanwidget.cpp +++ b/sources/gui/src/macvlanwidget.cpp @@ -42,34 +42,24 @@ void MacvlanWidget::clear() } -void MacvlanWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void MacvlanWidget::createFilter() { // mac - ui->lineEdit_mac->setInputMask(QString(">HH:HH:HH:HH:HH:HH")); + ui->lineEdit_mac->setInputMask(QString(">hh:hh:hh:hh:hh:hh")); } QMap MacvlanWidget::getSettings() { - QMap macvlanSettings; + QMap settings; - if (isOk() != 0) - return macvlanSettings; + if (isOk() != 0) return settings; - macvlanSettings[QString("Mode")] = ui->comboBox_mode->currentText(); - if (!ui->lineEdit_mac->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) - macvlanSettings[QString("MACAddress")] = ui->lineEdit_mac->text(); + settings[QString("Mode")] = ui->comboBox_mode->currentText(); + if (!ui->lineEdit_mac->text().remove(QChar(':')).isEmpty()) + settings[QString("MACAddress")] = ui->lineEdit_mac->text(); - return macvlanSettings; + return settings; } @@ -83,12 +73,11 @@ int MacvlanWidget::isOk() void MacvlanWidget::setSettings(const QMap settings) { clear(); - QMap macvlanSettings = settings; - if (macvlanSettings.contains(QString("Mode"))) - for (int i=0; icomboBox_mode->count(); i++) - if (macvlanSettings[QString("Mode")] == ui->comboBox_mode->itemText(i)) - ui->comboBox_mode->setCurrentIndex(i); - if (macvlanSettings.contains(QString("MACAddress"))) - ui->lineEdit_mac->setText(macvlanSettings[QString("MACAddress")]); + if (settings.contains(QString("Mode"))) { + int index = ui->comboBox_mode->findText(settings[QString("Mode")]); + ui->comboBox_mode->setCurrentIndex(index); + } + if (settings.contains(QString("MACAddress"))) + ui->lineEdit_mac->setText(settings[QString("MACAddress")]); } diff --git a/sources/gui/src/macvlanwidget.h b/sources/gui/src/macvlanwidget.h index 03e5fc3..87d3464 100644 --- a/sources/gui/src/macvlanwidget.h +++ b/sources/gui/src/macvlanwidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private: Ui::MacvlanWidget *ui; diff --git a/sources/gui/src/mainprivateslots.cpp b/sources/gui/src/mainprivateslots.cpp index 0a3f122..1c4e9be 100644 --- a/sources/gui/src/mainprivateslots.cpp +++ b/sources/gui/src/mainprivateslots.cpp @@ -580,127 +580,127 @@ void MainWindow::profileTabChangeState(const QString current) if (debug) qDebug() << PDEBUG << ":" << "Current type" << current; if (current == QString("ethernet")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(true); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(true); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("wireless")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(true); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(true); } else if ((current == QString("bond")) || (current == QString("dummy")) || (current == QString("openvswitch"))) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("bridge")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(true); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(true); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("pppoe")) { - generalWid->setShown(true); - ipWid->setShown(false); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(true); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(false); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(true); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("mobile_ppp")) { - generalWid->setShown(true); - ipWid->setShown(false); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(true); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(false); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(true); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("tunnel")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(true); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(true); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("tuntap")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(false); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(true); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(false); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(true); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } else if (current == QString("vlan")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(true); - macvlanWid->setShown(false); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(true); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(true); + macvlanWid->setVisible(false); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(true); + wirelessWid->setVisible(false); } else if (current == QString("macvlan")) { - generalWid->setShown(true); - ipWid->setShown(true); - bridgeWid->setShown(false); - ethernetWid->setShown(true); - macvlanWid->setShown(true); - mobileWid->setShown(false); - pppoeWid->setShown(false); - tunnelWid->setShown(false); - tuntapWid->setShown(false); - vlanWid->setShown(false); - wirelessWid->setShown(false); + generalWid->setVisible(true); + ipWid->setVisible(true); + bridgeWid->setVisible(false); + ethernetWid->setVisible(true); + macvlanWid->setVisible(true); + mobileWid->setVisible(false); + pppoeWid->setVisible(false); + tunnelWid->setVisible(false); + tuntapWid->setVisible(false); + vlanWid->setVisible(false); + wirelessWid->setVisible(false); } } diff --git a/sources/gui/src/mobilewidget.cpp b/sources/gui/src/mobilewidget.cpp index 52c1a27..d512896 100644 --- a/sources/gui/src/mobilewidget.cpp +++ b/sources/gui/src/mobilewidget.cpp @@ -56,15 +56,6 @@ void MobileWidget::clear() } -void MobileWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void MobileWidget::createActions() { connect(ui->pushButton_mobileAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced())); @@ -74,8 +65,7 @@ void MobileWidget::createActions() void MobileWidget::selectOptionsFile() { - QString filename = QFileDialog::getOpenFileName( - this, + QString filename = QFileDialog::getOpenFileName(this, QApplication::translate("MobileWidget", "Select options file"), QDir::currentPath(), QApplication::translate("MobileWidget", "Configuration files (*.conf)")); @@ -98,31 +88,30 @@ void MobileWidget::showAdvanced() QMap MobileWidget::getSettings() { - QMap mobileSettings; + QMap settings; - if (isOk() != 0) - return mobileSettings; + if (isOk() != 0) return settings; if (!ui->lineEdit_username->text().isEmpty()) - mobileSettings[QString("User")] = QString("'") + ui->lineEdit_username->text() + QString("'"); + settings[QString("User")] = QString("'%1'").arg(ui->lineEdit_username->text()); if (!ui->lineEdit_password->text().isEmpty()) - mobileSettings[QString("Password")] = QString("'") + ui->lineEdit_password->text() + QString("'"); - mobileSettings[QString("AccessPointName")] = ui->lineEdit_apn->text(); + settings[QString("Password")] = QString("'%1'").arg(ui->lineEdit_password->text()); + settings[QString("AccessPointName")] = ui->lineEdit_apn->text(); if (!ui->lineEdit_pin->text().isEmpty()) - mobileSettings[QString("PIN")] = QString("'") + ui->lineEdit_pin->text() + QString("'"); + settings[QString("PIN")] = QString("'%1'").arg(ui->lineEdit_pin->text()); else - mobileSettings[QString("PIN")] = QString("None"); - mobileSettings[QString("Mode")] = ui->comboBox_mode->currentText(); + settings[QString("PIN")] = QString("None"); + settings[QString("Mode")] = ui->comboBox_mode->currentText(); if (ui->spinBox_fail->value() != 5) - mobileSettings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value()); + settings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value()); if (ui->checkBox_route->checkState() == Qt::Unchecked) - mobileSettings[QString("DefaultRoute")] = QString("false"); + settings[QString("DefaultRoute")] = QString("false"); if (ui->checkBox_dns->checkState() == Qt::Unchecked) - mobileSettings[QString("UsePeerDNS")] = QString("false"); + settings[QString("UsePeerDNS")] = QString("false"); if (!ui->lineEdit_options->text().isEmpty()) - mobileSettings[QString("OptionsFile")] = QString("'") + ui->lineEdit_options->text() + QString("'"); + settings[QString("OptionsFile")] = QString("'%1'").arg(ui->lineEdit_options->text()); - return mobileSettings; + return settings; } @@ -143,28 +132,27 @@ int MobileWidget::isOk() void MobileWidget::setSettings(const QMap settings) { clear(); - QMap mobileSettings = settings; - if (mobileSettings.contains(QString("User"))) - ui->lineEdit_username->setText(mobileSettings[QString("User")]); - if (mobileSettings.contains(QString("Password"))) - ui->lineEdit_password->setText(mobileSettings[QString("Password")]); - if (mobileSettings.contains(QString("AccessPointName"))) - ui->lineEdit_apn->setText(mobileSettings[QString("AccessPointName")]); - if (mobileSettings.contains(QString("PIN"))) - ui->lineEdit_pin->setText(mobileSettings[QString("PIN")]); - if (mobileSettings.contains(QString("Mode"))) - for (int i=0; icomboBox_mode->count(); i++) - if (mobileSettings[QString("Mode")] == ui->comboBox_mode->itemText(i)) - ui->comboBox_mode->setCurrentIndex(i); - if (mobileSettings.contains(QString("MaxFail"))) - ui->spinBox_fail->setValue(mobileSettings[QString("MaxFail")].toInt()); - if (mobileSettings.contains(QString("DefaultRoute"))) - if (mobileSettings[QString("DefaultRoute")] == QString("false")) + if (settings.contains(QString("User"))) + ui->lineEdit_username->setText(settings[QString("User")]); + if (settings.contains(QString("Password"))) + ui->lineEdit_password->setText(settings[QString("Password")]); + if (settings.contains(QString("AccessPointName"))) + ui->lineEdit_apn->setText(settings[QString("AccessPointName")]); + if (settings.contains(QString("PIN"))) + ui->lineEdit_pin->setText(settings[QString("PIN")]); + if (settings.contains(QString("Mode"))) { + int index = ui->comboBox_mode->findText(settings[QString("Mode")]); + ui->comboBox_mode->setCurrentIndex(index); + } + if (settings.contains(QString("MaxFail"))) + ui->spinBox_fail->setValue(settings[QString("MaxFail")].toInt()); + if (settings.contains(QString("DefaultRoute"))) + if (settings[QString("DefaultRoute")] == QString("false")) ui->checkBox_route->setCheckState(Qt::Unchecked); - if (mobileSettings.contains(QString("UsePeerDNS"))) - if (mobileSettings[QString("UsePeerDNS")] == QString("false")) + if (settings.contains(QString("UsePeerDNS"))) + if (settings[QString("UsePeerDNS")] == QString("false")) ui->checkBox_dns->setCheckState(Qt::Unchecked); - if (mobileSettings.contains(QString("OptionsFile"))) - ui->lineEdit_options->setText(mobileSettings[QString("OptionsFile")]); + if (settings.contains(QString("OptionsFile"))) + ui->lineEdit_options->setText(settings[QString("OptionsFile")]); } diff --git a/sources/gui/src/mobilewidget.h b/sources/gui/src/mobilewidget.h index db7b38a..855dc91 100644 --- a/sources/gui/src/mobilewidget.h +++ b/sources/gui/src/mobilewidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: void selectOptionsFile(); diff --git a/sources/gui/src/pppoewidget.cpp b/sources/gui/src/pppoewidget.cpp index 7fc0ef0..4dc1865 100644 --- a/sources/gui/src/pppoewidget.cpp +++ b/sources/gui/src/pppoewidget.cpp @@ -65,21 +65,12 @@ void PppoeWidget::clear() } -void PppoeWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void PppoeWidget::createFilter() { // session mac - ui->lineEdit_session->setInputMask(QString(">99999:HH:HH:HH:HH:HH:HH")); + ui->lineEdit_session->setInputMask(QString(">00000:hh:hh:hh:hh:hh:hh")); // mac - ui->lineEdit_mac->setInputMask(QString(">HH:HH:HH:HH:HH:HH")); + ui->lineEdit_mac->setInputMask(QString(">hh:hh:hh:hh:hh:hh")); } @@ -93,17 +84,13 @@ void PppoeWidget::createActions() void PppoeWidget::changeMode(const QString currentText) { - if (currentText == QString("persist")) - ui->widget_timeout->setHidden(true); - else if (currentText == QString("demand")) - ui->widget_timeout->setHidden(false); + ui->widget_timeout->setHidden(currentText == QString("persist")); } void PppoeWidget::selectOptionsFile() { - QString filename = QFileDialog::getOpenFileName( - this, + QString filename = QFileDialog::getOpenFileName(this, QApplication::translate("PppoeWidget", "Select options file"), QDir::currentPath(), QApplication::translate("PppoeWidget", "Configuration files (*.conf)")); @@ -126,45 +113,43 @@ void PppoeWidget::showAdvanced() QMap PppoeWidget::getSettings() { - QMap pppoeSettings; + QMap settings; - if (isOk() != 0) - return pppoeSettings; + if (isOk() != 0) return settings; if (!ui->lineEdit_username->text().isEmpty()) - pppoeSettings[QString("User")] = QString("'") + ui->lineEdit_username->text() + QString("'"); + settings[QString("User")] = QString("'%1'").arg(ui->lineEdit_username->text()); if (!ui->lineEdit_password->text().isEmpty()) - pppoeSettings[QString("Password")] = QString("'") + ui->lineEdit_password->text() + QString("'"); - pppoeSettings[QString("ConnectionMode")] = QString("'") + ui->comboBox_connection->currentText() + QString("'"); + settings[QString("Password")] = QString("'%1'").arg(ui->lineEdit_password->text()); + settings[QString("ConnectionMode")] = QString("'%1'").arg(ui->comboBox_connection->currentText()); if (ui->comboBox_connection->currentText() == QString("demand")) - pppoeSettings[QString("IdleTimeout")] = QString::number(ui->spinBox_timeout->value()); + settings[QString("IdleTimeout")] = QString::number(ui->spinBox_timeout->value()); if (ui->spinBox_fail->value() != 5) - pppoeSettings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value()); + settings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value()); if (ui->checkBox_route->checkState() == Qt::Unchecked) - pppoeSettings[QString("DefaultRoute")] = QString("false"); + settings[QString("DefaultRoute")] = QString("false"); if (ui->checkBox_dns->checkState() == Qt::Unchecked) - pppoeSettings[QString("UsePeerDNS")] = QString("false"); + settings[QString("UsePeerDNS")] = QString("false"); if (!ui->lineEdit_unit->text().isEmpty()) - pppoeSettings[QString("PPPUnit")] = ui->lineEdit_unit->text(); + settings[QString("PPPUnit")] = ui->lineEdit_unit->text(); if (ui->spinBox_lcpInterval->value() != 30) - pppoeSettings[QString("LCPEchoInterval")] = QString::number(ui->spinBox_lcpInterval->value()); + settings[QString("LCPEchoInterval")] = QString::number(ui->spinBox_lcpInterval->value()); if (ui->spinBox_lcpFailure->value() != 4) - pppoeSettings[QString("LCPEchoFailure")] = QString::number(ui->spinBox_lcpFailure->value()); + settings[QString("LCPEchoFailure")] = QString::number(ui->spinBox_lcpFailure->value()); if (!ui->lineEdit_options->text().isEmpty()) - pppoeSettings[QString("OptionsFile")] = QString("'") + ui->lineEdit_options->text() + QString("'"); + settings[QString("OptionsFile")] = QString("'%1'").arg(ui->lineEdit_options->text()); if (!ui->lineEdit_service->text().isEmpty()) - pppoeSettings[QString("PPPoEService")] = QString("'") + ui->lineEdit_service->text() + QString("'"); + settings[QString("PPPoEService")] = QString("'%1'").arg(ui->lineEdit_service->text()); if (!ui->lineEdit_ac->text().isEmpty()) - pppoeSettings[QString("PPPoEAC")] = QString("'") + ui->lineEdit_ac->text() + QString("'"); - if (!ui->lineEdit_session->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) - pppoeSettings[QString("PPPoESession")] = QString("'") + ui->lineEdit_session->text() - .remove(QChar('\'')).remove(QChar('"')) + QString("'"); - if (!ui->lineEdit_mac->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) - pppoeSettings[QString("PPPoEMAC")] = QString("'") + ui->lineEdit_mac->text() + QString("'"); + settings[QString("PPPoEAC")] = QString("'%1'").arg(ui->lineEdit_ac->text()); + if (!ui->lineEdit_session->text().remove(QChar(':')).isEmpty()) + settings[QString("PPPoESession")] = QString("'%1'").arg(ui->lineEdit_session->text()); + if (!ui->lineEdit_mac->text().remove(QChar(':')).isEmpty()) + settings[QString("PPPoEMAC")] = QString("'%1'").arg(ui->lineEdit_mac->text()); if (ui->checkBox_ipv6->checkState() == Qt::Checked) - pppoeSettings[QString("PPPoEIP6")] = QString("yes"); + settings[QString("PPPoEIP6")] = QString("yes"); - return pppoeSettings; + return settings; } @@ -175,19 +160,19 @@ int PppoeWidget::isOk() if (!QFile(ui->lineEdit_options->text()).exists()) return 1; // mac address - if (!ui->lineEdit_mac->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) - if (ui->lineEdit_mac->text().contains(QChar(' '))) + if (!ui->lineEdit_mac->text().remove(QChar(':')).isEmpty()) + if (ui->lineEdit_mac->text().length() != (6 * 2 + 5)) return 2; // session id is not set - if (!ui->lineEdit_session->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) - if (ui->lineEdit_session->text().split(QChar(':'))[0].remove(QChar(' ')).isEmpty()) + if (!ui->lineEdit_session->text().remove(QChar(':')).isEmpty()) + if (ui->lineEdit_session->text().split(QChar(':'))[0].isEmpty()) return 3; // session mac address - if (!ui->lineEdit_session->text().remove(QChar(':')).remove(QChar(' ')).isEmpty()) { + if (!ui->lineEdit_session->text().remove(QChar(':')).isEmpty()) { QStringList item = ui->lineEdit_session->text().split(QChar(':')); - for (int i=1; i<7; i++) - if (item[i].contains(QChar(' '))) - return 4; + item.removeFirst(); + if (item.join(QChar(':')).length() != (6 * 2 + 5)) + return 4; } // all fine return 0; @@ -197,44 +182,43 @@ int PppoeWidget::isOk() void PppoeWidget::setSettings(const QMap settings) { clear(); - QMap pppoeSettings = settings; - if (pppoeSettings.contains(QString("User"))) - ui->lineEdit_username->setText(pppoeSettings[QString("User")]); - if (pppoeSettings.contains(QString("Password"))) - ui->lineEdit_password->setText(pppoeSettings[QString("Password")]); - if (pppoeSettings.contains(QString("ConnectionMode"))) - for (int i=0; icomboBox_connection->count(); i++) - if (pppoeSettings[QString("ConnectionMode")] == ui->comboBox_connection->itemText(i)) - ui->comboBox_connection->setCurrentIndex(i); - if (pppoeSettings.contains(QString("IdleTimeout"))) - ui->spinBox_timeout->setValue(pppoeSettings[QString("IdleTimeout")].toInt()); - if (pppoeSettings.contains(QString("MaxFail"))) - ui->spinBox_fail->setValue(pppoeSettings[QString("MaxFail")].toInt()); - if (pppoeSettings.contains(QString("DefaultRoute"))) - if (pppoeSettings[QString("DefaultRoute")] == QString("false")) + if (settings.contains(QString("User"))) + ui->lineEdit_username->setText(settings[QString("User")]); + if (settings.contains(QString("Password"))) + ui->lineEdit_password->setText(settings[QString("Password")]); + if (settings.contains(QString("ConnectionMode"))) { + int index = ui->comboBox_connection->findText(settings[QString("ConnectionMode")]); + ui->comboBox_connection->setCurrentIndex(index); + } + if (settings.contains(QString("IdleTimeout"))) + ui->spinBox_timeout->setValue(settings[QString("IdleTimeout")].toInt()); + if (settings.contains(QString("MaxFail"))) + ui->spinBox_fail->setValue(settings[QString("MaxFail")].toInt()); + if (settings.contains(QString("DefaultRoute"))) + if (settings[QString("DefaultRoute")] == QString("false")) ui->checkBox_route->setCheckState(Qt::Unchecked); - if (pppoeSettings.contains(QString("UsePeerDNS"))) - if (pppoeSettings[QString("UsePeerDNS")] == QString("false")) + if (settings.contains(QString("UsePeerDNS"))) + if (settings[QString("UsePeerDNS")] == QString("false")) ui->checkBox_dns->setCheckState(Qt::Unchecked); - if (pppoeSettings.contains(QString("PPPUnit"))) - ui->lineEdit_unit->setText(pppoeSettings[QString("PPPUnit")]); - if (pppoeSettings.contains(QString("LCPEchoInterval"))) - ui->spinBox_lcpInterval->setValue(pppoeSettings[QString("LCPEchoInterval")].toInt()); - if (pppoeSettings.contains(QString("LCPEchoFailure"))) - ui->spinBox_lcpFailure->setValue(pppoeSettings[QString("LCPEchoFailure")].toInt()); - if (pppoeSettings.contains(QString("OptionsFile"))) - ui->lineEdit_options->setText(pppoeSettings[QString("OptionsFile")]); - if (pppoeSettings.contains(QString("PPPoEService"))) - ui->lineEdit_service->setText(pppoeSettings[QString("PPPoEService")]); - if (pppoeSettings.contains(QString("PPPoEAC"))) - ui->lineEdit_ac->setText(pppoeSettings[QString("PPPoEAC")]); - if (pppoeSettings.contains(QString("PPPoESession"))) - ui->lineEdit_session->setText(pppoeSettings[QString("PPPoESession")]); - if (pppoeSettings.contains(QString("PPPoEMAC"))) - ui->lineEdit_mac->setText(pppoeSettings[QString("PPPoEMAC")]); - if (pppoeSettings.contains(QString("PPPoEIP6"))) - if (pppoeSettings[QString("PPPoEIP6")] == QString("yes")) + if (settings.contains(QString("PPPUnit"))) + ui->lineEdit_unit->setText(settings[QString("PPPUnit")]); + if (settings.contains(QString("LCPEchoInterval"))) + ui->spinBox_lcpInterval->setValue(settings[QString("LCPEchoInterval")].toInt()); + if (settings.contains(QString("LCPEchoFailure"))) + ui->spinBox_lcpFailure->setValue(settings[QString("LCPEchoFailure")].toInt()); + if (settings.contains(QString("OptionsFile"))) + ui->lineEdit_options->setText(settings[QString("OptionsFile")]); + if (settings.contains(QString("PPPoEService"))) + ui->lineEdit_service->setText(settings[QString("PPPoEService")]); + if (settings.contains(QString("PPPoEAC"))) + ui->lineEdit_ac->setText(settings[QString("PPPoEAC")]); + if (settings.contains(QString("PPPoESession"))) + ui->lineEdit_session->setText(settings[QString("PPPoESession")]); + if (settings.contains(QString("PPPoEMAC"))) + ui->lineEdit_mac->setText(settings[QString("PPPoEMAC")]); + if (settings.contains(QString("PPPoEIP6"))) + if (settings[QString("PPPoEIP6")] == QString("yes")) ui->checkBox_dns->setCheckState(Qt::Checked); changeMode(ui->comboBox_connection->currentText()); diff --git a/sources/gui/src/pppoewidget.h b/sources/gui/src/pppoewidget.h index c56f692..fbf1c7f 100644 --- a/sources/gui/src/pppoewidget.h +++ b/sources/gui/src/pppoewidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: void changeMode(const QString currentText); diff --git a/sources/gui/src/tunnelwidget.cpp b/sources/gui/src/tunnelwidget.cpp index 2d072c8..3af69d7 100644 --- a/sources/gui/src/tunnelwidget.cpp +++ b/sources/gui/src/tunnelwidget.cpp @@ -45,15 +45,6 @@ void TunnelWidget::clear() } -void TunnelWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void TunnelWidget::createFilter() { ui->lineEdit_local->setValidator(IpRegExp::ipv4Validator()); @@ -63,26 +54,23 @@ void TunnelWidget::createFilter() QMap TunnelWidget::getSettings() { - QMap tunnelSettings; + QMap settings; - if (isOk() != 0) - return tunnelSettings; + if (isOk() != 0) return settings; - tunnelSettings[QString("Mode")] = QString("'") + ui->comboBox_mode->currentText() + QString("'"); - if (!ui->lineEdit_local->text().remove(QChar('.')).remove(QChar(' ')).isEmpty()) - tunnelSettings[QString("Local")] = QString("'") + ui->lineEdit_local->text() + QString("'"); - if (!ui->lineEdit_remote->text().remove(QChar('.')).remove(QChar(' ')).isEmpty()) - tunnelSettings[QString("Remote")] = QString("'") + ui->lineEdit_remote->text() + QString("'"); + settings[QString("Mode")] = QString("'%1'").arg(ui->comboBox_mode->currentText()); + if (!IpRegExp::checkString(ui->lineEdit_local->text(), IpRegExp::ip4Regex())) + settings[QString("Local")] = QString("'%1'").arg(ui->lineEdit_local->text()); + settings[QString("Remote")] = QString("'%1'").arg(ui->lineEdit_remote->text()); - return tunnelSettings; + return settings; } int TunnelWidget::isOk() { // ip is not correct - if ((!IpRegExp::checkString(ui->lineEdit_local->text(), IpRegExp::ip4Regex())) || - (!IpRegExp::checkString(ui->lineEdit_remote->text(), IpRegExp::ip4Regex()))) + if (!IpRegExp::checkString(ui->lineEdit_remote->text(), IpRegExp::ip4Regex())) return 1; // all fine return 0; @@ -92,14 +80,13 @@ int TunnelWidget::isOk() void TunnelWidget::setSettings(const QMap settings) { clear(); - QMap tunnelSettings = settings; - if (tunnelSettings.contains(QString("Mode"))) - for (int i=0; icomboBox_mode->count(); i++) - if (tunnelSettings[QString("Mode")] == ui->comboBox_mode->itemText(i)) - ui->comboBox_mode->setCurrentIndex(i); - if (tunnelSettings.contains(QString("Local"))) - ui->lineEdit_local->setText(tunnelSettings[QString("Local")]); - if (tunnelSettings.contains(QString("Remote"))) - ui->lineEdit_remote->setText(tunnelSettings[QString("Remote")]); + if (settings.contains(QString("Mode"))) { + int index = ui->comboBox_mode->findText(settings[QString("Mode")]); + ui->comboBox_mode->setCurrentIndex(index); + } + if (settings.contains(QString("Local"))) + ui->lineEdit_local->setText(settings[QString("Local")]); + if (settings.contains(QString("Remote"))) + ui->lineEdit_remote->setText(settings[QString("Remote")]); } diff --git a/sources/gui/src/tunnelwidget.h b/sources/gui/src/tunnelwidget.h index 648a700..621996b 100644 --- a/sources/gui/src/tunnelwidget.h +++ b/sources/gui/src/tunnelwidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private: Ui::TunnelWidget *ui; diff --git a/sources/gui/src/tuntapwidget.cpp b/sources/gui/src/tuntapwidget.cpp index b7ef97a..d6ea207 100644 --- a/sources/gui/src/tuntapwidget.cpp +++ b/sources/gui/src/tuntapwidget.cpp @@ -42,27 +42,17 @@ void TuntapWidget::clear() } -void TuntapWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - QMap TuntapWidget::getSettings() { - QMap tuntapSettings; + QMap settings; - if (isOk() != 0) - return tuntapSettings; + if (isOk() != 0) return settings; - tuntapSettings[QString("Mode")] = QString("'") + ui->comboBox_mode->currentText() + QString("'"); - tuntapSettings[QString("User")] = QString("'") + ui->lineEdit_user->text() + QString("'"); - tuntapSettings[QString("Group")] = QString("'") + ui->lineEdit_group->text() + QString("'"); + settings[QString("Mode")] = QString("'%1'").arg(ui->comboBox_mode->currentText()); + settings[QString("User")] = QString("'%1'").arg(ui->lineEdit_user->text()); + settings[QString("Group")] = QString("'%1'").arg(ui->lineEdit_group->text()); - return tuntapSettings; + return settings; } @@ -82,14 +72,13 @@ int TuntapWidget::isOk() void TuntapWidget::setSettings(const QMap settings) { clear(); - QMap tuntapSettings = settings; - if (tuntapSettings.contains(QString("Mode"))) - for (int i=0; icomboBox_mode->count(); i++) - if (tuntapSettings[QString("Mode")] == ui->comboBox_mode->itemText(i)) - ui->comboBox_mode->setCurrentIndex(i); - if (tuntapSettings.contains(QString("User"))) - ui->lineEdit_user->setText(tuntapSettings[QString("User")]); - if (tuntapSettings.contains(QString("Group"))) - ui->lineEdit_group->setText(tuntapSettings[QString("Group")]); + if (settings.contains(QString("Mode"))) { + int index = ui->comboBox_mode->findText(settings[QString("Mode")]); + ui->comboBox_mode->setCurrentIndex(index); + } + if (settings.contains(QString("User"))) + ui->lineEdit_user->setText(settings[QString("User")]); + if (settings.contains(QString("Group"))) + ui->lineEdit_group->setText(settings[QString("Group")]); } diff --git a/sources/gui/src/tuntapwidget.h b/sources/gui/src/tuntapwidget.h index dd96ceb..7e05053 100644 --- a/sources/gui/src/tuntapwidget.h +++ b/sources/gui/src/tuntapwidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private: Ui::TuntapWidget *ui; diff --git a/sources/gui/src/vlanwidget.cpp b/sources/gui/src/vlanwidget.cpp index 5b03b26..42b2d69 100644 --- a/sources/gui/src/vlanwidget.cpp +++ b/sources/gui/src/vlanwidget.cpp @@ -40,25 +40,15 @@ void VlanWidget::clear() } -void VlanWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - QMap VlanWidget::getSettings() { - QMap vlanSettings; + QMap settings; - if (isOk() != 0) - return vlanSettings; + if (isOk() != 0) return settings; - vlanSettings[QString("VLANID")] = QString::number(ui->spinBox_vlan->value()); + settings[QString("VLANID")] = QString::number(ui->spinBox_vlan->value()); - return vlanSettings; + return settings; } @@ -72,8 +62,7 @@ int VlanWidget::isOk() void VlanWidget::setSettings(const QMap settings) { clear(); - QMap vlanSettings = settings; - if (vlanSettings.contains(QString("VLANID"))) - ui->spinBox_vlan->setValue(vlanSettings[QString("VLANID")].toInt()); + if (settings.contains(QString("VLANID"))) + ui->spinBox_vlan->setValue(settings[QString("VLANID")].toInt()); } diff --git a/sources/gui/src/vlanwidget.h b/sources/gui/src/vlanwidget.h index 845fd1c..6caaa00 100644 --- a/sources/gui/src/vlanwidget.h +++ b/sources/gui/src/vlanwidget.h @@ -38,7 +38,6 @@ public: public slots: void clear(); - void setShown(const bool state); private: Ui::VlanWidget *ui; diff --git a/sources/gui/src/wirelesswidget.cpp b/sources/gui/src/wirelesswidget.cpp index 556f538..054e293 100644 --- a/sources/gui/src/wirelesswidget.cpp +++ b/sources/gui/src/wirelesswidget.cpp @@ -68,12 +68,12 @@ void WirelessWidget::clear() if (rfkillDirectory->exists()) { QStringList rfkillDevices = rfkillDirectory->entryList(QDir::Dirs | QDir::NoDotAndDotDot); for (int i=0; iabsolutePath() + QDir::separator() + rfkillDevices[i] + - QDir::separator() + QString("name")); - QString deviceName; - if (device.open(QIODevice::ReadOnly)) - deviceName = QString(device.readLine()).trimmed(); - ui->comboBox_rfkill->addItem(deviceName); + QFile device(QString("%1%2%3%2name").arg(rfkillDirectory->absolutePath()) + .arg(QDir::separator()) + .arg(rfkillDevices[i])); + if (!device.open(QIODevice::ReadOnly)) continue; + ui->comboBox_rfkill->addItem(QString(device.readLine()).trimmed()); + device.close(); } } ui->comboBox_rfkill->setCurrentIndex(0); @@ -85,15 +85,6 @@ void WirelessWidget::clear() } -void WirelessWidget::setShown(const bool state) -{ - if (state) - show(); - else - hide(); -} - - void WirelessWidget::createActions() { connect(ui->pushButton_wirelessAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced())); @@ -111,13 +102,13 @@ void WirelessWidget::keyPressEvent(QKeyEvent *pressedKey) { if (pressedKey->key() == Qt::Key_Delete) { if (ui->listWidget_wpaConfigSection->hasFocus() && - (ui->listWidget_wpaConfigSection->currentItem() != 0)) + (ui->listWidget_wpaConfigSection->currentItem() != nullptr)) delete ui->listWidget_wpaConfigSection->currentItem(); else if (ui->listWidget_freq->hasFocus() && - (ui->listWidget_freq->currentItem() != 0)) + (ui->listWidget_freq->currentItem() != nullptr)) delete ui->listWidget_freq->currentItem(); else if (ui->listWidget_drivers->hasFocus() && - (ui->listWidget_drivers->currentItem() != 0)) + (ui->listWidget_drivers->currentItem() != nullptr)) delete ui->listWidget_drivers->currentItem(); } } @@ -126,11 +117,7 @@ void WirelessWidget::keyPressEvent(QKeyEvent *pressedKey) void WirelessWidget::addDriver() { QString driver = ui->comboBox_drivers->currentText(); - bool exists = false; - for (int i=0; ilistWidget_drivers->count(); i++) - if (ui->listWidget_drivers->item(i)->text() == driver) - exists = true; - if (!exists) + if (ui->listWidget_drivers->findItems(driver, Qt::MatchExactly).count() == 0) ui->listWidget_drivers->addItem(driver); } @@ -138,11 +125,7 @@ void WirelessWidget::addDriver() void WirelessWidget::addFreq() { QString freq = QString::number(ui->spinBox_freq->value()); - bool exists = false; - for (int i=0; ilistWidget_freq->count(); i++) - if (ui->listWidget_freq->item(i)->text() == freq) - exists = true; - if (!exists) + if (ui->listWidget_freq->findItems(freq, Qt::MatchExactly).count() == 0) ui->listWidget_freq->addItem(freq); } @@ -156,35 +139,18 @@ void WirelessWidget::addOption() void WirelessWidget::changeSecurity(const QString currentText) { - if (currentText == QString("none")) { - ui->widget_essid->setHidden(false); - ui->widget_wpaConfigSection->setHidden(true); - ui->widget_wpaConfig->setHidden(true); - ui->widget_key->setHidden(true); - } else if ((currentText == QString("wep")) || - (currentText == QString("wpa"))) { - ui->widget_essid->setHidden(false); - ui->widget_wpaConfigSection->setHidden(true); - ui->widget_wpaConfig->setHidden(true); - ui->widget_key->setHidden(false); - } else if (currentText == QString("wpa-configsection")) { - ui->widget_essid->setHidden(true); - ui->widget_wpaConfigSection->setHidden(false); - ui->widget_wpaConfig->setHidden(true); - ui->widget_key->setHidden(true); - } else if (currentText == QString("wpa-config")) { - ui->widget_essid->setHidden(true); - ui->widget_wpaConfigSection->setHidden(true); - ui->widget_wpaConfig->setHidden(false); - ui->widget_key->setHidden(true); - } + ui->widget_essid->setHidden((currentText != QString("none")) && + (currentText != QString("wep")) && + (currentText != QString("wpa"))); + ui->widget_key->setHidden((currentText != QString("wep")) && (currentText != QString("wpa"))); + ui->widget_wpaConfig->setHidden(currentText != QString("wpa-config")); + ui->widget_wpaConfigSection->setHidden(currentText != QString("wpa-configsection")); } void WirelessWidget::selectWpaConfig() { - QString filename = QFileDialog::getOpenFileName( - this, + QString filename = QFileDialog::getOpenFileName(this, QApplication::translate("EthernetWidget", "Select wpa configuration file"), QDir::currentPath(), QApplication::translate("EthernetWidget", "Configuration files (*.conf)")); @@ -207,60 +173,59 @@ void WirelessWidget::showAdvanced() QMap WirelessWidget::getSettings() { - QMap wirelessSettings; + QMap settings; - if (isOk() != 0) - return wirelessSettings; + if (isOk() != 0) return settings; - wirelessSettings[QString("Security")] = ui->comboBox_security->currentText(); - wirelessSettings[QString("ESSID")] = QString("'") + ui->lineEdit_essid->text() + QString("'"); + settings[QString("Security")] = ui->comboBox_security->currentText(); + settings[QString("ESSID")] = QString("'%1'").arg(ui->lineEdit_essid->text()); if (ui->comboBox_security->currentText() == QString("wep")) { if (ui->lineEdit_key->text().indexOf(QString("\\\"")) == 0) - wirelessSettings[QString("Key")] = ui->lineEdit_key->text(); + settings[QString("Key")] = ui->lineEdit_key->text(); else - wirelessSettings[QString("Key")] = QString("'") + ui->lineEdit_key->text() + QString("'"); + settings[QString("Key")] = QString("'%1'").arg(ui->lineEdit_key->text()); } else if (ui->comboBox_security->currentText() == QString("wpa")) - wirelessSettings[QString("Key")] = QString("'") + ui->lineEdit_key->text() + QString("'"); + settings[QString("Key")] = QString("'%1'").arg(ui->lineEdit_key->text()); if (ui->comboBox_security->currentText() == QString("wpa-configsection")) { QStringList section; for (int i=0; ilistWidget_wpaConfigSection->count(); i++) - section.append(QString("'") + ui->listWidget_wpaConfigSection->item(i)->text() + QString("'")); - wirelessSettings[QString("WPAConfigSection")] = QString("\n") + section.join(QChar('\n')) + QString("\n"); + section.append(QString("'%1'").arg(ui->listWidget_wpaConfigSection->item(i)->text())); + settings[QString("WPAConfigSection")] = QString("\n%1\n").arg(section.join(QChar('\n'))); } if (ui->comboBox_security->currentText() == QString("wpa-config")) - wirelessSettings[QString("WPAConfigFile")] = QString("'") + ui->lineEdit_wpaConfig->text() + QString("'"); + settings[QString("WPAConfigFile")] = QString("'%1'").arg(ui->lineEdit_wpaConfig->text()); if (ui->checkBox_hidden->checkState() == Qt::Checked) - wirelessSettings[QString("Hidden")] = QString("yes"); + settings[QString("Hidden")] = QString("yes"); if (ui->checkBox_adhoc->checkState() == Qt::Checked) - wirelessSettings[QString("AdHoc")] = QString("yes"); + settings[QString("AdHoc")] = QString("yes"); if (ui->listWidget_freq->count() != 0) { QStringList freqs; for (int i=0; ilistWidget_freq->count(); i++) freqs.append(ui->listWidget_freq->item(i)->text()); - wirelessSettings[QString("ScanFrequencies")] = freqs.join(QChar(' ')); + settings[QString("ScanFrequencies")] = freqs.join(QChar(' ')); } if (ui->spinBox_frequency->value() != 2000) - wirelessSettings[QString("Frequency")] = QString::number(ui->spinBox_frequency->value()); + settings[QString("Frequency")] = QString::number(ui->spinBox_frequency->value()); if (ui->spinBox_priority->value() != 0) - wirelessSettings[QString("Priority")] = QString::number(ui->spinBox_priority->value()); + settings[QString("Priority")] = QString::number(ui->spinBox_priority->value()); if (!ui->lineEdit_country->text().isEmpty()) - wirelessSettings[QString("Country")] = QString("'") + ui->lineEdit_country->text() + QString("'"); + settings[QString("Country")] = QString("'%1'").arg(ui->lineEdit_country->text()); if (ui->lineEdit_wpaGroup->text() != QString("wheel")) - wirelessSettings[QString("WPAGroup")] = QString("'") + ui->lineEdit_wpaGroup->text() + QString("'"); + settings[QString("WPAGroup")] = QString("'%1'").arg(ui->lineEdit_wpaGroup->text()); if (ui->listWidget_drivers->count() != 0) { QStringList drivers; for (int i=0; ilistWidget_drivers->count(); i++) drivers.append(ui->listWidget_drivers->item(i)->text()); - wirelessSettings[QString("WPADriver")] = QString("'") + drivers.join(QChar(',')) + QString("'"); + settings[QString("WPADriver")] = QString("'%1'").arg(drivers.join(QChar(','))); } if (ui->comboBox_rfkill->currentText() != QString("auto")) - wirelessSettings[QString("RFKill")] = ui->comboBox_rfkill->currentText(); + settings[QString("RFKill")] = ui->comboBox_rfkill->currentText(); if (ui->spinBox_timeoutWpa->value() != 15) - wirelessSettings[QString("TimeoutWPA")] = QString::number(ui->spinBox_timeoutWpa->value()); + settings[QString("TimeoutWPA")] = QString::number(ui->spinBox_timeoutWpa->value()); if (ui->checkBox_exclude->checkState() == Qt::Checked) - wirelessSettings[QString("ExcludeAuto")] = QString("yes"); + settings[QString("ExcludeAuto")] = QString("yes"); - return wirelessSettings; + return settings; } @@ -268,7 +233,7 @@ int WirelessWidget::isOk() { // empty key if ((ui->comboBox_security->currentText() == QString("wep")) || - (ui->comboBox_security->currentText() == QString("wpa"))) + (ui->comboBox_security->currentText() == QString("wpa"))) if (ui->lineEdit_key->text().isEmpty()) return 1; // empty settings @@ -285,8 +250,8 @@ int WirelessWidget::isOk() return 4; // essid is not set if ((ui->comboBox_security->currentText() == QString("none")) || - (ui->comboBox_security->currentText() == QString("wep")) || - (ui->comboBox_security->currentText() == QString("wpa"))) + (ui->comboBox_security->currentText() == QString("wep")) || + (ui->comboBox_security->currentText() == QString("wpa"))) if (ui->lineEdit_essid->text().isEmpty()) return 5; // all fine @@ -297,52 +262,52 @@ int WirelessWidget::isOk() void WirelessWidget::setSettings(const QMap settings) { clear(); - QMap wirelessSettings = settings; - if (wirelessSettings.contains(QString("Security"))) - for (int i=0; icomboBox_security->count(); i++) - if (wirelessSettings[QString("Security")] == ui->comboBox_security->itemText(i)) - ui->comboBox_security->setCurrentIndex(i); - if (wirelessSettings.contains(QString("ESSID"))) - ui->lineEdit_essid->setText(wirelessSettings[QString("ESSID")]); - if (wirelessSettings.contains(QString("Key"))) { - // workaround for wireless-wep example - if (wirelessSettings.contains(QString("Security"))) - if ((wirelessSettings[QString("Security")] == QString("wep")) && - (wirelessSettings[QString("Key")][0] == QChar('"'))) - wirelessSettings[QString("Key")] = QChar('\\') + wirelessSettings[QString("Key")]; - ui->lineEdit_key->setText(wirelessSettings[QString("Key")]); + if (settings.contains(QString("Security"))) { + int index = ui->comboBox_security->findText(settings[QString("Security")]); + ui->comboBox_security->setCurrentIndex(index); } - if (wirelessSettings.contains(QString("WPAConfigSection"))) - ui->listWidget_wpaConfigSection->addItems(wirelessSettings[QString("WPAConfigSection")].split(QChar('\n'))); - if (wirelessSettings.contains(QString("WPAConfigFile"))) - ui->lineEdit_wpaConfig->setText(wirelessSettings[QString("WPAConfigFile")]); - if (wirelessSettings.contains(QString("Hidden"))) - if (wirelessSettings[QString("Hidden")] == QString("yes")) + if (settings.contains(QString("ESSID"))) + ui->lineEdit_essid->setText(settings[QString("ESSID")]); + if (settings.contains(QString("Key"))) { + QString key = settings[QString("Key")]; + // workaround for wireless-wep example + if (settings.contains(QString("Security"))) + if ((settings[QString("Security")] == QString("wep")) && + (key[0] == QChar('"'))) + key = QChar('\\') + key; + ui->lineEdit_key->setText(key); + } + if (settings.contains(QString("WPAConfigSection"))) + ui->listWidget_wpaConfigSection->addItems(settings[QString("WPAConfigSection")].split(QChar('\n'))); + if (settings.contains(QString("WPAConfigFile"))) + ui->lineEdit_wpaConfig->setText(settings[QString("WPAConfigFile")]); + if (settings.contains(QString("Hidden"))) + if (settings[QString("Hidden")] == QString("yes")) ui->checkBox_hidden->setCheckState(Qt::Checked); - if (wirelessSettings.contains(QString("AdHoc"))) - if (wirelessSettings[QString("AdHoc")] == QString("yes")) + if (settings.contains(QString("AdHoc"))) + if (settings[QString("AdHoc")] == QString("yes")) ui->checkBox_adhoc->setCheckState(Qt::Checked); - if (wirelessSettings.contains(QString("ScanFrequencies"))) - ui->listWidget_freq->addItems(wirelessSettings[QString("ScanFrequencies")].split(QChar('\n'))); - if (wirelessSettings.contains(QString("Frequency"))) - ui->spinBox_frequency->setValue(wirelessSettings[QString("Frequency")].toInt()); - if (wirelessSettings.contains(QString("Priority"))) - ui->spinBox_priority->setValue(wirelessSettings[QString("Priority")].toInt()); - if (wirelessSettings.contains(QString("Country"))) - ui->lineEdit_country->setText(wirelessSettings[QString("Country")]); - if (wirelessSettings.contains(QString("WPAGroup"))) - ui->lineEdit_wpaGroup->setText(wirelessSettings[QString("WPAGroup")]); - if (wirelessSettings.contains(QString("WPADriver"))) - ui->listWidget_drivers->addItems(wirelessSettings[QString("WPADriver")].split(QChar(','))); - if (wirelessSettings.contains(QString("RFKill"))) - for (int i=0; icomboBox_rfkill->count(); i++) - if (wirelessSettings[QString("RFKill")] == ui->comboBox_rfkill->itemText(i)) - ui->comboBox_rfkill->setCurrentIndex(i); - if (wirelessSettings.contains(QString("TimeoutWPA"))) - ui->spinBox_timeoutWpa->setValue(wirelessSettings[QString("TimeoutWPA")].toInt()); - if (wirelessSettings.contains(QString("ExcludeAuto"))) - if (wirelessSettings[QString("ExcludeAuto")] == QString("yes")) + if (settings.contains(QString("ScanFrequencies"))) + ui->listWidget_freq->addItems(settings[QString("ScanFrequencies")].split(QChar('\n'))); + if (settings.contains(QString("Frequency"))) + ui->spinBox_frequency->setValue(settings[QString("Frequency")].toInt()); + if (settings.contains(QString("Priority"))) + ui->spinBox_priority->setValue(settings[QString("Priority")].toInt()); + if (settings.contains(QString("Country"))) + ui->lineEdit_country->setText(settings[QString("Country")]); + if (settings.contains(QString("WPAGroup"))) + ui->lineEdit_wpaGroup->setText(settings[QString("WPAGroup")]); + if (settings.contains(QString("WPADriver"))) + ui->listWidget_drivers->addItems(settings[QString("WPADriver")].split(QChar(','))); + if (settings.contains(QString("RFKill"))) { + int index = ui->comboBox_rfkill->findText(settings[QString("RFKill")]); + ui->comboBox_rfkill->setCurrentIndex(index); + } + if (settings.contains(QString("TimeoutWPA"))) + ui->spinBox_timeoutWpa->setValue(settings[QString("TimeoutWPA")].toInt()); + if (settings.contains(QString("ExcludeAuto"))) + if (settings[QString("ExcludeAuto")] == QString("yes")) ui->checkBox_exclude->setCheckState(Qt::Checked); changeSecurity(ui->comboBox_security->currentText()); diff --git a/sources/gui/src/wirelesswidget.h b/sources/gui/src/wirelesswidget.h index 3b7ee3c..09ffcd6 100644 --- a/sources/gui/src/wirelesswidget.h +++ b/sources/gui/src/wirelesswidget.h @@ -41,7 +41,6 @@ public: public slots: void clear(); - void setShown(const bool state); private slots: void addDriver();