#include "MainWindow.h"
#include "ui_MainWindow.h"
+#include <QtGui>
#ifdef Q_WS_MAEMO_5
#include <QMaemo5InformationBox>
#endif
connectTranslationWidget();
connectDictManager();
connectMenu();
+ connectBookmarksWidget();
+
setExactSearch(false);
//only create it with this widget as parent
translationWidget = new TranslationWidget(this);
+ welcomeScreenWidget = new WelcomeScreenWidget;
+
#ifdef Q_WS_MAEMO_5
- ui->centralWidget->layout()->addWidget(wordListWidget);
+ ui->centralWidget->layout()->addWidget(welcomeScreenWidget);
#else
+ translationWidget->hide();
splitter = new QSplitter(Qt::Horizontal);
splitter->addWidget(wordListWidget);
- splitter->addWidget(translationWidget);
+ splitter->addWidget(welcomeScreenWidget);
splitter->setStretchFactor(1, 150);
ui->centralWidget->layout()->addWidget(splitter);
#endif
- ui->centralWidget->layout()->addWidget(searchBarWidget);
-
+ QVBoxLayout* vl = (QVBoxLayout*)(ui->centralWidget->layout());
+ vl->addWidget(searchBarWidget, 0, Qt::AlignBottom);
dictManagerWidget = new DictManagerWidget(this);
dictManagerWidget->hide();
+
+ settingsWidget = new SettingsWidget(this);
+ settingsWidget->hide();
+
+ bookmarksWidget = new BookmarksWidget(this);
+ bookmarksWidget->hide();
+
+ menu = new QMenu(this);
#ifdef Q_WS_MAEMO_5
menuWidget = new MenuWidget(this);
+ menuWidget->addSubMenu(tr("Settings"), settingsWidget);
menuWidget->addSubMenu(tr("Dictionaries"), dictManagerWidget);
- menuWidget->addSubMenu(tr("Settings"), new QPushButton("Settings"));
+ menuWidget->addSubMenu(tr("Bookmarks"), bookmarksWidget);
menuWidget->addSubMenu(tr("About"), new QPushButton("About"));
- ui->menuBar->addAction(menuWidget);
+ menu->addAction(menuWidget);
+ ui->menuBar->addMenu(menu);
#else
dictionariesAction = ui->menuBar->addAction(tr("Dictionaries"));
connect(dictionariesAction, SIGNAL(triggered()),
dictManagerWidget, SLOT(show()));
+
+ settingsAction = ui->menuBar->addAction(tr("Settings"));
+ connect(settingsAction, SIGNAL(triggered()),
+ settingsWidget, SLOT(show()));
+
+ bookmarksAction = ui->menuBar->addAction(tr("Bookmarks"));
+ connect(bookmarksAction, SIGNAL(triggered()),
+ bookmarksWidget, SLOT(show()));
#endif
}
QMultiHash<QString, Translation*> res = backbone->result();
QHash<QString, QList<Translation*> > searchResult;
+ #ifdef Q_WS_MAEMO_5
+ if(!wordListWidget->isVisible()) {
+ int i = ui->centralWidget->layout()->indexOf(welcomeScreenWidget);
+ QBoxLayout* l = (QBoxLayout*)(ui->centralWidget->layout());
+ l->removeWidget(welcomeScreenWidget);
+ l->insertWidget(0, wordListWidget);
+ qDebug()<<"changed";
+ }
+ #endif
+
//if nothing was found
if(res.count() == 0) {
#ifdef Q_WS_MAEMO_5
emit showWordList(searchResult);
}
else {
-
+ #ifndef Q_WS_MAEMO_5
+ emit showWordList(searchResult);
+ #endif
bool foundExactMatch = false;
QHash<QString, QList<Translation*> >::iterator j;
for(j = searchResult.begin(); j != searchResult.end(); j++) {
}
void MainWindow::translationsReady() {
+ #ifndef Q_WS_MAEMO_5
+ if(!translationWidget->isVisible()) {
+ int i = ui->centralWidget->layout()->indexOf(welcomeScreenWidget);
+ QBoxLayout* l = (QBoxLayout*)(ui->centralWidget->layout());
+ QSplitter* s = (QSplitter*)((QWidgetItem*)(l->itemAt(0))->widget());
+ s->insertWidget(1,translationWidget);
+ s->setStretchFactor(1, 150);
+ welcomeScreenWidget->deleteLater();
+ qDebug()<<"changed";
+ }
+ #endif
+
emit showTranslation(backbone->htmls());
}
void MainWindow::historyNext() {
if(backbone->history()->nextAvailable()) {
QString next = backbone->history()->next();
+ #ifndef Q_WS_MAEMO_5
+ setExactSearch(true);
+ #endif
searchBarWidget->searchDelay(next);
}
}
void MainWindow::historyPrev() {
if(backbone->history()->prevAvailable()) {
+ #ifndef Q_WS_MAEMO_5
+ setExactSearch(true);
+ #endif
QString prev = backbone->history()->previous();
searchBarWidget->searchDelay(prev);
}
}
}
+void MainWindow::setSettings(Settings *s) {
+ backbone->setSettings(s);
+}
+
+Settings* MainWindow::settings() {
+ return backbone->settings();
+}
+
void MainWindow::connectBackbone() {
connect(this, SIGNAL(quit()),
backbone, SLOT(quit()));
connect(this, SIGNAL(setIdle()),
this, SLOT(enableMenu()));
}
+
+
+void MainWindow::showAllBookmarks() {
+ qDebug()<<"asdas";
+}
+
+void MainWindow::connectBookmarksWidget() {
+ connect(bookmarksWidget, SIGNAL(removeAllBookmarks()),
+ backbone, SLOT(removeAllBookmark()));
+
+ connect(bookmarksWidget, SIGNAL(showAllBookmarks()),
+ menu, SLOT(hide()));
+
+ connect(menu, SIGNAL(aboutToHide()),
+ this, SLOT(showAllBookmarks()));
+}