bool Bookmarks::checkAndCreateDb() {
QSqlDatabase db = getDbCnx(dbName);
- if(!db.isOpen() && !db.open()) {
- qDebug() << "Database error: " << db.lastError().text() << endl;
- return false;
- }
+ db.open();
QSqlQuery cur(db);
cur.exec("create table bookmarks(key text, normalized text, translation text)");
db.close();
-
return true;
}
void Bookmarks::clear() {
+ checkAndCreateDb();
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
void Bookmarks::add(Translation* translation) {
+ checkAndCreateDb();
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
void Bookmarks::remove(Translation* translation) {
+ checkAndCreateDb();
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
QList<Translation*> Bookmarks::list() {
+ checkAndCreateDb();
QList<Translation*> res;
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
QList<Translation*> Bookmarks::searchWordList(QString word) {
-
+ checkAndCreateDb();
if(word.indexOf("*")==-1 && word.indexOf("?")== -1)
word+="%";
word = word.replace("*", "%");
QStringList Bookmarks::search(QString word, QString dbName) {
+ checkAndCreateDb();
QStringList result;
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
bool Bookmarks::inBookmarks(QString word) {
+ checkAndCreateDb();
QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;