2 #include <qtsingleapplication.h>
4 #include "MainWindow.h"
6 // #include "local/mac/mac_startup.h"
9 int main(int argc, char **argv) {
15 QtSingleApplication app(argc, argv);
16 if (app.sendMessage("Wake up!"))
19 app.setApplicationName(Constants::APP_NAME);
20 app.setOrganizationName(Constants::ORG_NAME);
21 app.setOrganizationDomain(Constants::ORG_DOMAIN);
23 app.setWheelScrollLines(1);
26 const QString locale = QLocale::system().name();
29 QTranslator qtTranslator;
30 qtTranslator.load("qt_" + locale,
31 QLibraryInfo::location(QLibraryInfo::TranslationsPath));
32 app.installTranslator(&qtTranslator);
36 QString dataDir = QLatin1String(PKGDATADIR);
40 QString localeDir = qApp->applicationDirPath() + QDir::separator() + "locale";
41 if (!QFile::exists(localeDir)) {
42 localeDir = dataDir + QDir::separator() + "locale";
44 // qDebug() << "Using locale dir" << localeDir << locale;
45 QTranslator translator;
46 translator.load(locale, localeDir);
47 app.installTranslator(&translator);
48 QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
51 mainWin.setWindowTitle(Constants::APP_NAME);
53 // no window icon on Mac
55 if (!QFile::exists(dataDir)) {
56 dataDir = qApp->applicationDirPath() + "/data";
58 const int iconSizes [] = { 16, 22, 24, 32, 48, 64, 128, 256 };
60 for (int i = 0; i < 8; i++) {
61 QString size = QString::number(iconSizes[i]);
62 QString png = dataDir + "/" + size + "x" + size + "/minitube.png";
64 appIcon.addFile(png, QSize(iconSizes[i], iconSizes[i]));
66 mainWin.setWindowIcon(appIcon);
71 app.setActivationWindow(&mainWin, true);
73 // all string literals are UTF-8
74 QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));