Copyright 2010 Comarch S.A.
*******************************************************************************/
-/*! \file TranslationXdxf.cpp
+/*!
+ \file TranslationStarDict.cpp
+ \brief Implementation of stardict plugin's translation.
+
\author Jakub Jaszczynski <j.j.jaszczynski@gmail.com>
*/
-
#include "TranslationStarDict.h"
#include <QDebug>
+
TranslationStarDict::TranslationStarDict():_key(""),_dictionaryInfo("") {
starDictPlugin=0;
}
+
TranslationStarDict::TranslationStarDict(QString _key, QString _dictionaryInfo,
StarDictPlugin *starDictPlugin): _key(_key),_dictionaryInfo(_dictionaryInfo) {
this->starDictPlugin=starDictPlugin;
_dictionaryInfo = base._dictionaryInfo;
lengths = base.lengths;
offsets = base.offsets;
+ starDictPlugin = base.starDictPlugin;
}
return _key;
}
+
QString TranslationStarDict::toXml() const {
QString result("");
if(!starDictPlugin)
return result;
- result=result + "<dict> <info path=\"/usr/share/mdictionary/stardict.png\" ";
- if(isBookmark())
- result+= " bookmark=\"true\" > \n";
- else
- result+= " bookmark=\"false\" > \n";
- result+= _dictionaryInfo + "</info>" + starDictPlugin->search(_key) + "</dict>";
- return result.replace("&","&");
+ for(int i = 0; i < offsets.size(); i++) {
+ result=result + "<dict> <info path=\"/usr/share/mdictionary/stardict.png\" ";
+ if(isBookmark())
+ result+= " bookmark=\"true\" > \n";
+ else
+ result+= " bookmark=\"false\" > \n";
+ if(_dictionaryInfo.isEmpty())
+ result+= "starDict dictionary </info>";
+ else
+ result+= _dictionaryInfo +"</info>";
+
+ /*conwert returned string to XML format*/
+ result+=starDictPlugin->search(_key, offsets.at(i), lengths.at(i));
+ result+= "</dict>";
+ }
+ return result;
}
+
void TranslationStarDict::setKey(QString _key) {
this->_key=_key;
}
+
void TranslationStarDict::setDictionaryInfo(QString _dictionaryInfo) {
this->_dictionaryInfo=_dictionaryInfo;
}