Added changes to run search of translation in different thread
authorMateusz Półrola <mateusz.polrola@comarch.pl>
Tue, 10 Aug 2010 10:03:13 +0000 (12:03 +0200)
committerMateusz Półrola <mateusz.polrola@comarch.pl>
Tue, 10 Aug 2010 10:03:13 +0000 (12:03 +0200)
trunk/src/base/gui/MainWindow.cpp
trunk/src/base/gui/SearchBarWidget.cpp
trunk/src/base/gui/SearchBarWidget.h
trunk/src/base/gui/TranslationWidget.cpp
trunk/src/base/gui/TranslationWidget.h
trunk/src/base/gui/WordListWidget.cpp
trunk/src/base/gui/WordListWidget.h

index 7e673d8..c2113d9 100644 (file)
@@ -53,8 +53,14 @@ MainWindow::MainWindow(Backbone *backbone, QWidget *parent):
     connect(this, SIGNAL(searchWordList(QStringList)),
             searchBarWidget, SLOT(searchWordList(QStringList)));
 
-    connect(wordListWidget, SIGNAL(showTranslation(QList<Translation*>)),
-            translationWidget, SLOT(show(QList<Translation*>)));
+    connect(backbone, SIGNAL(htmlReady())),
+            translationWidget, SLOT(show());
+
+    connect(backbone, SIGNAL(htmlReady()),
+            searchBarWidget, SLOT(showIdle()));
+
+    connect(wordListWidget, SIGNAL(clicked(QModelIndex)),
+            searchBarWidget, SLOT(showBusy()));
 
     ui->centralWidget->layout()->addWidget(wordListWidget);
     ui->centralWidget->layout()->addWidget(searchBarWidget);
index 168b968..8046bda 100644 (file)
@@ -190,6 +190,15 @@ void SearchBarWidget::setEnabled(bool enabled) {
     historyShowToolButton->setEnabled(enabled);
 }
 
+void SearchBarWidget::showBusy() {
+    searchingProgressBar->show();
+    setEnabled(false);
+}
+
+void SearchBarWidget::showIdle() {
+    searchingProgressBar->hide();
+    setEnabled(true);
+}
 
 void SearchBarWidget::searchFinished() {
         searchingProgressBar->hide();
index 0c7ca2d..a502973 100644 (file)
@@ -61,6 +61,8 @@ public Q_SLOTS:
     void setEnabled(bool enabled = true);
     void searchFinished();
     void searchWordList(QStringList);
+    void showBusy();
+    void showIdle();
 
 private Q_SLOTS:
     void clearSearchWordToolButtonClicked();
index 37fe4d3..8aa99ad 100644 (file)
@@ -46,24 +46,20 @@ TranslationWidget::TranslationWidget(Backbone *backbone, QWidget *parent):
 
 void TranslationWidget::show() {
     QWidget::show();
-}
-
-void TranslationWidget::show(QList<Translation*> translations) {
-
-    show();
 
     textEdit->clear();
 
+    QStringList translations = backbone->htmls();
+
     QString trans;
-    Translation* t;
+    QString t;
     foreach(t, translations) {
-        trans += t->toHtml() + "\n";
+        trans += t + "\n";
     }
 
     textEdit->setPlainText(trans);
 
     textEdit->repaint(this->rect());
-
 }
 
 void TranslationWidget::initializeUI() {
index 5ad03fc..919445a 100644 (file)
@@ -43,7 +43,6 @@ Q_SIGNALS:
 public Q_SLOTS:
     //! Request to show translation of word passed as QModelIndex from word list
     void show();
-    void show(QList<Translation*>);
 
 private Q_SLOTS:
     void showContextMenu(QPoint pos);
index 3821834..94fcde3 100644 (file)
@@ -78,5 +78,5 @@ void WordListWidget::showSearchResults() {
 }
 
 void WordListWidget::itemClicked(QModelIndex index) {
-    emit showTranslation(searchResult[index.model()->data(index).toString()]);
+    backbone->searchHtml(searchResult[index.model()->data(index).toString()]);
 }
index b505443..84ad86e 100644 (file)
@@ -28,7 +28,7 @@
 #include <QtGui>
 #include <QStringListModel>
 #include "../backbone/backbone.h"
-
+#include "SearchBarWidget.h"
 
 //! Displays list of words found in dictionaries
 /*!