--- /dev/null
+#include <QApplication>\r
+#include <q-extras/qemaemo5dynamicwidgethelper.h>\r
+#include <q-extras/qtsingleapplication.h>\r
+#include <q-extras/qesettingsmanager.h>\r
+#include "quickwidget.hpp"\r
+#include "quickwidgetsettings.hpp"\r
+#include "appeventlistener.hpp"\r
+\r
+int main(int argc, char *argv[])\r
+{\r
+ QApplication::setApplicationName("Quick Widgets");\r
+ QApplication::setOrganizationName("Marquarding");\r
+ // APP_VERSION and APP_BETA are defined in the .pro file\r
+ QApplication::setApplicationVersion(QString(APP_VERSION)\r
+#if APP_BETA\r
+ + " beta"\r
+#endif\r
+ );\r
+\r
+ QtSingleApplication app(argc, argv);\r
+ qDebug() << "Launched quick widgets app";\r
+\r
+ if (app.isRunning())\r
+ {\r
+ qDebug() << "Another instance of the app is running.";\r
+ if (app.arguments().contains("in-background"))\r
+ {\r
+ qDebug() << "Closing that other instance.";\r
+ app.sendMessage(APP_MESSAGE_CLOSE);\r
+ }\r
+ else\r
+ {\r
+ qDebug() << "Asking it to offer to create a new widget.";\r
+ app.sendMessage(APP_MESSAGE_ADDWIDGET);\r
+ return 0;\r
+ }\r
+ }\r
+\r
+ app.setQuitOnLastWindowClosed(false);\r
+ AppEventListener::instance();\r
+\r
+ if (app.arguments().contains("forget-widgets"))\r
+ {\r
+ qDebug() << "We were asked to forget all widgets!";\r
+ QeMaemo5DynamicWidgetHelper::globalInstance()->forgetAllWidgets();\r
+ }\r
+ else\r
+ {\r
+ qDebug() << "Restoring all widgets";\r
+ QeMaemo5DynamicWidgetHelper::globalInstance()->restoreWidgets<QuickWidget>();\r
+ }\r
+\r
+ if (!app.arguments().contains("in-background"))\r
+ {\r
+ // setting for new widget\r
+ QuickWidgetSettings settingsDialog;\r
+ settingsDialog.exec();\r
+ //app.sendMessage(APP_MESSAGE_ADDWIDGET);\r
+ }\r
+ return app.exec();\r
+}\r