//Install default config files
ConfigGenerator confGen;
- confGen.generateCss(_dir + "style.css");
+ ///confGen.generateCss(_dir + "style.css");
confGen.generateDefaultConfig(_configPath);
loadPrefs(_configPath);
// For convienence this function is called for each change in dictionaries
// and each call dumps configuration for all dictionaries into file.
- // Maybe better way would be to store new/changed configuration but
+ // Maybe a better way would be to store new/changed configuration but
// parsing settings file and figuring out what was changed, in my opinion,
// would take more time
_history->setMaxSize(_historyLen);
foreach(Translation* tr, translations) {
if(containsDict(tr->dict()) || !tr->dict())
dummy.append(TranslationPtr(tr));
- /* foreach(CommonDictInterface* dict, activeDicts()) {
- Translation* trans = dict->getTranslationFor(tr->key());
- if(trans)
- dummy.append(TranslationPtr(trans));
- } */
}
if(translations.size()>0) {
Translation *tr = translations.at(0);
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;
stopped = false;
- connect(cachingDialog, SIGNAL(cancelCaching()),
- this, SLOT(stop()));
- connect(this, SIGNAL(updateCachingProgress(int,int)),
- cachingDialog, SLOT(updateCachingProgress(int,int)));
initAccents();
}
XdxfPlugin::~XdxfPlugin() {
delete _settings;
- delete cachingDialog;
delete _dictDialog;
}
reader.readNextStartElement();
if(reader.name()=="full_name")
_name=reader.readElementText();
+ else
+ qDebug()<<"no full_name";
reader.readNextStartElement();
if(reader.name()=="description")
_infoNote=reader.readElementText();
+ else
+ qDebug()<<"no description";
_dictionaryInfo= _name + " [" + _langFrom + "-"
+ _langTo + "]";
bool XdxfPlugin::makeCache(QString) {
- cachingDialog->setVisible(true);
+
+ XdxfCachingDialog d(_dictDialog->lastDialogParent());
+
+ connect(&d, SIGNAL(cancelCaching()),
+ this, SLOT(stop()));
+
+ connect(this, SIGNAL(updateCachingProgress(int,int)),
+ &d, SLOT(updateCachingProgress(int,int)));
+
+ d.show();
+
QCoreApplication::processEvents();
QFileInfo dictFileN(_settings->value("path"));
QString cachePathN;
/*add all words to db*/
while (!reader.atEnd() && !stopped) {
+
QCoreApplication::processEvents();
reader.readNext();
if(reader.tokenType() == QXmlStreamReader::StartElement) {
cur.exec();
counter++;
int prog = counter*100/_wordsCount;
- if(prog % 5 == 0 && lastProg != prog) {
+ if(prog % 2 == 0 && lastProg != prog) {
Q_EMIT updateCachingProgress(prog,timer.restart());
lastProg = prog;
}
}
cur.exec("END;");
cur.exec("select count(*) from dict");
- cachingDialog->setVisible(false);
/*checke errors (wrong number of added words)*/
countWords();
_settings->setValue("cache_path", cachePathN);
_settings->setValue("cached", "true");
+
+ disconnect(&d, SIGNAL(cancelCaching()),
+ this, SLOT(stop()));
+
+ disconnect(this, SIGNAL(updateCachingProgress(int,int)),
+ &d, SLOT(updateCachingProgress(int,int)));
+
db.close();
return true;
}