diff --git a/sources/gui/src/main.cpp b/sources/gui/src/main.cpp index 4b1eae3..d6a4f3c 100644 --- a/sources/gui/src/main.cpp +++ b/sources/gui/src/main.cpp @@ -49,11 +49,15 @@ bool restoreExistSession() int main(int argc, char *argv[]) { // detach from console + bool debugFlag = false; + bool daemonFlag = false; for (int i=0; i args = QMap(), QTranslator *appTranslator = 0); ~MainWindow(); - QString getInformation(); - QStringList getSettings(); + QString printInformation(); + QStringList printSettings(); bool isHelperActive(); protected: diff --git a/sources/gui/src/netctlguiadaptor.cpp b/sources/gui/src/netctlguiadaptor.cpp index 3d80bcd..cb4ea77 100644 --- a/sources/gui/src/netctlguiadaptor.cpp +++ b/sources/gui/src/netctlguiadaptor.cpp @@ -41,7 +41,7 @@ bool NetctlGuiAdaptor::Close() QString NetctlGuiAdaptor::Information() { - return mainWindow->getInformation(); + return mainWindow->printInformation(); } @@ -54,7 +54,7 @@ bool NetctlGuiAdaptor::Restore() QStringList NetctlGuiAdaptor::Settings() { - return mainWindow->getSettings(); + return mainWindow->printSettings(); } diff --git a/sources/gui/src/trayicon.cpp b/sources/gui/src/trayicon.cpp index b2ded94..7b11730 100644 --- a/sources/gui/src/trayicon.cpp +++ b/sources/gui/src/trayicon.cpp @@ -52,7 +52,7 @@ int TrayIcon::showInformation() if (supportsMessages()) { QString title = QApplication::translate("TrayIcon", "netctl status"); - QString message = mainWindow->getInformation(); + QString message = mainWindow->printInformation(); showMessage(title, message, QSystemTrayIcon::Information); } else @@ -66,7 +66,7 @@ int TrayIcon::showInformationInWindow() if (debug) qDebug() << "[TrayIcon]" << "[showInformationInWindow]"; QString title = QApplication::translate("TrayIcon", "netctl status"); - QString message = mainWindow->getInformation(); + QString message = mainWindow->printInformation(); return QMessageBox::information(0, title, message); } diff --git a/sources/helper/src/controladaptor.cpp b/sources/helper/src/controladaptor.cpp index 1b2c9f4..4a9e43a 100644 --- a/sources/helper/src/controladaptor.cpp +++ b/sources/helper/src/controladaptor.cpp @@ -53,6 +53,19 @@ bool ControlAdaptor::Close() } +QStringList ControlAdaptor::Settings() +{ + return helper->printSettings(); +} + + +bool ControlAdaptor::Update(const QString configPath) +{ + helper->updateConfiguration(configPath); + return true; +} + + // netctlCommand bool ControlAdaptor::autoDisableAll() { diff --git a/sources/helper/src/controladaptor.h b/sources/helper/src/controladaptor.h index 0d61303..01da6d6 100644 --- a/sources/helper/src/controladaptor.h +++ b/sources/helper/src/controladaptor.h @@ -39,6 +39,8 @@ public slots: // helper bool Active(); bool Close(); + QStringList Settings(); + bool Update(const QString configPath = QString("")); // netctlCommand bool autoDisableAll(); bool autoEnable(const QString profile); diff --git a/sources/helper/src/main.cpp b/sources/helper/src/main.cpp index 8de5495..4cdf047 100644 --- a/sources/helper/src/main.cpp +++ b/sources/helper/src/main.cpp @@ -48,13 +48,14 @@ bool checkExistSession() int main(int argc, char *argv[]) { // detach from console - bool isDaemon = true; + bool debugFlag = false; + bool daemonFlag = true; for (int i=0; i= 0x050000 QCoreApplication::setSetuidAllowed(true); @@ -97,6 +98,8 @@ int main(int argc, char *argv[]) args[QString("error")] = true; } } + if ((args[QString("debug")].toBool()) && (!args[QString("nodaemon")].toBool())) + args[QString("nodaemon")] = true; // running if (args[QString("error")].toBool()) { diff --git a/sources/helper/src/netctlhelper.cpp b/sources/helper/src/netctlhelper.cpp index e6261ab..422ba67 100644 --- a/sources/helper/src/netctlhelper.cpp +++ b/sources/helper/src/netctlhelper.cpp @@ -32,10 +32,10 @@ NetctlHelper::NetctlHelper(QObject *parent, QMap args) : QObject(parent), - configPath(args[QString("config")].toString()), + initConfigPath(args[QString("config")].toString()), debug(args[QString("debug")].toBool()) { - updateConfiguration(); + updateConfiguration(initConfigPath); } @@ -47,74 +47,16 @@ NetctlHelper::~NetctlHelper() } -QMap NetctlHelper::getDefault() +QStringList NetctlHelper::printSettings() { - if (debug) qDebug() << "[NetctlHelper]" << "[getDefault]"; + if (debug) qDebug() << "[NetctlHelper]" << "[printSettings]"; - QMap settings; - settings[QString("CLOSE_HELPER")] = QString("false"); - settings[QString("CLOSETOTRAY")] = QString("true"); - settings[QString("CTRL_DIR")] = QString("/run/wpa_supplicant_netctl-gui"); - settings[QString("CTRL_GROUP")] = QString("users"); - settings[QString("FORCE_SUDO")] = QString("false"); - settings[QString("HELPER_PATH")] = QString("/usr/bin/netctlgui-helper"); - settings[QString("IFACE_DIR")] = QString("/sys/class/net/"); - settings[QString("LANGUAGE")] = QString("en"); - settings[QString("NETCTL_PATH")] = QString("/usr/bin/netctl"); - settings[QString("NETCTLAUTO_PATH")] = QString("/usr/bin/netctl-auto"); - settings[QString("NETCTLAUTO_SERVICE")] = QString("netctl-auto"); - settings[QString("PID_FILE")] = QString("/run/wpa_supplicant_netctl-gui.pid"); - settings[QString("PREFERED_IFACE")] = QString(""); - settings[QString("PROFILE_DIR")] = QString("/etc/netctl/"); - settings[QString("RFKILL_DIR")] = QString("/sys/class/rfkill/"); - settings[QString("STARTTOTRAY")] = QString("false"); - settings[QString("SUDO_PATH")] = QString("/usr/bin/kdesu"); - settings[QString("SYSTEMCTL_PATH")] = QString("/usr/bin/systemctl"); - settings[QString("SYSTRAY")] = QString("true"); - settings[QString("USE_HELPER")] = QString("true"); - settings[QString("WPACLI_PATH")] = QString("/usr/bin/wpa_cli"); - settings[QString("WPASUP_PATH")] = QString("/usr/bin/wpa_supplicant"); - settings[QString("WPA_DRIVERS")] = QString("nl80211,wext"); - for (int i=0; i NetctlHelper::getSettings() -{ - if (debug) qDebug() << "[NetctlHelper]" << "[getSettings]"; - - QMap settings = getDefault(); - QFile configFile(configPath); - QString fileStr; - if (!configFile.open(QIODevice::ReadOnly)) - return settings; - while (true) { - fileStr = QString(configFile.readLine()).trimmed(); - if ((fileStr.isEmpty()) && (!configFile.atEnd())) continue; - if ((fileStr[0] == QChar('#')) && (!configFile.atEnd())) continue; - if ((fileStr[0] == QChar(';')) && (!configFile.atEnd())) continue; - if (fileStr.contains(QChar('='))) - settings[fileStr.split(QChar('='))[0]] = fileStr.split(QChar('='))[1]; - if (configFile.atEnd()) break; - } - configFile.close(); - for (int i=0; iquit(); + return settingsList; } @@ -155,13 +97,86 @@ void NetctlHelper::deleteInterface() } -void NetctlHelper::updateConfiguration() +QMap NetctlHelper::getDefault() +{ + if (debug) qDebug() << "[NetctlHelper]" << "[getDefault]"; + + QMap settings; + settings[QString("CLOSE_HELPER")] = QString("false"); + settings[QString("CLOSETOTRAY")] = QString("true"); + settings[QString("CTRL_DIR")] = QString("/run/wpa_supplicant_netctl-gui"); + settings[QString("CTRL_GROUP")] = QString("users"); + settings[QString("FORCE_SUDO")] = QString("false"); + settings[QString("HELPER_PATH")] = QString("/usr/bin/netctlgui-helper"); + settings[QString("IFACE_DIR")] = QString("/sys/class/net/"); + settings[QString("LANGUAGE")] = QString("en"); + settings[QString("NETCTL_PATH")] = QString("/usr/bin/netctl"); + settings[QString("NETCTLAUTO_PATH")] = QString("/usr/bin/netctl-auto"); + settings[QString("NETCTLAUTO_SERVICE")] = QString("netctl-auto"); + settings[QString("PID_FILE")] = QString("/run/wpa_supplicant_netctl-gui.pid"); + settings[QString("PREFERED_IFACE")] = QString(""); + settings[QString("PROFILE_DIR")] = QString("/etc/netctl/"); + settings[QString("RFKILL_DIR")] = QString("/sys/class/rfkill/"); + settings[QString("STARTTOTRAY")] = QString("false"); + settings[QString("SUDO_PATH")] = QString("/usr/bin/kdesu"); + settings[QString("SYSTEMCTL_PATH")] = QString("/usr/bin/systemctl"); + settings[QString("SYSTRAY")] = QString("true"); + settings[QString("USE_HELPER")] = QString("true"); + settings[QString("WPACLI_PATH")] = QString("/usr/bin/wpa_cli"); + settings[QString("WPASUP_PATH")] = QString("/usr/bin/wpa_supplicant"); + settings[QString("WPA_DRIVERS")] = QString("nl80211,wext"); + for (int i=0; i settings = getDefault(); + QFile configFile(configPath); + QString fileStr; + if (!configFile.open(QIODevice::ReadOnly)) + return settings; + while (true) { + fileStr = QString(configFile.readLine()).trimmed(); + if ((fileStr.isEmpty()) && (!configFile.atEnd())) continue; + if ((fileStr[0] == QChar('#')) && (!configFile.atEnd())) continue; + if ((fileStr[0] == QChar(';')) && (!configFile.atEnd())) continue; + if (fileStr.contains(QChar('='))) + settings[fileStr.split(QChar('='))[0]] = fileStr.split(QChar('='))[1]; + if (configFile.atEnd()) break; + } + configFile.close(); + for (int i=0; iquit(); +} diff --git a/sources/helper/src/netctlhelper.h b/sources/helper/src/netctlhelper.h index 356df90..ec293d5 100644 --- a/sources/helper/src/netctlhelper.h +++ b/sources/helper/src/netctlhelper.h @@ -31,19 +31,20 @@ public: explicit NetctlHelper(QObject *parent = 0, QMap args = QMap()); ~NetctlHelper(); + QStringList printSettings(); public slots: - QMap getDefault(); - QMap getSettings(); + void updateConfiguration(QString configPath = QString("")); void quitHelper(); private: - QString configPath; + QString initConfigPath; QMap configuration; bool debug; void createInterface(); void deleteInterface(); - void updateConfiguration(); + QMap getDefault(); + QMap getSettings(const QString configPath); };