Add Symbian package icon.
[dorian] / main.cpp
1 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
2 #include <unistd.h>
3 #endif
4
5 #include <QtGui/QApplication>
6
7 #include "mainwindow.h"
8 #include "trace.h"
9 #include "settings.h"
10
11 static const char *DORIAN_VERSION =
12 #include "pkg/version.txt"
13 ;
14
15 int main(int argc, char *argv[])
16 {
17     QApplication a(argc, argv);
18
19     Trace::level = (QtMsgType)Settings::instance()->
20         value("tracelevel", (int)QtWarningMsg).toInt();
21     qInstallMsgHandler(Trace::messageHandler);
22
23     a.setApplicationName("Dorian");
24     a.setApplicationVersion(DORIAN_VERSION);
25     a.setOrganizationDomain("pipacs.com");
26     a.setOrganizationName("Pipacs");
27
28 #ifdef Q_OS_SYMBIAN
29     // Remove context menu from all widgets
30     foreach (QWidget *w, QApplication::allWidgets()) {
31         w->setContextMenuPolicy(Qt::NoContextMenu);
32     }
33 #endif // Q_OS_SYMBIAN
34
35     MainWindow w;
36     w.show();
37
38     int ret = a.exec();
39     if (ret == 1000) {
40 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
41         extern char **environ;
42         execve(argv[0], argv, environ);
43 #endif
44     }
45     return ret;
46 }