Mercurial > trustbridge
view ui/administrator.cpp @ 1075:7e1fd6d96714
(issue109) Feedback improved. Shell translation updated.
author | Bernhard Reiter <bernhard@intevation.de> |
---|---|
date | Thu, 11 Sep 2014 10:18:46 +0200 |
parents | 1e429faf7c84 |
children | 12ed0b72e9f5 |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #include "administratorwindow.h" #include "util.h" #include <QApplication> #include <QtPlugin> #include <QMessageBox> #include <QSettings> #include <QTranslator> #include <QDebug> #include <QTextCodec> #include <QFontDatabase> #ifndef VERSION #define VERSION "0.0.1" #endif #ifndef APPNAME #define APPNAME "trustbridge-admin" #endif #ifndef ORGANIZATION #define ORGANIZATION "BSI" #endif #define COPYRIGHT "Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik \n" \ "Software engineering by Intevation GmbH \n\n" \ "This file is Free Software under the GNU GPL (v>=2)\n" \ "and comes with ABSOLUTELY NO WARRANTY!\n" #ifdef Q_OS_WIN Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin) #else Q_IMPORT_PLUGIN(QXcbIntegrationPlugin) #endif #ifdef DO_RELEASE_BUILD bool g_debug = false; #else bool g_debug = true; #endif QtMessageHandler g_default_msg_handler = NULL; void filterDebugOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg) { if (!g_debug && type == QtDebugMsg) { return; } if (g_default_msg_handler) { (*g_default_msg_handler)(type, context, msg); } } int main(int argc, char **argv) { QApplication app (argc, argv); QStringList arguments = QApplication::arguments(); QApplication::setOrganizationName(QString::fromLatin1(ORGANIZATION)); QApplication::setApplicationName(QString::fromLatin1(APPNAME)); QApplication::setApplicationVersion(QString::fromLatin1(VERSION)); QSettings::setDefaultFormat(QSettings::IniFormat); if (QApplication::arguments().contains("--version")) { printf (APPNAME " Version: %s \n", QApplication::applicationVersion().toLocal8Bit().constData()); printf (COPYRIGHT); return 0; } if (arguments.contains("--debug")) { g_debug = true; } g_default_msg_handler = qInstallMessageHandler(filterDebugOutput); QTranslator translator; if (QLocale::system().name() == "C") { /* Useful for testing / development as the primary target is german */ translator.load(":/l10n/administrator_de_DE"); } else { translator.load(":/l10n/administrator_" + QLocale::system().name()); qDebug() << "Loading translations for: " << "administrator_" + QLocale::system().name(); } app.installTranslator(&translator); /* Out of process calls need to be encoded in latin-1 so that they * look decent on western europe's windows */ QTextCodec::setCodecForLocale(QTextCodec::codecForName ("ISO-8859-1")); /* Install static fonts */ /* The putenv here works around a bug in qt. Qt thinks it is a fatal * error if the font directory does not exist. */ qputenv("QT_QPA_FONTDIR", get_install_dir()); int fontId = QFontDatabase::addApplicationFont(":/fonts/DejaVuSans.ttf"); if (fontId != -1) { QFont font("DejaVuSans"); font.setPointSize(9); app.setFont(font); } AdministratorWindow adminWin; adminWin.show(); return app.exec(); }