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));
+ }
}
_innerHtmlResult = QtConcurrent::mapped(dummy,
void Backbone::htmlTranslationReady() {
QFutureIterator<QString> it(_innerHtmlResult);
+ QSet<QString> uniqe;
while(it.hasNext())
- _htmlResult.append(it.next());
+ uniqe.insert(it.next());
+ _htmlResult.clear();
+ _htmlResult = uniqe.toList();
if(!stopped)
Q_EMIT htmlReady();
return result+=_dictionaryInfo+ "</info>"+_trans +"</dict>";
QList<Translation*> translations=googlePlugin->searchWordList(_key);
- if(translations.size()>0)
- return translations.at(0)->toHtml();
+ if(translations.size()>0 && translations.at(0)) {
+ QString res = translations.at(0)->toHtml();
+ return res;
+ }
+ return "";
+
}
void TranslationGoogle::setKey(QString) {