mirror of
https://github.com/arcan1s/netctl-gui.git
synced 2025-07-07 11:05:45 +00:00
+ new Verbose* DBus calls
+ new force request to netctl (DBus) + PointType enum + notification on hidding, + new columns in WiFi menu * improve user expierence * fix language definition * fix tests * update 3rdparty components * small refactoring
This commit is contained in:
@ -196,9 +196,14 @@ small {
|
||||
<td>yes</td>
|
||||
</tr>
|
||||
<!-- wpa_supplicant actions -->
|
||||
<tr>
|
||||
<td>QStringList VerboseWiFi()</td>
|
||||
<td>returns available WiFi points in format <code>NAME|SECURITY|TYPE|FREQS|MACS|SIGNAL|ACTIVE|EXISTS</code></td>
|
||||
<td>yes</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QStringList WiFi()</td>
|
||||
<td>returns available WiFi points in format <code>NAME|SECURITY|FREQS|MACS|SIGNAL|ACTIVE|EXISTS</code></td>
|
||||
<td>returns available WiFi points in format <code>NAME|SECURITY|SIGNAL|ACTIVE|EXISTS</code></td>
|
||||
<td>yes</td>
|
||||
</tr>
|
||||
<!-- /netctl path -->
|
||||
@ -221,8 +226,28 @@ small {
|
||||
<td>returns general information in format <code>[ActiveProfile, ActiveProfileStatus]</code></td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QString netctlActiveProfile()</td>
|
||||
<td>returns active profile from netctl even if netctl-auto is running</td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QStringList netctlProfileList()</td>
|
||||
<td>returns available profiles in format <code>NAME|DESCRIPTION|ACTIVE|ENABLED</code> from netctl even if netctl-auto is running</td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QStringList netctlVerboseProfileList()</td>
|
||||
<td>returns available profiles in format <code>NAME|DESCRIPTION|ESSID|ACTIVE|ENABLED</code> from netctl even if netctl-auto is running</td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QStringList ProfileList()</td>
|
||||
<td>returns available profiles in format <code>NAME|DESCRIPTION|ACTIVE|ENABLED</code></td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QStringList VerboseProfileList()</td>
|
||||
<td>returns available profiles in format <code>NAME|DESCRIPTION|ESSID|ACTIVE|ENABLED</code></td>
|
||||
<td>no</td>
|
||||
</tr>
|
||||
|
@ -54,15 +54,17 @@ QList<netctlWifiInfo> parseOutputWifi(const QList<QVariant> raw)
|
||||
QStringList list = raw[0].toStringList();
|
||||
for (int i=0; i<list.count(); i++) {
|
||||
QStringList info = list[i].split(QChar('|'));
|
||||
if (info.count() != 7) continue;
|
||||
if (info.count() != 8) continue;
|
||||
netctlWifiInfo wifi;
|
||||
wifi.name = info[0];
|
||||
wifi.security = info[1];
|
||||
wifi.frequencies = info[2].split(QChar(','));
|
||||
wifi.macs = info[3].split(QChar(','));
|
||||
wifi.signal = info[4].toInt();
|
||||
wifi.active = info[5].toInt();
|
||||
wifi.exists = info[6].toInt();
|
||||
wifi.type = static_cast<PointType>(info[2].toInt());
|
||||
for (int j=0; j<info[3].split(QChar(',')).count(); j++)
|
||||
wifi.frequencies.append(info[3].split(QChar(','))[j].toInt());
|
||||
wifi.macs = info[4].split(QChar(','));
|
||||
wifi.signal = info[5].toInt();
|
||||
wifi.active = info[6].toInt();
|
||||
wifi.exists = info[7].toInt();
|
||||
wifiInfo.append(wifi);
|
||||
}
|
||||
|
||||
|
@ -182,7 +182,7 @@ void IpWidget::addIpRoutes()
|
||||
(!IpRegExp::checkString(ui->lineEdit_ipRoutes2->text(), IpRegExp::ip4Regex())))
|
||||
return ErrorWindow::showWindow(20, QString("[IpWidget::addIpRoutes]"));
|
||||
|
||||
ui->listWidget_ipRoutes->addItem(ui->lineEdit_ipRoutes->text() + QString(" via ") + ui->lineEdit_ipRoutes2->text());
|
||||
ui->listWidget_ipRoutes->addItem(QString("%1 via %2").arg(ui->lineEdit_ipRoutes->text()).arg(ui->lineEdit_ipRoutes2->text()));
|
||||
ui->lineEdit_ipRoutes->clear();
|
||||
ui->lineEdit_ipRoutes2->clear();
|
||||
}
|
||||
@ -204,7 +204,7 @@ void IpWidget::addIpRoutes6()
|
||||
(!IpRegExp::checkString(ui->lineEdit_ipRoutes62->text(), IpRegExp::ip6Regex())))
|
||||
return ErrorWindow::showWindow(20, QString("[IpWidget::addIp6Routes]"));
|
||||
|
||||
ui->listWidget_ipRoutes6->addItem(ui->lineEdit_ipRoutes6->text() + QString(" via ") + ui->lineEdit_ipRoutes62->text());
|
||||
ui->listWidget_ipRoutes6->addItem(QString("%1 via %2").arg(ui->lineEdit_ipRoutes6->text()).arg(ui->lineEdit_ipRoutes62->text()));
|
||||
ui->lineEdit_ipRoutes6->clear();
|
||||
ui->lineEdit_ipRoutes62->clear();
|
||||
}
|
||||
|
@ -152,10 +152,10 @@ int main(int argc, char *argv[])
|
||||
QString language = Language::defineLanguage(args[QString("config")].toString(),
|
||||
args[QString("options")].toString());
|
||||
QTranslator qtTranslator;
|
||||
qtTranslator.load(QString("qt_") + language, QLibraryInfo::location(QLibraryInfo::TranslationsPath));
|
||||
qtTranslator.load(QString("qt_%1").arg(language), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
|
||||
a.installTranslator(&qtTranslator);
|
||||
QTranslator translator;
|
||||
translator.load(QString(":/translations/") + language);
|
||||
translator.load(QString(":/translations/%1").arg(language));
|
||||
a.installTranslator(&translator);
|
||||
|
||||
// running
|
||||
|
@ -61,24 +61,9 @@ void MainWindow::setMenuActionsShown(const bool state)
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
if (debug) qDebug() << PDEBUG << ":" << "State" << state;
|
||||
|
||||
// main
|
||||
toolBarActions[QString("netctlAuto")]->setVisible(state);
|
||||
toolBarActions[QString("mainRefresh")]->setVisible(state);
|
||||
toolBarActions[QString("mainStart")]->setVisible(state);
|
||||
toolBarActions[QString("mainSwitch")]->setVisible(state);
|
||||
toolBarActions[QString("mainRestart")]->setVisible(state);
|
||||
toolBarActions[QString("mainEnable")]->setVisible(state);
|
||||
toolBarActions[QString("mainStopAll")]->setVisible(state);
|
||||
toolBarActions[QString("mainEdit")]->setVisible(state);
|
||||
toolBarActions[QString("mainRemove")]->setVisible(state);
|
||||
// profile
|
||||
toolBarActions[QString("profileClear")]->setVisible(state);
|
||||
toolBarActions[QString("profileLoad")]->setVisible(state);
|
||||
toolBarActions[QString("profileSave")]->setVisible(state);
|
||||
toolBarActions[QString("profileRemove")]->setVisible(state);
|
||||
// wifi
|
||||
toolBarActions[QString("wifiRefresh")]->setVisible(state);
|
||||
toolBarActions[QString("wifiStart")]->setVisible(state);
|
||||
QStringList keys = toolBarActions.keys();
|
||||
for (int i=0; i<keys.count(); i++)
|
||||
toolBarActions[keys[i]]->setVisible(state);
|
||||
}
|
||||
|
||||
|
||||
@ -136,17 +121,12 @@ void MainWindow::updateMenuWifi()
|
||||
|
||||
toolBarActions[QString("wifiRefresh")]->setVisible(true);
|
||||
if (ui->tableWidget_wifi->currentItem() == nullptr) return;
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 4)->text().isEmpty()) {
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 3)->text().isEmpty()) {
|
||||
toolBarActions[QString("wifiStart")]->setText(QApplication::translate("MainWindow", "Stop"));
|
||||
toolBarActions[QString("wifiStart")]->setIcon(QIcon::fromTheme("process-stop"));
|
||||
} else {
|
||||
toolBarActions[QString("wifiStart")]->setText(QApplication::translate("MainWindow", "Start"));
|
||||
toolBarActions[QString("wifiStart")]->setIcon(QIcon::fromTheme("system-run"));
|
||||
}
|
||||
} else {
|
||||
if (ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 5)->text().isEmpty()) {
|
||||
toolBarActions[QString("wifiStart")]->setText(QApplication::translate("MainWindow", "Start"));
|
||||
toolBarActions[QString("wifiStart")]->setIcon(QIcon::fromTheme("system-run"));
|
||||
} else {
|
||||
toolBarActions[QString("wifiStart")]->setText(QApplication::translate("MainWindow", "Stop"));
|
||||
toolBarActions[QString("wifiStart")]->setIcon(QIcon::fromTheme("process-stop"));
|
||||
}
|
||||
toolBarActions[QString("wifiStart")]->setVisible(true);
|
||||
}
|
||||
@ -173,7 +153,7 @@ void MainWindow::updateMainTab()
|
||||
return updateMainTab();
|
||||
}
|
||||
netctlAutoStatus = responce[0].toBool();
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("ProfileList"), debug));
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("netctlVerboseProfileList"), debug));
|
||||
} else {
|
||||
netctlAutoStatus = netctlCommand->isNetctlAutoRunning();
|
||||
profiles = netctlCommand->getProfileList();
|
||||
@ -255,7 +235,7 @@ void MainWindow::updateProfileTab()
|
||||
void MainWindow::updateWifiTab()
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
wifiTabSetEnabled(checkExternalApps(QString("wpasup")));
|
||||
wifiTabSetEnabled(checkExternalApps(QString("wpasup-only")));
|
||||
if (!checkExternalApps(QString("wpasup"))) {
|
||||
ErrorWindow::showWindow(1, QString(PDEBUG), debug);
|
||||
emit(needToBeConfigured());
|
||||
@ -265,19 +245,21 @@ void MainWindow::updateWifiTab()
|
||||
ui->tabWidget->setDisabled(true);
|
||||
QList<netctlWifiInfo> scanResults;
|
||||
if (useHelper)
|
||||
scanResults = parseOutputWifi(sendRequestToCtrl(QString("WiFi"), debug));
|
||||
scanResults = parseOutputWifi(sendRequestToCtrl(QString("VerboseWiFi"), debug));
|
||||
else
|
||||
scanResults = wpaCommand->scanWifi();
|
||||
|
||||
ui->tableWidget_wifi->setSortingEnabled(false);
|
||||
ui->tableWidget_wifi->selectRow(-1);
|
||||
ui->tableWidget_wifi->sortByColumn(0, Qt::AscendingOrder);
|
||||
ui->tableWidget_wifi->sortByColumn(3, Qt::AscendingOrder);
|
||||
ui->tableWidget_wifi->clear();
|
||||
ui->tableWidget_wifi->setRowCount(scanResults.count());
|
||||
|
||||
// create header
|
||||
QStringList headerList;
|
||||
headerList.append(QApplication::translate("MainWindow", "Name"));
|
||||
headerList.append(QApplication::translate("MainWindow", "Type"));
|
||||
headerList.append(QApplication::translate("MainWindow", "# of points"));
|
||||
headerList.append(QApplication::translate("MainWindow", "Signal"));
|
||||
headerList.append(QApplication::translate("MainWindow", "Security"));
|
||||
headerList.append(QApplication::translate("MainWindow", "Active"));
|
||||
@ -289,10 +271,32 @@ void MainWindow::updateWifiTab()
|
||||
QFont font;
|
||||
font.setBold(scanResults[i].active);
|
||||
font.setItalic(scanResults[i].exists);
|
||||
// type
|
||||
QString type;
|
||||
switch (scanResults[i].type) {
|
||||
case PointType::TwoG:
|
||||
type = QApplication::translate("MainWindow", "2G");
|
||||
break;
|
||||
case PointType::FiveG:
|
||||
type = QApplication::translate("MainWindow", "5G");
|
||||
break;
|
||||
case PointType::TwoAndFiveG:
|
||||
type = QApplication::translate("MainWindow", "2G and 5G");
|
||||
break;
|
||||
case PointType::None:
|
||||
default:
|
||||
type = QApplication::translate("MainWindow", "N\\A");
|
||||
break;
|
||||
}
|
||||
// tooltip
|
||||
QString toolTip = QString("");
|
||||
toolTip += QString("%1: %2\n").arg(QApplication::translate("MainWindow", "MAC")).arg(scanResults[i].macs.join(QString(", ")));
|
||||
toolTip += QString("%1: %2\n").arg(QApplication::translate("MainWindow", "Frequency")).arg(scanResults[i].frequencies.join(QString(", ")));
|
||||
for (int j=0; j<scanResults[i].macs.count(); j++)
|
||||
toolTip += QString("%1 %2: %3 (%4 %5)\n").arg(QApplication::translate("MainWindow", "Point"))
|
||||
.arg(j + 1)
|
||||
.arg(scanResults[i].macs[j])
|
||||
.arg(scanResults[i].frequencies[j])
|
||||
.arg(QApplication::translate("MainWindow", "MHz"));
|
||||
toolTip += QString("%1: %2\n").arg(QApplication::translate("MainWindow", "Type")).arg(type);
|
||||
toolTip += QString("%1: %2\n").arg(QApplication::translate("MainWindow", "Active")).arg(checkStatus(scanResults[i].active));
|
||||
toolTip += QString("%1: %2").arg(QApplication::translate("MainWindow", "Exists")).arg(checkStatus(scanResults[i].exists));
|
||||
// name
|
||||
@ -300,20 +304,28 @@ void MainWindow::updateWifiTab()
|
||||
ui->tableWidget_wifi->item(i, 0)->setTextAlignment(Qt::AlignRight | Qt::AlignVCenter);
|
||||
ui->tableWidget_wifi->item(i, 0)->setToolTip(toolTip);
|
||||
ui->tableWidget_wifi->item(i, 0)->setFont(font);
|
||||
// signal
|
||||
ui->tableWidget_wifi->setItem(i, 1, new QTableWidgetItem(QString::number(scanResults[i].signal)));
|
||||
// type
|
||||
ui->tableWidget_wifi->setItem(i, 1, new QTableWidgetItem(type));
|
||||
ui->tableWidget_wifi->item(i, 1)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
ui->tableWidget_wifi->item(i, 1)->setToolTip(toolTip);
|
||||
// security
|
||||
ui->tableWidget_wifi->setItem(i, 2, new QTableWidgetItem(scanResults[i].security));
|
||||
// count
|
||||
ui->tableWidget_wifi->setItem(i, 2, new QTableWidgetItem(QString::number(scanResults[i].frequencies.count())));
|
||||
ui->tableWidget_wifi->item(i, 2)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
ui->tableWidget_wifi->item(i, 2)->setToolTip(toolTip);
|
||||
// active
|
||||
ui->tableWidget_wifi->setItem(i, 3, new QTableWidgetItem(checkStatus(scanResults[i].active, true)));
|
||||
// signal
|
||||
ui->tableWidget_wifi->setItem(i, 3, new QTableWidgetItem(QString::number(scanResults[i].signal)));
|
||||
ui->tableWidget_wifi->item(i, 3)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
// exists
|
||||
ui->tableWidget_wifi->setItem(i, 4, new QTableWidgetItem(checkStatus(scanResults[i].exists, true)));
|
||||
ui->tableWidget_wifi->item(i, 3)->setToolTip(toolTip);
|
||||
// security
|
||||
ui->tableWidget_wifi->setItem(i, 4, new QTableWidgetItem(scanResults[i].security));
|
||||
ui->tableWidget_wifi->item(i, 4)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
ui->tableWidget_wifi->item(i, 4)->setToolTip(toolTip);
|
||||
// active
|
||||
ui->tableWidget_wifi->setItem(i, 5, new QTableWidgetItem(checkStatus(scanResults[i].active, true)));
|
||||
ui->tableWidget_wifi->item(i, 5)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
// exists
|
||||
ui->tableWidget_wifi->setItem(i, 6, new QTableWidgetItem(checkStatus(scanResults[i].exists, true)));
|
||||
ui->tableWidget_wifi->item(i, 6)->setTextAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
|
||||
}
|
||||
|
||||
ui->tableWidget_wifi->setSortingEnabled(true);
|
||||
@ -596,7 +608,7 @@ void MainWindow::profileTabClear()
|
||||
ui->comboBox_profile->clear();
|
||||
QList<netctlProfileInfo> profiles;
|
||||
if (useHelper)
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("ProfileList"), debug));
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("netctlVerboseProfileList"), debug));
|
||||
else
|
||||
profiles = netctlCommand->getProfileList();
|
||||
for (int i=0; i<profiles.count(); i++)
|
||||
@ -907,17 +919,13 @@ void MainWindow::wifiTabContextualMenu(const QPoint &pos)
|
||||
QAction *startWifi = menu.addAction(QApplication::translate("MainWindow", "Start WiFi"));
|
||||
|
||||
// set text
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 4)->text().isEmpty()) {
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 3)->text().isEmpty()) {
|
||||
startWifi->setText(QApplication::translate("MainWindow", "Stop WiFi"));
|
||||
startWifi->setIcon(QIcon::fromTheme("process-stop"));
|
||||
} else {
|
||||
startWifi->setText(QApplication::translate("MainWindow", "Start WiFi"));
|
||||
startWifi->setIcon(QIcon::fromTheme("system-run"));
|
||||
}
|
||||
} else {
|
||||
if (ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 5)->text().isEmpty()) {
|
||||
startWifi->setText(QApplication::translate("MainWindow", "Start WiFi"));
|
||||
startWifi->setIcon(QIcon::fromTheme("system-run"));
|
||||
|
||||
} else {
|
||||
startWifi->setText(QApplication::translate("MainWindow", "Stop WiFi"));
|
||||
startWifi->setIcon(QIcon::fromTheme("process-stop"));
|
||||
}
|
||||
|
||||
// actions
|
||||
@ -972,7 +980,7 @@ void MainWindow::wifiTabStart()
|
||||
hiddenNetwork = false;
|
||||
QString profile = ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 0)->text();
|
||||
QString profileName = QString("");
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 4)->text().isEmpty()) {
|
||||
if (!ui->tableWidget_wifi->item(ui->tableWidget_wifi->currentItem()->row(), 6)->text().isEmpty()) {
|
||||
if (useHelper) {
|
||||
QList<QVariant> args;
|
||||
args.append(profile);
|
||||
|
@ -228,7 +228,7 @@ void MainWindow::showApi()
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
|
||||
if (QDesktopServices::openUrl(QUrl(QString(DOCS_PATH) + QString("netctl-gui-dbus-api.html"))))
|
||||
if (QDesktopServices::openUrl(QUrl(QString("%1netctl-gui-dbus-api.html").arg(QString(DOCS_PATH)))))
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Done"));
|
||||
else
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Error"));
|
||||
@ -239,7 +239,7 @@ void MainWindow::showLibrary()
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
|
||||
if (QDesktopServices::openUrl(QUrl(QString(DOCS_PATH) + QString("html/index.html"))))
|
||||
if (QDesktopServices::openUrl(QUrl(QString("%1html/index.html").arg(QString(DOCS_PATH)))))
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Done"));
|
||||
else
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Error"));
|
||||
@ -250,7 +250,7 @@ void MainWindow::showSecurityNotes()
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
|
||||
if (QDesktopServices::openUrl(QUrl(QString(DOCS_PATH) + QString("netctl-gui-security-notes.html"))))
|
||||
if (QDesktopServices::openUrl(QUrl(QString("%1netctl-gui-security-notes.html").arg(QString(DOCS_PATH)))))
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Done"));
|
||||
else
|
||||
ui->statusBar->showMessage(QApplication::translate("MainWindow", "Error"));
|
||||
@ -303,7 +303,7 @@ void MainWindow::setTab(int tab)
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
if (debug) qDebug() << PDEBUG << ":" << "Set tab" << tab;
|
||||
|
||||
if (tab > 2) tab = 0;
|
||||
if ((tab > 2) || (tab < 0)) tab = 0;
|
||||
if (tab == ui->tabWidget->currentIndex())
|
||||
updateTabs(tab);
|
||||
else
|
||||
@ -336,6 +336,7 @@ void MainWindow::updateConfiguration(const QMap<QString, QVariant> args)
|
||||
// update translation
|
||||
qApp->removeTranslator(translator);
|
||||
QString language = Language::defineLanguage(configPath, args[QString("options")].toString());
|
||||
if (debug) qDebug() << PDEBUG << ":" << "Language is" << language;
|
||||
qtTranslator->load(QString("qt_%1").arg(language), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
|
||||
qApp->installTranslator(qtTranslator);
|
||||
translator->load(QString(":/translations/%1").arg(language));
|
||||
@ -348,10 +349,7 @@ void MainWindow::updateConfiguration(const QMap<QString, QVariant> args)
|
||||
// tray
|
||||
trayIcon->setVisible(QSystemTrayIcon::isSystemTrayAvailable() && (configuration[QString("SYSTRAY")] == QString("true")));
|
||||
if (trayIcon->isVisible()) {
|
||||
if (configuration[QString("STARTTOTRAY")] == QString("true"))
|
||||
hide();
|
||||
else
|
||||
show();
|
||||
setHidden(configuration[QString("STARTTOTRAY")] == QString("true"));
|
||||
if (args[QString("minimized")].toInt() == 1)
|
||||
show();
|
||||
else if (args[QString("minimized")].toInt() == 2)
|
||||
@ -442,7 +440,7 @@ void MainWindow::connectToUnknownEssid(const QString passwd)
|
||||
if (hiddenNetwork)
|
||||
settings[QString("Hidden")] = QString("yes");
|
||||
|
||||
QString profile = QString("netctl-gui-") + settings[QString("ESSID")];
|
||||
QString profile = QString("netctl-gui-%1").arg(settings[QString("ESSID")]);
|
||||
profile.remove(QChar('"')).remove(QChar('\''));
|
||||
if (useHelper) {
|
||||
QStringList settingsList;
|
||||
|
@ -185,7 +185,7 @@ QStringList MainWindow::printTrayInformation()
|
||||
return printTrayInformation();
|
||||
}
|
||||
netctlAutoStatus = responce[0].toBool();
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("ProfileList"), debug));
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("VerboseProfileList"), debug));
|
||||
if (netctlAutoStatus) {
|
||||
QList<QVariant> args;
|
||||
args.append(current);
|
||||
@ -263,6 +263,8 @@ void MainWindow::closeEvent(QCloseEvent *event)
|
||||
|
||||
if ((QSystemTrayIcon::isSystemTrayAvailable()) && (configuration[QString("SYSTRAY")] == QString("true"))) {
|
||||
hide();
|
||||
trayIcon->showMessage(QApplication::translate("MainWindow", "Information"),
|
||||
QApplication::translate("MainWindow", "Application has been hidden to tray"));
|
||||
event->ignore();
|
||||
} else
|
||||
closeMainWindow();
|
||||
@ -287,15 +289,14 @@ bool MainWindow::checkExternalApps(const QString apps = QString("all"))
|
||||
cmd.append(configuration[QString("NETCTLAUTO_PATH")]);
|
||||
cmd.append(configuration[QString("SUDO_PATH")]);
|
||||
}
|
||||
if ((apps == QString("sudo")) || (apps == QString("all"))) {
|
||||
if ((apps == QString("sudo")) || (apps == QString("wpasup")) || (apps == QString("all"))) {
|
||||
cmd.append(configuration[QString("SUDO_PATH")]);
|
||||
}
|
||||
if ((apps == QString("systemctl")) || (apps == QString("all"))) {
|
||||
cmd.append(configuration[QString("SYSTEMCTL_PATH")]);
|
||||
cmd.append(configuration[QString("SUDO_PATH")]);
|
||||
}
|
||||
if ((apps == QString("wpasup")) || (apps == QString("all"))) {
|
||||
cmd.append(configuration[QString("SUDO_PATH")]);
|
||||
if ((apps == QString("wpasup")) || (apps == QString("wpasup-only")) || (apps == QString("all"))) {
|
||||
cmd.append(configuration[QString("WPACLI_PATH")]);
|
||||
cmd.append(configuration[QString("WPASUP_PATH")]);
|
||||
}
|
||||
@ -417,8 +418,8 @@ void MainWindow::createObjects()
|
||||
ui->setupUi(this);
|
||||
ui->tableWidget_main->setColumnHidden(2, true);
|
||||
ui->tableWidget_main->setColumnHidden(3, true);
|
||||
ui->tableWidget_wifi->setColumnHidden(3, true);
|
||||
ui->tableWidget_wifi->setColumnHidden(4, true);
|
||||
ui->tableWidget_wifi->setColumnHidden(5, true);
|
||||
ui->tableWidget_wifi->setColumnHidden(6, true);
|
||||
aboutWin = new AboutWindow(this, debug);
|
||||
netctlAutoWin = new NetctlAutoWindow(this, debug, configuration);
|
||||
settingsWin = new SettingsWindow(this, debug, configPath);
|
||||
@ -506,6 +507,8 @@ void MainWindow::createToolBars()
|
||||
toolBarActions[QString("profileRemove")] = actionToolBar->addAction(QIcon::fromTheme(QString("edit-delete")),
|
||||
QApplication::translate("MainWindow", "Remove"),
|
||||
this, SLOT(profileTabRemoveProfile()));
|
||||
|
||||
setMenuActionsShown(false);
|
||||
ui->centralLayout->insertWidget(0, actionToolBar);
|
||||
}
|
||||
|
||||
@ -559,7 +562,7 @@ QMap<QString, QString> MainWindow::parseOptions(const QString options)
|
||||
options.split(QChar(','))[i].split(QChar('='))[1];
|
||||
}
|
||||
for (int i=0; i<settings.keys().count(); i++)
|
||||
if (debug) qDebug() << PDEBUG << ":" << settings.keys()[i] + QString("=") + settings[settings.keys()[i]];
|
||||
if (debug) qDebug() << PDEBUG << ":" << QString("%1=%2").arg(settings.keys()[i]).arg(settings[settings.keys()[i]]);
|
||||
|
||||
return settings;
|
||||
}
|
||||
|
@ -218,7 +218,7 @@
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="columnCount">
|
||||
<number>5</number>
|
||||
<number>7</number>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
@ -234,6 +234,22 @@
|
||||
<set>AlignHCenter|AlignVCenter|AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Type</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignVCenter|AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string># of points</string>
|
||||
</property>
|
||||
<property name="textAlignment">
|
||||
<set>AlignHCenter|AlignVCenter|AlignCenter</set>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Signal</string>
|
||||
@ -289,7 +305,9 @@
|
||||
</widget>
|
||||
<action name="actionSecurity">
|
||||
<property name="icon">
|
||||
<iconset theme="security-medium"/>
|
||||
<iconset theme="security-medium">
|
||||
<normaloff/>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Security</string>
|
||||
@ -307,7 +325,9 @@
|
||||
</action>
|
||||
<action name="actionReport_a_bug">
|
||||
<property name="icon">
|
||||
<iconset theme="tools-report-bug"/>
|
||||
<iconset theme="tools-report-bug">
|
||||
<normaloff/>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Report a bug</string>
|
||||
@ -315,7 +335,9 @@
|
||||
</action>
|
||||
<action name="actionAbout">
|
||||
<property name="icon">
|
||||
<iconset theme="help-about"/>
|
||||
<iconset theme="help-about">
|
||||
<normaloff/>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>About</string>
|
||||
@ -323,7 +345,9 @@
|
||||
</action>
|
||||
<action name="actionQuit">
|
||||
<property name="icon">
|
||||
<iconset theme="application-exit"/>
|
||||
<iconset theme="application-exit">
|
||||
<normaloff/>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Quit</string>
|
||||
@ -334,7 +358,9 @@
|
||||
</action>
|
||||
<action name="actionSettings">
|
||||
<property name="icon">
|
||||
<iconset theme="configure"/>
|
||||
<iconset theme="configure">
|
||||
<normaloff/>
|
||||
</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Settings</string>
|
||||
|
@ -226,7 +226,7 @@ void NetctlAutoWindow::netctlAutoUpdateTable()
|
||||
}
|
||||
QList<netctlProfileInfo> profiles;
|
||||
if (useHelper)
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("ProfileList"), debug));
|
||||
profiles = parseOutputNetctl(sendRequestToLib(QString("VerboseProfileList"), debug));
|
||||
else
|
||||
profiles = netctlCommand->getProfileListFromNetctlAuto();
|
||||
|
||||
|
@ -397,11 +397,12 @@ QMap<QString, QString> SettingsWindow::getDefault()
|
||||
QMap<QString, QString> SettingsWindow::getSettings(QString fileName)
|
||||
{
|
||||
if (debug) qDebug() << PDEBUG;
|
||||
if (fileName == QString("")) fileName = file;
|
||||
if (fileName.isEmpty()) fileName = file;
|
||||
|
||||
QMap<QString, QString> config;
|
||||
QSettings settings(fileName, QSettings::IniFormat);
|
||||
|
||||
config[QString("LANGUAGE")] = Language::defineLanguage(fileName, QString());
|
||||
settings.beginGroup(QString("Common"));
|
||||
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString("en")).toString();
|
||||
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString("true")).toString();
|
||||
|
@ -112,7 +112,7 @@ void TrayIcon::updateMenu()
|
||||
}
|
||||
QStringList profiles;
|
||||
for (int i=0; i<currentProfiles.count(); i++)
|
||||
profiles.append(currentProfiles[i] + QString(" (") + status[i] + QString(")"));
|
||||
profiles.append(QString("%1 (%2)").arg(currentProfiles[i]).arg(status[i]));
|
||||
contextMenu[QString("title")]->setText(profiles.join(QString(" | ")));
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user