Caching dialog in xdxf is set to modal
[mdictionary] / src / plugins / xdxf / xdxfplugin.cpp
index e7088d9..ad0a0bb 100644 (file)
 XdxfPlugin::XdxfPlugin(QObject *parent) : CommonDictInterface(parent),
                     _langFrom(""), _langTo(""),_name(""), _infoNote("") {
     _settings = new Settings();
-    _dictDialog = new XdxfDictDialog(this);
+    _dictDialog = new XdxfDictDialog(this, this);
+
+    connect(_dictDialog, SIGNAL(notify(Notify::NotifyType,QString)),
+            this, SIGNAL(notify(Notify::NotifyType,QString)));
+
     cachingDialog = new XdxfCachingDialog(this);
 
+
     _settings->setValue("type","xdxf");
     _icon = QIcon("/usr/share/mdictionary/xdxf.png");
     _wordsCount = -1;
@@ -50,11 +55,9 @@ void XdxfPlugin::retranslate() {
 
     QTranslator *translator = new QTranslator(this);
 
-    if(locale == "pl_PL")
-        translator->load(":/translations/dict_xdxf_pl");
-    else
-        translator->load(":/translations/dict_xdxf_en");
-
+    if(!translator->load(":/xdxf/translations/" + locale)) {
+        translator->load(":/xdxf/translations/en_US");
+    }
     QCoreApplication::installTranslator(translator);
 }
 
@@ -323,6 +326,7 @@ DictDialog* XdxfPlugin::dictDialog() {
 
 CommonDictInterface* XdxfPlugin::getNew(const Settings *settings) const {
     XdxfPlugin *plugin = new XdxfPlugin();
+
     if(settings && plugin->setSettings(settings)) {
         return plugin;
     }
@@ -482,7 +486,7 @@ int XdxfPlugin::countWords() {
 
 
 bool XdxfPlugin::makeCache(QString) {
-    cachingDialog->setVisible(true);
+    cachingDialog->show();
     QCoreApplication::processEvents();
     QFileInfo dictFileN(_settings->value("path"));
     QString cachePathN;
@@ -590,7 +594,7 @@ bool XdxfPlugin::makeCache(QString) {
     }
     cur.exec("END;");
     cur.exec("select count(*) from dict");
-    cachingDialog->setVisible(false);
+    //cachingDialog->hide();
 
     /*checke errors (wrong number of added words)*/
     countWords();