mirror of
https://github.com/arcan1s/netctl-gui.git
synced 2025-04-24 15:37:23 +00:00
implement autoupdate feature
fix bug with invalid profile path using by external editor
This commit is contained in:
parent
e26da85b5f
commit
c3aa3f0c8f
@ -1,3 +1,7 @@
|
|||||||
|
* gui
|
||||||
|
+ implement autoupdate feature
|
||||||
|
- fix invalid profile path for the external editor
|
||||||
|
|
||||||
Ver.1.4.5
|
Ver.1.4.5
|
||||||
---------
|
---------
|
||||||
* plasmoid
|
* plasmoid
|
||||||
|
@ -62,7 +62,7 @@ unsigned int getUidFromSession(const int type = 0)
|
|||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
QMap<QString, QVariant> args = getArgs();
|
QVariantMap args = getArgs();
|
||||||
// reading
|
// reading
|
||||||
for (int i=1; i<argc; i++) {
|
for (int i=1; i<argc; i++) {
|
||||||
if (QString(argv[i]) == QString("--detached")) {
|
if (QString(argv[i]) == QString("--detached")) {
|
||||||
|
@ -52,6 +52,10 @@ MainWidget::MainWidget(QWidget *parent, const QMap<QString, QString> settings, c
|
|||||||
actionMenu->addAction(ui->actionEnable);
|
actionMenu->addAction(ui->actionEnable);
|
||||||
ui->actionStart->setMenu(actionMenu);
|
ui->actionStart->setMenu(actionMenu);
|
||||||
|
|
||||||
|
// auto update
|
||||||
|
timer.setSingleShot(true);
|
||||||
|
timer.setInterval(configuration[QString("MAINUPDATE")].toInt() * 1000);
|
||||||
|
|
||||||
createActions();
|
createActions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -92,6 +96,8 @@ void MainWidget::update()
|
|||||||
|
|
||||||
updateMainTab();
|
updateMainTab();
|
||||||
updateMenuMain();
|
updateMenuMain();
|
||||||
|
|
||||||
|
if (timer.interval() != 0) return timer.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -411,6 +417,7 @@ void MainWidget::createActions()
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
// menu actions
|
// menu actions
|
||||||
|
connect(&timer, SIGNAL(timeout()), this, SLOT(update()));
|
||||||
connect(ui->actionEnable, SIGNAL(triggered(bool)), this, SLOT(mainTabEnableProfile()));
|
connect(ui->actionEnable, SIGNAL(triggered(bool)), this, SLOT(mainTabEnableProfile()));
|
||||||
connect(ui->actionEdit, SIGNAL(triggered(bool)), this, SLOT(mainTabEditProfile()));
|
connect(ui->actionEdit, SIGNAL(triggered(bool)), this, SLOT(mainTabEditProfile()));
|
||||||
connect(ui->actionRefresh, SIGNAL(triggered(bool)), this, SLOT(updateMainTab()));
|
connect(ui->actionRefresh, SIGNAL(triggered(bool)), this, SLOT(updateMainTab()));
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include <QMainWindow>
|
#include <QMainWindow>
|
||||||
#include <QTableWidgetItem>
|
#include <QTableWidgetItem>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
#include <netctlgui/netctlgui.h>
|
#include <netctlgui/netctlgui.h>
|
||||||
|
|
||||||
@ -68,6 +69,7 @@ private:
|
|||||||
void createActions();
|
void createActions();
|
||||||
QString configPath;
|
QString configPath;
|
||||||
bool debug = false;
|
bool debug = false;
|
||||||
|
QTimer timer;
|
||||||
bool useHelper = true;
|
bool useHelper = true;
|
||||||
// configuration
|
// configuration
|
||||||
QMap<QString, QString> configuration;
|
QMap<QString, QString> configuration;
|
||||||
|
@ -51,10 +51,8 @@
|
|||||||
#include "wifimenuwidget.h"
|
#include "wifimenuwidget.h"
|
||||||
|
|
||||||
|
|
||||||
MainWindow::MainWindow(QWidget *parent,
|
MainWindow::MainWindow(QWidget *parent, const QVariantMap args,
|
||||||
const QMap<QString, QVariant> args,
|
QTranslator *qtAppTranslator, QTranslator *appTranslator)
|
||||||
QTranslator *qtAppTranslator,
|
|
||||||
QTranslator *appTranslator)
|
|
||||||
: QMainWindow(parent),
|
: QMainWindow(parent),
|
||||||
configPath(args[QString("config")].toString()),
|
configPath(args[QString("config")].toString()),
|
||||||
debug(args[QString("debug")].toBool()),
|
debug(args[QString("debug")].toBool()),
|
||||||
@ -369,7 +367,7 @@ void MainWindow::storeToolBars()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void MainWindow::updateConfiguration(const QMap<QString, QVariant> args)
|
void MainWindow::updateConfiguration(const QVariantMap args)
|
||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class MainWindow : public QMainWindow
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
explicit MainWindow(QWidget *parent = 0,
|
explicit MainWindow(QWidget *parent = 0,
|
||||||
const QMap<QString, QVariant> args = QMap<QString, QVariant>(),
|
const QVariantMap args = QVariantMap(),
|
||||||
QTranslator *qtAppTranslator = 0,
|
QTranslator *qtAppTranslator = 0,
|
||||||
QTranslator *appTranslator = 0);
|
QTranslator *appTranslator = 0);
|
||||||
~MainWindow();
|
~MainWindow();
|
||||||
@ -82,7 +82,7 @@ public slots:
|
|||||||
void setTab(int tab);
|
void setTab(int tab);
|
||||||
void showMessage(const bool status);
|
void showMessage(const bool status);
|
||||||
void storeToolBars();
|
void storeToolBars();
|
||||||
void updateConfiguration(const QMap<QString, QVariant> args = QMap<QString, QVariant>());
|
void updateConfiguration(const QVariantMap args = QVariantMap());
|
||||||
void updateToolBarState(const Qt::ToolBarArea area = Qt::TopToolBarArea);
|
void updateToolBarState(const Qt::ToolBarArea area = Qt::TopToolBarArea);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
@ -29,9 +29,9 @@ QString errorMessage()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QMap<QString, QVariant> getArgs()
|
QVariantMap getArgs()
|
||||||
{
|
{
|
||||||
QMap<QString, QVariant> args;
|
QVariantMap args;
|
||||||
// windows
|
// windows
|
||||||
args[QString("detached")] = false;
|
args[QString("detached")] = false;
|
||||||
args[QString("minimized")] = static_cast<int>(0);
|
args[QString("minimized")] = static_cast<int>(0);
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
|
|
||||||
QString errorMessage();
|
QString errorMessage();
|
||||||
QMap<QString, QVariant> getArgs();
|
QVariantMap getArgs();
|
||||||
QString helpMessage();
|
QString helpMessage();
|
||||||
QString infoMessage();
|
QString infoMessage();
|
||||||
QString versionMessage();
|
QString versionMessage();
|
||||||
|
@ -425,7 +425,9 @@ void NewProfileWidget::profileTabOpenInEditor()
|
|||||||
return mainWindow->emitNeedToBeConfigured();
|
return mainWindow->emitNeedToBeConfigured();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString directory = QDir(configuration[QString("PROFILE_DIR")]).absolutePath();
|
||||||
QString profile = QFileInfo(ui->comboBox_profile->currentText()).fileName();
|
QString profile = QFileInfo(ui->comboBox_profile->currentText()).fileName();
|
||||||
|
profile = QString("%1/%2").arg(directory).arg(profile);
|
||||||
QString cmd = QString("%1 %2 %3").arg(configuration[QString("SUDO_PATH")])
|
QString cmd = QString("%1 %2 %3").arg(configuration[QString("SUDO_PATH")])
|
||||||
.arg(configuration[QString("EDITOR_PATH")])
|
.arg(configuration[QString("EDITOR_PATH")])
|
||||||
.arg(profile);
|
.arg(profile);
|
||||||
|
@ -247,6 +247,8 @@ void SettingsWindow::saveSettings()
|
|||||||
|
|
||||||
settings.beginGroup(QString("Common"));
|
settings.beginGroup(QString("Common"));
|
||||||
settings.setValue(QString("LANGUAGE"), config[QString("LANGUAGE")]);
|
settings.setValue(QString("LANGUAGE"), config[QString("LANGUAGE")]);
|
||||||
|
settings.setValue(QString("MAINUPDATE"), config[QString("MAINUPDATE")]);
|
||||||
|
settings.setValue(QString("WIFIUPDATE"), config[QString("WIFIUPDATE")]);
|
||||||
settings.setValue(QString("SYSTRAY"), config[QString("SYSTRAY")]);
|
settings.setValue(QString("SYSTRAY"), config[QString("SYSTRAY")]);
|
||||||
settings.setValue(QString("CLOSETOTRAY"), config[QString("CLOSETOTRAY")]);
|
settings.setValue(QString("CLOSETOTRAY"), config[QString("CLOSETOTRAY")]);
|
||||||
settings.setValue(QString("STARTTOTRAY"), config[QString("STARTTOTRAY")]);
|
settings.setValue(QString("STARTTOTRAY"), config[QString("STARTTOTRAY")]);
|
||||||
@ -458,6 +460,7 @@ QMap<QString, QString> SettingsWindow::readSettings()
|
|||||||
config[QString("HELPER_SERVICE")] = ui->lineEdit_helperService->text();
|
config[QString("HELPER_SERVICE")] = ui->lineEdit_helperService->text();
|
||||||
config[QString("IFACE_DIR")] = ui->lineEdit_interfacesDir->text();
|
config[QString("IFACE_DIR")] = ui->lineEdit_interfacesDir->text();
|
||||||
config[QString("LANGUAGE")] = ui->comboBox_language->currentText();
|
config[QString("LANGUAGE")] = ui->comboBox_language->currentText();
|
||||||
|
config[QString("MAINUPDATE")] = QString::number(ui->spinBox_mainAutoUpdate->value());
|
||||||
config[QString("MAIN_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_mainToolbar->currentIndex()));
|
config[QString("MAIN_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_mainToolbar->currentIndex()));
|
||||||
config[QString("NETCTL_PATH")] = ui->lineEdit_netctlPath->text();
|
config[QString("NETCTL_PATH")] = ui->lineEdit_netctlPath->text();
|
||||||
config[QString("NETCTL_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_netctlToolbar->currentIndex()));
|
config[QString("NETCTL_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_netctlToolbar->currentIndex()));
|
||||||
@ -487,6 +490,7 @@ QMap<QString, QString> SettingsWindow::readSettings()
|
|||||||
config[QString("USE_HELPER")] = QString("true");
|
config[QString("USE_HELPER")] = QString("true");
|
||||||
else
|
else
|
||||||
config[QString("USE_HELPER")] = QString("false");
|
config[QString("USE_HELPER")] = QString("false");
|
||||||
|
config[QString("WIFIUPDATE")] = QString::number(ui->spinBox_wifiAutoUpdate->value());
|
||||||
config[QString("WIFI_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_wifiToolbar->currentIndex()));
|
config[QString("WIFI_TOOLBAR")] = QString::number(indexToToolBarPosition(ui->comboBox_wifiToolbar->currentIndex()));
|
||||||
config[QString("WPACLI_PATH")] = ui->lineEdit_wpaCliPath->text();
|
config[QString("WPACLI_PATH")] = ui->lineEdit_wpaCliPath->text();
|
||||||
config[QString("WPASUP_PATH")] = ui->lineEdit_wpaSupPath->text();
|
config[QString("WPASUP_PATH")] = ui->lineEdit_wpaSupPath->text();
|
||||||
@ -523,6 +527,7 @@ void SettingsWindow::setSettings(const QMap<QString, QString> config)
|
|||||||
ui->lineEdit_interfacesDir->setText(config[QString("IFACE_DIR")]);
|
ui->lineEdit_interfacesDir->setText(config[QString("IFACE_DIR")]);
|
||||||
int index = ui->comboBox_language->findText(config[QString("LANGUAGE")]);
|
int index = ui->comboBox_language->findText(config[QString("LANGUAGE")]);
|
||||||
ui->comboBox_language->setCurrentIndex(index);
|
ui->comboBox_language->setCurrentIndex(index);
|
||||||
|
ui->spinBox_mainAutoUpdate->setValue(config[QString("MAINUPDATE")].toInt());
|
||||||
index = indexByToolBarPosition(static_cast<Qt::ToolBarArea>(config[QString("MAIN_TOOLBAR")].toInt()));
|
index = indexByToolBarPosition(static_cast<Qt::ToolBarArea>(config[QString("MAIN_TOOLBAR")].toInt()));
|
||||||
ui->comboBox_mainToolbar->setCurrentIndex(index);
|
ui->comboBox_mainToolbar->setCurrentIndex(index);
|
||||||
ui->lineEdit_netctlPath->setText(config[QString("NETCTL_PATH")]);
|
ui->lineEdit_netctlPath->setText(config[QString("NETCTL_PATH")]);
|
||||||
@ -556,6 +561,7 @@ void SettingsWindow::setSettings(const QMap<QString, QString> config)
|
|||||||
ui->checkBox_useHelper->setCheckState(Qt::Checked);
|
ui->checkBox_useHelper->setCheckState(Qt::Checked);
|
||||||
else
|
else
|
||||||
ui->checkBox_useHelper->setCheckState(Qt::Unchecked);
|
ui->checkBox_useHelper->setCheckState(Qt::Unchecked);
|
||||||
|
ui->spinBox_wifiAutoUpdate->setValue(config[QString("WIFIUPDATE")].toInt());
|
||||||
index = indexByToolBarPosition(static_cast<Qt::ToolBarArea>(config[QString("WIFI_TOOLBAR")].toInt()));
|
index = indexByToolBarPosition(static_cast<Qt::ToolBarArea>(config[QString("WIFI_TOOLBAR")].toInt()));
|
||||||
ui->comboBox_wifiToolbar->setCurrentIndex(index);
|
ui->comboBox_wifiToolbar->setCurrentIndex(index);
|
||||||
ui->lineEdit_wpaCliPath->setText(config[QString("WPACLI_PATH")]);
|
ui->lineEdit_wpaCliPath->setText(config[QString("WPACLI_PATH")]);
|
||||||
@ -586,6 +592,8 @@ QMap<QString, QString> SettingsWindow::getSettings(QString fileName)
|
|||||||
config[QString("LANGUAGE")] = Language::defineLanguage(fileName, QString());
|
config[QString("LANGUAGE")] = Language::defineLanguage(fileName, QString());
|
||||||
settings.beginGroup(QString("Common"));
|
settings.beginGroup(QString("Common"));
|
||||||
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString("en")).toString();
|
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString("en")).toString();
|
||||||
|
config[QString("MAINUPDATE")] = settings.value(QString("MAINUPDATE"), QString("0")).toString();
|
||||||
|
config[QString("WIFIUPDATE")] = settings.value(QString("WIFIUPDATE"), QString("0")).toString();
|
||||||
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString("true")).toString();
|
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString("true")).toString();
|
||||||
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString("true")).toString();
|
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString("true")).toString();
|
||||||
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString("false")).toString();
|
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString("false")).toString();
|
||||||
|
@ -190,6 +190,66 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="layout_mainAutoUpdate">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_mainAutoUpdate">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||||
|
<horstretch>1</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Main tab autoupdate, sec</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QSpinBox" name="spinBox_mainAutoUpdate">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="layout_wifiAutoUpdate">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_wifiAutoUpdate">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||||
|
<horstretch>1</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>WiFi tab autoupdate, sec</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QSpinBox" name="spinBox_wifiAutoUpdate">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="layout_enableTray">
|
<layout class="QHBoxLayout" name="layout_enableTray">
|
||||||
<item>
|
<item>
|
||||||
@ -642,8 +702,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>436</width>
|
<width>542</width>
|
||||||
<height>173</height>
|
<height>330</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
@ -898,8 +958,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>436</width>
|
<width>542</width>
|
||||||
<height>45</height>
|
<height>330</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_9">
|
<layout class="QVBoxLayout" name="verticalLayout_9">
|
||||||
@ -983,8 +1043,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>239</width>
|
<width>542</width>
|
||||||
<height>194</height>
|
<height>330</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_10">
|
<layout class="QVBoxLayout" name="verticalLayout_10">
|
||||||
|
@ -47,6 +47,10 @@ WiFiMenuWidget::WiFiMenuWidget(QWidget *parent, const QMap<QString, QString> set
|
|||||||
ui->tableWidget_wifi->setColumnHidden(6, true);
|
ui->tableWidget_wifi->setColumnHidden(6, true);
|
||||||
updateToolBarState(static_cast<Qt::ToolBarArea>(configuration[QString("WIFI_TOOLBAR")].toInt()));
|
updateToolBarState(static_cast<Qt::ToolBarArea>(configuration[QString("WIFI_TOOLBAR")].toInt()));
|
||||||
|
|
||||||
|
// auto update
|
||||||
|
timer.setSingleShot(true);
|
||||||
|
timer.setInterval(configuration[QString("WIFIUPDATE")].toInt() * 1000);
|
||||||
|
|
||||||
createActions();
|
createActions();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,6 +77,8 @@ void WiFiMenuWidget::update()
|
|||||||
|
|
||||||
updateWifiTab();
|
updateWifiTab();
|
||||||
updateMenuWifi();
|
updateMenuWifi();
|
||||||
|
|
||||||
|
if (timer.interval() != 0) return timer.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -430,6 +436,7 @@ void WiFiMenuWidget::createActions()
|
|||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
// menu actions
|
// menu actions
|
||||||
|
connect(&timer, SIGNAL(timeout()), this, SLOT(update()));
|
||||||
connect(ui->actionFunc, SIGNAL(triggered(bool)), this, SLOT(wifiTabShowInfo()));
|
connect(ui->actionFunc, SIGNAL(triggered(bool)), this, SLOT(wifiTabShowInfo()));
|
||||||
connect(ui->actionRefresh, SIGNAL(triggered(bool)), this, SLOT(updateWifiTab()));
|
connect(ui->actionRefresh, SIGNAL(triggered(bool)), this, SLOT(updateWifiTab()));
|
||||||
connect(ui->actionStart, SIGNAL(triggered(bool)), this, SLOT(wifiTabStart()));
|
connect(ui->actionStart, SIGNAL(triggered(bool)), this, SLOT(wifiTabStart()));
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
#include <QMainWindow>
|
#include <QMainWindow>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
#include <netctlgui/netctlgui.h>
|
#include <netctlgui/netctlgui.h>
|
||||||
|
|
||||||
@ -70,6 +71,7 @@ private:
|
|||||||
void createActions();
|
void createActions();
|
||||||
bool debug = false;
|
bool debug = false;
|
||||||
bool hiddenNetwork = false;
|
bool hiddenNetwork = false;
|
||||||
|
QTimer timer;
|
||||||
bool useHelper = true;
|
bool useHelper = true;
|
||||||
// configuration
|
// configuration
|
||||||
QMap<QString, QString> configuration;
|
QMap<QString, QString> configuration;
|
||||||
|
@ -6,6 +6,12 @@
|
|||||||
[Common]
|
[Common]
|
||||||
# application language
|
# application language
|
||||||
LANGUAGE=en
|
LANGUAGE=en
|
||||||
|
# auto update interval for main tab in seconds
|
||||||
|
# 0 means there is no updates
|
||||||
|
MAINUPDATE=0
|
||||||
|
# auto update interval for wifi tab in seconds
|
||||||
|
# 0 means there is no updates
|
||||||
|
WIFIUPDATE=0
|
||||||
# create system tray icon.
|
# create system tray icon.
|
||||||
# This option is not recognized by netctlgui-helper
|
# This option is not recognized by netctlgui-helper
|
||||||
SYSTRAY=true
|
SYSTRAY=true
|
||||||
|
@ -48,6 +48,8 @@ service name. This option is not recognized by
|
|||||||
path to directory which contains interface information
|
path to directory which contains interface information
|
||||||
.IP "LANGUAGE=en"
|
.IP "LANGUAGE=en"
|
||||||
application language
|
application language
|
||||||
|
.IP "MAINUPDATE=0"
|
||||||
|
main tab autoupdate interval in seconds. 0 is disable autoupdate
|
||||||
.IP "NETCTL_PATH=/usr/bin/netctl"
|
.IP "NETCTL_PATH=/usr/bin/netctl"
|
||||||
path to
|
path to
|
||||||
.BR netctl (1)
|
.BR netctl (1)
|
||||||
@ -96,6 +98,8 @@ use
|
|||||||
.BR netctlgui-helper (1)
|
.BR netctlgui-helper (1)
|
||||||
if it is available. This option is not recognized by
|
if it is available. This option is not recognized by
|
||||||
.BR netctlgui-helper (1)
|
.BR netctlgui-helper (1)
|
||||||
|
.IP "WIFIUPDATE=0"
|
||||||
|
WiFi tab autoupdate interval in seconds. 0 is disable autoupdate
|
||||||
.IP "WPACLI_PATH=/usr/bin/wpa_cli"
|
.IP "WPACLI_PATH=/usr/bin/wpa_cli"
|
||||||
path to
|
path to
|
||||||
.BR wpa_cli (8)
|
.BR wpa_cli (8)
|
||||||
|
@ -112,7 +112,7 @@ QString ControlAdaptor::SecurityDocs()
|
|||||||
|
|
||||||
bool ControlAdaptor::SelfDestruct(const QString approve)
|
bool ControlAdaptor::SelfDestruct(const QString approve)
|
||||||
{
|
{
|
||||||
if (approve == QString("Yes, please")) return SelfDestruct(approve);
|
if (approve == QString("Yes please")) return SelfDestruct(approve);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -50,7 +50,7 @@ bool existingSessionOperation(const QString operation)
|
|||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
QMap<QString, QVariant> args = getArgs();
|
QVariantMap args = getArgs();
|
||||||
// reading
|
// reading
|
||||||
for (int i=1; i<argc; i++) {
|
for (int i=1; i<argc; i++) {
|
||||||
if ((QString(argv[i]) == QString("-c")) || (QString(argv[i]) == QString("--config"))) {
|
if ((QString(argv[i]) == QString("-c")) || (QString(argv[i]) == QString("--config"))) {
|
||||||
|
@ -29,9 +29,9 @@ QString errorMessage()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QMap<QString, QVariant> getArgs()
|
QVariantMap getArgs()
|
||||||
{
|
{
|
||||||
QMap<QString, QVariant> args;
|
QVariantMap args;
|
||||||
args[QString("config")] = QString("%1/.config/netctl-gui.conf").arg(QDir::homePath());
|
args[QString("config")] = QString("%1/.config/netctl-gui.conf").arg(QDir::homePath());
|
||||||
args[QString("debug")] = false;
|
args[QString("debug")] = false;
|
||||||
args[QString("nodaemon")] = false;
|
args[QString("nodaemon")] = false;
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
|
|
||||||
QString errorMessage();
|
QString errorMessage();
|
||||||
QMap<QString, QVariant> getArgs();
|
QVariantMap getArgs();
|
||||||
QString helpMessage();
|
QString helpMessage();
|
||||||
QString infoMessage();
|
QString infoMessage();
|
||||||
QString versionMessage();
|
QString versionMessage();
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
#include "version.h"
|
#include "version.h"
|
||||||
|
|
||||||
|
|
||||||
NetctlHelper::NetctlHelper(QObject *parent, QMap<QString, QVariant> args)
|
NetctlHelper::NetctlHelper(QObject *parent, QVariantMap args)
|
||||||
: QObject(parent),
|
: QObject(parent),
|
||||||
configPath(args[QString("config")].toString()),
|
configPath(args[QString("config")].toString()),
|
||||||
debug(args[QString("debug")].toBool()),
|
debug(args[QString("debug")].toBool()),
|
||||||
|
@ -29,7 +29,7 @@ class NetctlHelper : public QObject
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
explicit NetctlHelper(QObject *parent = 0,
|
explicit NetctlHelper(QObject *parent = 0,
|
||||||
QMap<QString, QVariant> args = QMap<QString, QVariant>());
|
QVariantMap args = QVariantMap());
|
||||||
~NetctlHelper();
|
~NetctlHelper();
|
||||||
QStringList printSettings();
|
QStringList printSettings();
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ X-Plasma-RemoteLocation=
|
|||||||
X-KDE-PluginInfo-Author=Evgeniy Alekseev
|
X-KDE-PluginInfo-Author=Evgeniy Alekseev
|
||||||
X-KDE-PluginInfo-Email=esalexeev@gmail.com
|
X-KDE-PluginInfo-Email=esalexeev@gmail.com
|
||||||
X-KDE-PluginInfo-Name=org.kde.plasma.netctl
|
X-KDE-PluginInfo-Name=org.kde.plasma.netctl
|
||||||
X-KDE-PluginInfo-Version=1.4.4
|
X-KDE-PluginInfo-Version=1.4.5
|
||||||
X-KDE-PluginInfo-Website=http://arcanis.name/projects/netctl-gui
|
X-KDE-PluginInfo-Website=http://arcanis.name/projects/netctl-gui
|
||||||
X-KDE-PluginInfo-Category=Network
|
X-KDE-PluginInfo-Category=Network
|
||||||
X-KDE-PluginInfo-Depends=
|
X-KDE-PluginInfo-Depends=
|
||||||
|
@ -148,7 +148,7 @@ void NetctlAdds::runCmd(const QString cmd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void NetctlAdds::setDataBySource(const QString sourceName, const QMap<QString, QVariant> data)
|
void NetctlAdds::setDataBySource(const QString sourceName, const QVariantMap data)
|
||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Source" << sourceName;
|
if (debug) qDebug() << PDEBUG << ":" << "Source" << sourceName;
|
||||||
@ -310,11 +310,11 @@ void NetctlAdds::switchToProfileSlot(const bool useHelper, const QString cmd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QMap<QString, QVariant> NetctlAdds::readDataEngineConfiguration()
|
QVariantMap NetctlAdds::readDataEngineConfiguration()
|
||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
QMap<QString, QVariant> configuration;
|
QVariantMap configuration;
|
||||||
QString fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("plasma-dataengine-netctl.conf"));
|
QString fileName = QStandardPaths::locate(QStandardPaths::ConfigLocation, QString("plasma-dataengine-netctl.conf"));
|
||||||
|
|
||||||
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName;
|
if (debug) qDebug() << PDEBUG << ":" << "Configuration file" << fileName;
|
||||||
@ -336,7 +336,7 @@ QMap<QString, QVariant> NetctlAdds::readDataEngineConfiguration()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void NetctlAdds::writeDataEngineConfiguration(const QMap<QString, QVariant> configuration)
|
void NetctlAdds::writeDataEngineConfiguration(const QVariantMap configuration)
|
||||||
{
|
{
|
||||||
if (debug) qDebug() << PDEBUG;
|
if (debug) qDebug() << PDEBUG;
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ public:
|
|||||||
Q_INVOKABLE bool isDebugEnabled();
|
Q_INVOKABLE bool isDebugEnabled();
|
||||||
Q_INVOKABLE QString parsePattern(const QString pattern);
|
Q_INVOKABLE QString parsePattern(const QString pattern);
|
||||||
Q_INVOKABLE void runCmd(const QString cmd);
|
Q_INVOKABLE void runCmd(const QString cmd);
|
||||||
Q_INVOKABLE void setDataBySource(const QString sourceName, const QMap<QString, QVariant> data);
|
Q_INVOKABLE void setDataBySource(const QString sourceName, const QVariantMap data);
|
||||||
Q_INVOKABLE static void sendNotification(const QString eventId, const QString message);
|
Q_INVOKABLE static void sendNotification(const QString eventId, const QString message);
|
||||||
Q_INVOKABLE QString valueByKey(const QString key);
|
Q_INVOKABLE QString valueByKey(const QString key);
|
||||||
// context menu
|
// context menu
|
||||||
@ -59,8 +59,8 @@ public:
|
|||||||
Q_INVOKABLE void switchToProfileSlot(const bool useHelper = true,
|
Q_INVOKABLE void switchToProfileSlot(const bool useHelper = true,
|
||||||
const QString cmd = QString("/usr/bin/netctl-auto"));
|
const QString cmd = QString("/usr/bin/netctl-auto"));
|
||||||
// dataengine
|
// dataengine
|
||||||
Q_INVOKABLE QMap<QString, QVariant> readDataEngineConfiguration();
|
Q_INVOKABLE QVariantMap readDataEngineConfiguration();
|
||||||
Q_INVOKABLE void writeDataEngineConfiguration(const QMap<QString, QVariant> configuration);
|
Q_INVOKABLE void writeDataEngineConfiguration(const QVariantMap configuration);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void needToBeUpdated();
|
void needToBeUpdated();
|
||||||
|
Loading…
Reference in New Issue
Block a user