*******************************************************************************/
-//! \file main.cpp
-//! \author Mateusz Półrola <mateusz.polrola@comarch.pl>
+/*! \file main.cpp
+ \brief mDictionary's main file
+ \author Mateusz Półrola <mateusz.polrola@comarch.pl>
+*/
#include <QtGui/QApplication>
#include "MainWindow.h"
return result;
}
+void retranslate() {
+ QString locale = QLocale::system().name();
+
+ QTranslator *translator = new QTranslator;
+ QTranslator *qtTranslator = new QTranslator;
+
+ qtTranslator->load("qt_" + locale,
+ QLibraryInfo::location(QLibraryInfo::TranslationsPath));
+ QCoreApplication::installTranslator(qtTranslator);
+
+ if(!translator->load(":/translations/" + locale)) {
+ translator->load(":/translations/en_US");
+
+ }
+
+ QCoreApplication::installTranslator(translator);
+}
+
int main(int argc, char *argv[]) {
QApplication a(argc, argv);
QApplication::setOrganizationName("Comarch S.A.");
qRegisterMetaType<Notify>("Notify");
qRegisterMetaType<Notify::NotifyType>("Notify::NotifyType");
- QString locale = QLocale::system().name();
-
- QTranslator qtTranslator;
- qtTranslator.load("qt_" + QLocale::system().name(),
- QLibraryInfo::location(QLibraryInfo::TranslationsPath));
-
- a.installTranslator(&qtTranslator);
-
- QTranslator myTranslator;
- if(locale == "pl_PL")
- myTranslator.load(":/translations/dict_pl");
- else
- myTranslator.load(":/translations/dict_en");
- a.installTranslator(&myTranslator);
+ retranslate();
- Backbone backbone;
- MainWindow w(&backbone);
+ Backbone* backbone = new Backbone();
+ MainWindow* mainWindow = new MainWindow(backbone);
- DBusAdapter* adapter = new DBusAdapter(&w);
+ DBusAdapter* adapter = new DBusAdapter(mainWindow);
QDBusConnection::sessionBus().registerObject("/mainWindow",
- &w);
+ mainWindow);
QDBusConnection::sessionBus().registerService("com.comarch.mdictionary");
-
- w.show();
-
+ mainWindow->show();
if(search.count() > 0) {
- w.setExactSearch(true);
- w.searchExact(search[0]);
+ mainWindow->setExactSearch(true);
+ mainWindow->searchExact(search[0]);
}
- return a.exec();
+ int res = a.exec();
+
+ QDBusConnection::sessionBus().unregisterObject("/mainWindow");
+ QDBusConnection::sessionBus().unregisterService("com.comarch.mdictionary");
+
+ delete adapter;
+ delete mainWindow;
+ delete backbone;
+
+ return res;
}