XdxfPlugin::~XdxfPlugin() {
delete _settings;
delete cachingDialog;
+ delete _dictDialog;
}
QSet<Translation*> translations;
QString cacheFilePath = _settings->value("cache_path");
-// QSqlDatabase::removeDatabase(cacheFilePath);
db.setDatabaseName(cacheFilePath);
if(!QFile::exists(cacheFilePath) || !db.open()) {
qDebug() << "Database error" << db.lastError().text() << endl;
CommonDictInterface* XdxfPlugin::getNew(const Settings *settings) const {
+
+ qDebug()<<"tu";
XdxfPlugin *plugin = new XdxfPlugin();
+ qDebug()<<"tu2";
if(settings){
+ qDebug()<<"tu3";
plugin->setSettings(settings);
}
return plugin;
Settings* XdxfPlugin::settings() {
+/*
+ Settings *returnSettings=new Settings;
+ QStringList list = _settings->keys();
+ foreach(QString key, list)
+ returnSettings->setValue(key,_settings->value(key));
+ return returnSettings;
+*/
return _settings;
}
void XdxfPlugin::setSettings(const Settings *settings) {
+ qDebug()<<"tu4";
if(settings) {
-
+ qDebug()<<"tu5";
bool isPathChange=false;
QString oldPath = _settings->value("path");
if(oldPath != settings->value("path")) {
if(isPathChange) {
_wordsCount=0;
- if(oldPath!="") {
+ if(oldPath!="")
_settings->setValue("cached","false");
- QSqlDatabase::removeDatabase(db_name);
+ if(_settings->value("cached")=="true"
+ && _settings->value("cache_path")!="") {
+ db_name = _settings->value("type")
+ + _settings->value("cache_path");
+ db = QSqlDatabase::addDatabase("QSQLITE",db_name);
}
- db_name = _settings->value("type") + _settings->value("path");
- db = QSqlDatabase::addDatabase("QSQLITE",db_name);
}
if((_settings->value("cached") == "false" ||
i++;
} while(QFile::exists(cachePathN));
+ db_name = _settings->value("type") + cachePathN;
+ db = QSqlDatabase::addDatabase("QSQLITE",db_name);
+
+ qDebug()<<QSqlDatabase::connectionNames().size();
+ foreach(QString name,QSqlDatabase::connectionNames())
+ qDebug()<<name;
/*checke errors (File open and db open)*/
QFile dictionaryFile(dictFileN.filePath());
if (!QFile::exists(_settings->value("path"))
timer.start();
countWords();
int lastProg = -1;
- settings()->setValue("strip_accents", "true");
+ _settings->setValue("strip_accents", "true");
counter=0;
/*add all words to db*/
void XdxfPlugin::clean() {
- if(QFile::exists(_settings->value("cache_path")))
+ if(QFile::exists(_settings->value("cache_path"))) {
QFile(_settings->value("cache_path")).remove();
+ QSqlDatabase::removeDatabase(db_name);
+ }
}