}
+QSqlDatabase Bookmarks::getDbCnx(QString dbName) {
+ QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
+ QString("%2").arg((int)QThread::currentThreadId()));
+ db.setDatabaseName(dbName);
+ return db;
+}
bool Bookmarks::checkAndCreateDb() {
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return false;
void Bookmarks::clear() {
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return ;
void Bookmarks::add(Translation* translation) {
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return ;
void Bookmarks::remove(Translation* translation) {
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
-
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return ;
QList<Translation*> Bookmarks::list() {
QList<Translation*> res;
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return res;
word = removeAccents(word);
QList<Translation*> tr;
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
- qDebug()<<dbName;
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return tr;
QSet<QString> res;
while(cur.next())
res.insert(cur.value(0).toString());
- qDebug() << "searchWordList " << res.size();
foreach(QString str, res.toList())
tr.append(new BookmarkTranslation(str, this, dbName));
db.close();
QStringList Bookmarks::search(QString word, QString dbName) {
- qDebug() << "bookmarks::search " << word << " |" << dbName;
QStringList result;
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return result;
}
- qDebug() << "bookmarks::search " << word;
QSqlQuery cur(db);
- qDebug() << "bookmarks::search " << word;
cur.prepare("select translation from bookmarks where key=?");
cur.addBindValue(word);
cur.exec();
while(cur.next())
result << cur.value(0).toString();
- qDebug() << result.size() << " " << result;
db.close();
return result;
}
bool Bookmarks::inBookmarks(QString word) {
- QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE",
- QString((int)QThread::currentThreadId()));
- db.setDatabaseName(dbName);
+ QSqlDatabase db = getDbCnx(dbName);
if(!db.isOpen() && !db.open()) {
qDebug() << "Database error: " << db.lastError().text() << endl;
return false;
-#-------------------------------------------------
-#
+# -------------------------------------------------
# Project created by QtCreator 2010-08-03T08:54:27
-#
-#-------------------------------------------------
-
-QT += core gui sql
-
-maemo5 {
- QT += maemo5
-}
-
+# -------------------------------------------------
+QT += core \
+ gui \
+ sql
+maemo5:QT += maemo5
TARGET = mdictionary
TEMPLATE = app
-
MDICT_BINDIR = $$[MDICT_BINDIR]
-
-isEmpty(MDICT_BINDIR) {
- MDICT_BINDIR = .
-}
-
+isEmpty(MDICT_BINDIR):MDICT_BINDIR = .
DESTDIR = $${MDICT_BINDIR}
-
-SOURCES += gui/main.cpp\
- gui/MainWindow.cpp \
+SOURCES += gui/main.cpp \
+ gui/MainWindow.cpp \
gui/SearchBarWidget.cpp \
gui/WordListWidget.cpp \
gui/TranslationWidget.cpp \
backbone/Bookmarks.cpp \
gui/SettingsWidget.cpp \
gui/BookmarksWidget.cpp \
- gui/WelcomeScreenWidget.cpp
+ gui/WelcomeScreenWidget.cpp \
+ gui/AboutWidget.cpp
HEADERS += gui/MainWindow.h \
+ gui/AboutWidget.h \
gui/SearchBarWidget.h \
gui/WordListWidget.h \
gui/TranslationWidget.h \
gui/WelcomeScreenWidget.h
FORMS += gui/MainWindow.ui
+RESOURCES += gui/gui.qrc
unix {
#VARIABLES
}
desktop.files += ../../../data/other/$${TARGET}.desktop
icon64.files += ../../../data/icons/64x64/$${TARGET}.png
+unix {
+ # VARIABLES
+ isEmpty(PREFIX):PREFIX = /usr
+ BINDIR = $$PREFIX/bin
+ DATADIR = $$PREFIX/share
+ DEFINES += DATADIR=\\\"$$DATADIR\\\" \
+ PKGDATADIR=\\\"$$PKGDATADIR\\\"
+
+ # MAKE INSTALL
+ INSTALLS += target \
+ desktop \
+ icon64 \
+ configs
+ configs.path = ~/.mdictionary
+ configs.files += ../../../data/mdictionary.defaults
+ target.path = $$BINDIR
+ maemo5 {
+ desktop.path = $$DATADIR/applications/hildon
+ icon64.path = $$DATADIR/icons/hicolor/64x64/hildon
+ }
+ !maemo5 {
+ desktop.path = $$DATADIR/applications
+ icon64.path = $$DATADIR/icons
+ }
+ desktop.files += ../../../data/other/$${TARGET}.desktop
+ icon64.files += ../../../data/icons/64x64/$${TARGET}.png
}
-
-RESOURCES += \
- gui/gui.qrc
bookmarksWidget->hide();
menu = new QMenu(this);
+
+ aboutWidget = new AboutWidget(this);
+ aboutWidget->hide();
+
+
+
#ifdef Q_WS_MAEMO_5
menuWidget = new MenuWidget(this);
menuWidget->addSubMenu(tr("Settings"), settingsWidget);
menuWidget->addSubMenu(tr("Dictionaries"), dictManagerWidget);
menuWidget->addSubMenu(tr("Bookmarks"), bookmarksWidget);
- menuWidget->addSubMenu(tr("About"), new QPushButton("About"));
- menu->addAction(menuWidget);
- ui->menuBar->addMenu(menu);
+ menuWidget->addSubMenu(tr("About"), aboutWidget);
+ ui->menuBar->addAction(menuWidget);
#else
dictionariesAction = ui->menuBar->addAction(tr("Dictionaries"));
connect(dictionariesAction, SIGNAL(triggered()),
bookmarksAction = ui->menuBar->addAction(tr("Bookmarks"));
connect(bookmarksAction, SIGNAL(triggered()),
bookmarksWidget, SLOT(show()));
+
+ aboutAction = ui->menuBar->addAction(tr("About"));
+ connect(aboutAction, SIGNAL(triggered()),
+ aboutWidget, SLOT(show()));
#endif
}