Exemplo n.º 1
0
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    a.setApplicationName("Svg Creater");
    a.setApplicationVersion("0.0.1");

    QStringList args = a.arguments();

    QRegExp rxArgHelp("--help");
    QRegExp rxArgH("-h");
    QRegExp rxArgVersion("--version");
    QRegExp rxArgV("-v");


    bool isHelp(false), isVer(false);
    QStringList filePaths;

    for(int i(1); i < args.size(); ++i)
    {
        if (rxArgHelp.indexIn(args.at(i)) != -1  ||
                rxArgH.indexIn(args.at(i)) != -1)
        {
            isHelp = true;
        }
        else if (rxArgVersion.indexIn(args.at(i)) != -1  ||
                 rxArgV.indexIn(args.at(i)) != -1)
        {
            isVer = true;
        }
        else
        {
            if(QFile::exists(args.at(i)))
            {
                filePaths.append(args.at(i));
            }
        }

    }

    if(isHelp)
    {
        printHelpMessage();
        return 0;
    }
    else if(isVer)
    {
        printVersion();
        return 0;
    }

    QTranslator appTranslator;
    QString translationsPath("/usr/share/easypaint/translations/");
    QString appLanguage = DataSingleton::Instance()->getAppLanguage();
    if(appLanguage == "system")
    {
        appTranslator.load(translationsPath + "easypaint_" + QLocale::system().name());
    }
    else
    {
        appTranslator.load(translationsPath + appLanguage);
    }
    a.installTranslator(&appTranslator);

    MainWindow w(filePaths);
    w.show();

    return a.exec();
}
Exemplo n.º 2
0
int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    quint16 port = portServer;
    bool debug = false;
    bool printUsage = false;
    QString powerPath;

    QStringList args = app.arguments();
    QRegExp rxArgDebug("-d");
    QRegExp rxArgDebugLong("--debug");
    QRegExp rxArgHelp("-h");
    QRegExp rxArgHelpLong("--help");
    QRegExp rxArgVersion("-V");
    QRegExp rxArgVersionLong("--version");
    QRegExp rxArgPort("-p([0-9]{1,})");
    QRegExp rxArgPortLong("--port=([0-9]{1,})");
    QRegExp rxArgQws("-qws");
    QRegExp rxArgPower("-m");


    for (int i = 1; i < args.size(); ++i) {
        if ((rxArgPort.indexIn(args.at(i)) != -1 )) {
            port =  rxArgPort.cap(1).toInt();
        }
        else if ((rxArgPortLong.indexIn(args.at(i)) != -1 )) {
            port =  rxArgPortLong.cap(1).toInt();
        }
        else if ((rxArgDebug.indexIn(args.at(i)) != -1) || (rxArgDebugLong.indexIn(args.at(i)) != -1)) {
            debug = true;
        }
        else if ((rxArgVersion.indexIn(args.at(i)) != -1) || (rxArgVersionLong.indexIn(args.at(i)) != -1)) {
            qDebug() << getVersion();
            return 0;
        }
        else if ((rxArgHelp.indexIn(args.at(i)) != -1) || (rxArgHelpLong.indexIn(args.at(i)) != -1)) {
            usage();
            return 0;
        }
        else if (rxArgQws.indexIn(args.at(i)) != -1)
        {
            // Non faccio nulla
        }
        else if ((rxArgPower.indexIn(args.at(i)) != -1 )) {
            powerPath = args.at(i).right(args.at(i).length() - 2);
        }
        else {
            qDebug() << "Uknown arg:" << args.at(i);
            printUsage = true;
        }
    }

    if (printUsage)
        usage();

    HandlerMessageTcpIp::Instance()->setDebug(debug);
    HandlerMessageTcpIp::Instance()->setVersioneSw(versioneMajor, versioneMinor);

    TcpGateway::Instance()->setPort(port);
    TcpGateway::Instance()->startListen();

#ifdef Q_WS_QWS
    PowerManager::Instance()->setDevice ("/dev/ttyO4");
    HandlerMessageTcpIp::Instance()->setDevice(TcpGateway::Instance(), PowerManager::Instance());
#endif

    AbstractDevice * deviceCAN = NULL;
#ifdef Q_WS_QWS
    deviceCAN = CanDevice::Instance();
    if (!CanDevice::Instance()->exist())
    {
       delete deviceCAN;
       deviceCAN = Rs232Device::Instance();
    }
#else // #ifdef Q_WS_QWS
    deviceCAN = Rs232Device::Instance();
#endif // #ifdef Q_WS_QWS

    HandlerMessageTcpIp::Instance()->setDevice(TcpGateway::Instance(), deviceCAN);

    return app.exec();
}