view ui/main.cpp @ 224:689b94dd89a9

Wrote FindNSS to build against nss without pkg-config support (Windows).
author Sascha Wilde <wilde@intevation.de>
date Thu, 27 Mar 2014 17:00:01 +0100
parents 3349c9596043
children 75f7288ad67b
line wrap: on
line source
#include "mainwindow.h"

#include <QApplication>
#include <QSystemTrayIcon>
#include <QtPlugin>
#include <QMessageBox>
#include <QSettings>

#ifndef VERSION
#define VERSION "0.0.1"
#endif

#ifndef APPNAME
#define APPNAME "m13ui"
#endif

#ifndef ORGANIZATION
#define ORGANIZATION "m13org"
#endif

#ifdef Q_OS_WIN
 Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin)
#else
 Q_IMPORT_PLUGIN(QXcbIntegrationPlugin)
#endif

int main(int argc, char **argv)
{
    QApplication app (argc, argv);

    QStringList arguments = QApplication::arguments();
    bool trayMode = arguments.contains("--tray");

    if (!QSystemTrayIcon::isSystemTrayAvailable() ||
            !QSystemTrayIcon::supportsMessages()) {
        QMessageBox::critical(0, QString::fromLatin1(APPNAME),
                              QObject::tr("Couldn't detect any system tray "
                                          "on this system. This software can only "
                                          "be used in a desktop environment."));
        return 1;
    }

    QApplication::setQuitOnLastWindowClosed(false);
    QApplication::setOrganizationName(QString::fromLatin1(ORGANIZATION));
    QApplication::setApplicationName(QString::fromLatin1(APPNAME));
    QApplication::setApplicationVersion(QString::fromLatin1(VERSION));
    QSettings::setDefaultFormat(QSettings::IniFormat);

    MainWindow mainWin;
    if (!trayMode) {
        mainWin.show();
    }

    return app.exec();
}

http://wald.intevation.org/projects/trustbridge/