Xdxf plugin dict parsing fixed
authorMateusz Polrola <mateusz.polrola@comarch.pl>
Wed, 4 Aug 2010 12:34:26 +0000 (14:34 +0200)
committerMateusz Polrola <mateusz.polrola@comarch.pl>
Wed, 4 Aug 2010 12:34:26 +0000 (14:34 +0200)
trunk/src/base/backbone/backbone.cpp
trunk/src/plugins/xdxf/src/XdxfPlugin/xdxfplugin.cpp

index c0803f4..9be3804 100644 (file)
@@ -116,7 +116,7 @@ void Backbone::search(QString word) {
 
     foreach(CommonDictInterface* dict, dicts.keys())
         if(dicts[dict] == 1) {
-            translation(dict->search(word, searchLimit()));
+            translation(dict->searchWordList(word, searchLimit()));
         }
 }
 
@@ -136,15 +136,11 @@ void Backbone::search(QString word) {
 
  void Backbone::addDictionary(CommonDictInterface* dict) {
      dicts[dict] = 1;
-<<<<<<< HEAD
-     connect(dict, SIGNAL(finalTranslation(QList<Translation*>)),
-             this, SLOT(translation(QList<Translation*>)),
-             Qt::QueuedConnection);
-=======
+
      //connect(dict, SIGNAL(finalTranslation()),
       //       this, SLOT(translation()),
       //       Qt::UniqueConnection);
->>>>>>> 22b7c270de4fcb536e0325485e69952ea88ebff7
+
  }
 
 
index a2ddc71..43ebea5 100644 (file)
@@ -8,6 +8,7 @@ XdxfPlugin::XdxfPlugin(QObject *parent) : CommonDictInterface(parent),
                     _langFrom(tr("")), _langTo(tr("")),_name(tr("")),
                     _type(tr("xdxf")), _infoNote(tr("")) {
     path="dict.xdxf";
+    stopped = false;
 }
 
 QString XdxfPlugin::langFrom() const {
@@ -31,6 +32,7 @@ QString XdxfPlugin::infoNote() const {
 }
 
 QList<Translation*> XdxfPlugin::searchWordList(QString word, int limit) {
+    stopped = false;
     QRegExp regWord(word);
     QList<Translation*> translations;
     regWord.setPatternSyntax(QRegExp::Wildcard);
@@ -60,8 +62,8 @@ QList<Translation*> XdxfPlugin::searchWordList(QString word, int limit) {
         if(dictionaryReader.name()=="ar"){
             while(dictionaryReader.name()!="k" && !dictionaryReader.atEnd())
                 dictionaryReader.readNextStartElement();
-            a = dictionaryReader.readElementText();
-            if(regWord.exactMatch(a) && i<limit) {
+           a = dictionaryReader.readElementText();
+           if(regWord.exactMatch(a) && i<limit) {
                 translations.append(new TranslationXdxf(a,_infoNote,this));
                 i++;
                 if(i>=limit)
@@ -71,6 +73,7 @@ QList<Translation*> XdxfPlugin::searchWordList(QString word, int limit) {
     }
     stopped=false;
     dictionaryFile.close();
+    qDebug()<<translations.count();
     emit finalTranslation();
     return translations;
 }