X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fmdictionary%2Fgui%2Fmain.cpp;h=5196f8adc997a67aa327fcb184d9e25a8b6e8ade;hb=5ff31a8e7a9f8d8a42d29a00882adcad16eedbdc;hp=efdf0822a5fada3a72f98d5dd02461a824eeec26;hpb=504579054540ea1a39a7941c15dd180fa0374bbe;p=mdictionary diff --git a/src/mdictionary/gui/main.cpp b/src/mdictionary/gui/main.cpp index efdf082..5196f8a 100644 --- a/src/mdictionary/gui/main.cpp +++ b/src/mdictionary/gui/main.cpp @@ -19,8 +19,10 @@ *******************************************************************************/ -//! \file main.cpp -//! \author Mateusz Półrola +/*! \file main.cpp + \brief mDictionary's main file + \author Mateusz Półrola +*/ #include #include "MainWindow.h" @@ -54,6 +56,24 @@ QStringList parseParameters(int argc, char *argv[]) { 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."); @@ -67,42 +87,32 @@ int main(int argc, char *argv[]) { qRegisterMetaType("Notify"); qRegisterMetaType("Notify::NotifyType"); - QString locale = QLocale::system().name(); - - QTranslator qtTranslator; - qtTranslator.load("qt_" + locale, - QLibraryInfo::location(QLibraryInfo::TranslationsPath)); - - a.installTranslator(&qtTranslator); - - QTranslator mdictionaryTranslator; - - if(locale == "pl_PL") - mdictionaryTranslator.load(":/translations/dict_pl"); - - else - - mdictionaryTranslator.load(":/translations/dict_en"); + retranslate(); - a.installTranslator(&mdictionaryTranslator); + Backbone* backbone = new Backbone(); + MainWindow* mainWindow = new MainWindow(backbone); - Backbone backbone; - MainWindow w(&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; }