diff --git a/sources/gui/src/main.cpp b/sources/gui/src/main.cpp index a2570ec..70b73a4 100644 --- a/sources/gui/src/main.cpp +++ b/sources/gui/src/main.cpp @@ -30,6 +30,15 @@ using namespace std; +QChar isParametrEnable(const bool parametr) +{ + if (parametr) + return QChar('*'); + else + return QChar(' '); +} + + int main(int argc, char *argv[]) { QApplication a(argc, argv); @@ -42,66 +51,34 @@ int main(int argc, char *argv[]) translator.load(QString(":/translations/") + language); a.installTranslator(&translator); - QString helpMessage = QString(""); - helpMessage += QApplication::translate("MainWindow", " Netctl GUI\n"); - helpMessage += QApplication::translate("MainWindow", "Version : %1 License : GPLv3\n") - .arg(QString(VERSION)); - helpMessage += QApplication::translate("MainWindow", " Evgeniy Alekseev aka arcanis\n"); - helpMessage += QApplication::translate("MainWindow", " E-mail : esalexeev@gmail.com\n\n"); - helpMessage += QApplication::translate("MainWindow", "Usage:\n"); - helpMessage += QApplication::translate("MainWindow", "netctl-gui [ -d | --debug ] [ --default ] [ --netctl-auto ] [ --settings ]\n"); - helpMessage += QApplication::translate("MainWindow", " [ -t NUM | --tab NUM ] [ -h | --help]\n\n"); - helpMessage += QApplication::translate("MainWindow", "Parametrs:\n"); - helpMessage += QApplication::translate("MainWindow", " -d --debug - print debug information\n"); - helpMessage += QApplication::translate("MainWindow", " --default - start with default settings\n"); - helpMessage += QApplication::translate("MainWindow", " --netctl-auto - show netctl-auto window\n"); - helpMessage += QApplication::translate("MainWindow", " --settings - show settings window\n"); - helpMessage += QApplication::translate("MainWindow", " -t NUM --tab NUM - open a tab with number NUM\n"); - helpMessage += QApplication::translate("MainWindow", " -h --help - show this help and exit\n"); - bool defaultSettings = false; + // reading command line flags bool debug = false; + bool defaultSettings = false; + bool error = false; + bool showHelp = false; bool showNetctlAuto = false; bool showSettings = false; + bool showVersion = false; int tabNumber = 1; - for (int i=1; i 3) tabNumber = 3; else if (atoi(argv[i+1]) < 1) @@ -110,8 +87,59 @@ int main(int argc, char *argv[]) tabNumber = atoi(argv[i+1]); i++; } + // version message + else if ((QString(argv[i]) == QString("-v")) || (QString(argv[i]) == QString("--version"))) { + showVersion = true; + } + // help message + else if ((QString(argv[i]) == QString("-h")) || (QString(argv[i]) == QString("--help"))) { + showHelp = true; + } + else { + error = true; + } } + // messages + QString errorMessage = QApplication::translate("MainWindow", "Unknown flag\n"); + QString helpMessage = QString(""); + helpMessage += QApplication::translate("MainWindow", "Usage:\n"); + helpMessage += QApplication::translate("MainWindow", "netctl-gui [ -d | --debug ] [ --default ] [ --netctl-auto ] [ --settings ]\n"); + helpMessage += QApplication::translate("MainWindow", " [ -t NUM | --tab NUM ] [ -v | --version ] [ -h | --help]\n\n"); + helpMessage += QApplication::translate("MainWindow", "Parametrs:\n"); + helpMessage += QApplication::translate("MainWindow", "%1 -d --debug - print debug information\n") + .arg(isParametrEnable(debug)); + helpMessage += QApplication::translate("MainWindow", "%1 --default - start with default settings\n") + .arg(isParametrEnable(defaultSettings)); + helpMessage += QApplication::translate("MainWindow", "%1 --netctl-auto - show netctl-auto window\n") + .arg(isParametrEnable(showNetctlAuto)); + helpMessage += QApplication::translate("MainWindow", "%1 --settings - show settings window\n") + .arg(isParametrEnable(showSettings)); + helpMessage += QApplication::translate("MainWindow", " -t %1 --tab %1 - open a tab with number %1\n") + .arg(QString::number(tabNumber)); + helpMessage += QApplication::translate("MainWindow", " -v --version - show version and exit\n"); + helpMessage += QApplication::translate("MainWindow", " -h --help - show this help and exit\n"); + QString versionMessage = QString(""); + versionMessage += QApplication::translate("MainWindow", " Netctl GUI\n"); + versionMessage += QApplication::translate("MainWindow", "Version : %1 License : GPLv3\n") + .arg(QString(VERSION)); + versionMessage += QApplication::translate("MainWindow", " Evgeniy Alekseev aka arcanis\n"); + versionMessage += QApplication::translate("MainWindow", " E-mail : esalexeev@gmail.com\n"); + // running + if (error) { + cout << errorMessage.toUtf8().data(); + cout << helpMessage.toUtf8().data(); + return 127; + } + if (showHelp) { + cout << versionMessage.toUtf8().data(); + cout << helpMessage.toUtf8().data(); + return 0; + } + if (showVersion) { + cout << versionMessage.toUtf8().data(); + return 0; + } MainWindow w(0, defaultSettings, debug, showNetctlAuto, showSettings, tabNumber); w.show(); return a.exec(); diff --git a/sources/gui/src/netctlautowindow.cpp b/sources/gui/src/netctlautowindow.cpp index f299920..c7b62ff 100644 --- a/sources/gui/src/netctlautowindow.cpp +++ b/sources/gui/src/netctlautowindow.cpp @@ -172,7 +172,6 @@ void NetctlAutoWindow::netctlAutoContextualMenu(const QPoint &pos) if (ui->tableWidget->currentItem() == 0) return; - // create menu QMenu menu(this); QAction *startProfile = menu.addAction(QApplication::translate("NetctlAutoWindow", "Switch to profile")); @@ -243,7 +242,6 @@ void NetctlAutoWindow::netctlAutoEnableProfile() if (ui->tableWidget->currentItem() == 0) return; - ui->tableWidget->setDisabled(true); QString profile = ui->tableWidget->item(ui->tableWidget->currentItem()->row(), 0)->text(); if (netctlCommand->autoEnableProfile(profile)) @@ -275,7 +273,6 @@ void NetctlAutoWindow::netctlAutoStartProfile() if (ui->tableWidget->currentItem() == 0) return; - ui->tableWidget->setDisabled(true); QString profile = ui->tableWidget->item(ui->tableWidget->currentItem()->row(), 0)->text(); if (netctlCommand->autoStartProfile(profile)) @@ -340,7 +337,6 @@ void NetctlAutoWindow::netctlAutoRefreshButtons(QTableWidgetItem *current, QTabl ui->actionSwitch->setVisible(false); return; } - if (ui->tableWidget->item(current->row(), 2)->text() == QString("yes")) { // buttons ui->pushButton_enable->setDisabled(true); diff --git a/sources/gui/src/wirelesswidget.cpp b/sources/gui/src/wirelesswidget.cpp index a28a0c8..8fc467b 100644 --- a/sources/gui/src/wirelesswidget.cpp +++ b/sources/gui/src/wirelesswidget.cpp @@ -315,7 +315,7 @@ void WirelessWidget::setSettings(const QMap settings) if (wirelessSettings.contains(QString("WPAConfigSection"))) { QStringList custom; if (wirelessSettings[QString("WPAConfigSection")].contains(QChar('\n'))) - custom = wirelessSettings[QString("WPAConfigSection")].split(String("'\n'")); + custom = wirelessSettings[QString("WPAConfigSection")].split(QString("'\n'")); else custom = wirelessSettings[QString("WPAConfigSection")].split(QString("' '")); for (int i=0; i