add daemonized option

This commit is contained in:
arcan1s 2014-08-07 00:59:43 +04:00
parent 891b3b43ef
commit 4788ad0081
4 changed files with 29 additions and 11 deletions

View File

@ -18,6 +18,7 @@
# variables
_netctl_gui_arglist=(
'--daemonized'
'--maximized'
'--minimized'
'--about'

View File

@ -17,12 +17,12 @@
#include <QApplication>
#include <QDBusConnection>
#include <QDBusMessage>
#include <QDir>
#include <QTranslator>
#include <iostream>
#include <unistd.h>
#include "language.h"
#include "mainwindow.h"
@ -56,9 +56,14 @@ QChar isParametrEnable(const bool parametr)
int main(int argc, char *argv[])
{
// detach from console
for (int i=0; i<argc; i++)
if (QString(argv[i]) == QString("--daemonized")) {
daemon(0, 0);
break;
}
QApplication a(argc, argv);
QApplication::setQuitOnLastWindowClosed(false);
// check if exists
if (restoreExistSession())
return 0;
@ -94,13 +99,17 @@ int main(int argc, char *argv[])
// reading
for (int i=1; i<argc; i++) {
// windows
// maximized
if (QString(argv[i]) == QString("--maximized")) {
// daemonized
if (QString(argv[i]) == QString("--daemonized")) {
startMinimized = 1;
}
// maximized
else if (QString(argv[i]) == QString("--maximized")) {
startMinimized = 2;
}
// minimized
else if (QString(argv[i]) == QString("--minimized")) {
startMinimized = 2;
startMinimized = 3;
}
// about
else if (QString(argv[i]) == QString("--about")) {
@ -188,7 +197,7 @@ int main(int argc, char *argv[])
QString helpMessage = QString("");
helpMessage += QString("%1\n").arg(QApplication::translate("MainWindow", "Usage:"));
helpMessage += QString("netctl-gui [ --maximized ] [ --minimized ]\n");
helpMessage += QString("netctl-gui [ --daemonized ] [ --maximized ] [ --minimized ]\n");
helpMessage += QString(" [ --about ] [ --netctl-auto ] [ --settings ]\n");
helpMessage += QString(" [ -e ESSID | --essid ESSID ] [ -o PROFILE | --open PROFILE ]\n");
helpMessage += QString(" [ -s PROFILE | --select PROFILE ]\n");
@ -198,12 +207,15 @@ int main(int argc, char *argv[])
helpMessage += QString("%1\n").arg(QApplication::translate("MainWindow", "Parametrs:"));
// windows
helpMessage += QString("%1\n").arg(QApplication::translate("MainWindow", "Open window:"));
helpMessage += QString("%1 --daemonized - %2\n")
.arg(isParametrEnable(startMinimized))
.arg(QApplication::translate("MainWindow", "start daemonized"));
helpMessage += QString("%1 --maximized - %2\n")
.arg(isParametrEnable(startMinimized))
.arg(QApplication::translate("MainWindow", "start maximized"));
helpMessage += QString("%1 --minimized - %2\n")
.arg(isParametrEnable(startMinimized))
.arg(QApplication::translate("MainWindow", "start minimized"));
.arg(QApplication::translate("MainWindow", "start minimized to tray"));
helpMessage += QString("%1 --about - %2\n")
.arg(isParametrEnable(showAbout))
.arg(QApplication::translate("MainWindow", "show about window"));

View File

@ -163,6 +163,8 @@ MainWindow::MainWindow(QWidget *parent,
// tray
trayIcon = new TrayIcon(this, debug);
if (startMinimized == 1)
return;
if ((QSystemTrayIcon::isSystemTrayAvailable()) &&
(configuration[QString("SYSTRAY")] == QString("true")))
trayIcon->setVisible(true);
@ -173,9 +175,9 @@ MainWindow::MainWindow(QWidget *parent,
hide();
else
show();
if (startMinimized == 1)
if (startMinimized == 2)
show();
else if (startMinimized == 2)
else if (startMinimized == 3)
hide();
}
else
@ -473,8 +475,10 @@ void MainWindow::showMainWindow()
{
if (debug) qDebug() << "[MainWindow]" << "[showMainWindow]";
if (isHidden())
if (isHidden()) {
updateTabs(ui->tabWidget->currentIndex());
show();
}
else
hide();
}

View File

@ -19,8 +19,9 @@
# variables
_netctl_gui_arglist=(
{'--daemonized','--daemonized'}'[start daemonized]'
{'--maximized','--maximized'}'[start maximized]'
{'--minimized','--minimized'}'[start minimized]'
{'--minimized','--minimized'}'[start minimized to tray]'
{'--about','--about'}'[show about window]'
{'--netctl-auto','--netctl-auto'}'[show netctl-auto window]'
{'--settings','--settings'}'[show settings window]'