+ 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:
arcan1s
2015-03-09 08:29:26 +03:00
parent d94aa4ebf7
commit 362a11f0bc
29 changed files with 363 additions and 176 deletions

View File

@ -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>

View File

@ -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);
}

View File

@ -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();
}

View File

@ -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

View File

@ -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);

View File

@ -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;

View File

@ -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;
}

View File

@ -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>

View File

@ -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();

View File

@ -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();

View File

@ -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(" | ")));
}