Added direct search of translation, changed searching for translation of words list...
[mdictionary] / trunk / src / base / gui / SearchBarWidget.cpp
index 65edf61..3c66688 100644 (file)
@@ -58,8 +58,8 @@ SearchBarWidget::SearchBarWidget(Backbone* backbone, QWidget *parent) :
 
 
     //connects request to backbone
-    connect(this, SIGNAL(searchForTranslations(QStringList)),
-            backbone, SLOT(search(QStringList)));
+    connect(this, SIGNAL(searchForTranslations(QString)),
+            backbone, SLOT(search(QString)));
 
     connect(this, SIGNAL(stopSearching()),
             backbone, SLOT(stopSearching()));
@@ -77,6 +77,20 @@ SearchBarWidget::~SearchBarWidget() {
 
 }
 
+QIcon SearchBarWidget::generateIcon(QIcon oryginal, qreal rotation) {
+    QPixmap p = oryginal.pixmap(64);
+
+    QIcon newIcon;
+    newIcon.addPixmap(p);
+
+    QPainter painter(&p);
+    painter.fillRect(p.rect(), QColor(0,0,0,192));
+
+    newIcon.addPixmap(p, QIcon::Disabled, QIcon::Off);
+
+    return newIcon;
+}
+
 
 void SearchBarWidget::initializeUI() {
     horizontalLayout = new QHBoxLayout();
@@ -103,21 +117,28 @@ void SearchBarWidget::initializeUI() {
 
 
     historyNextToolButton = new QToolButton();
-    historyNextToolButton->setIcon(QIcon::fromTheme("general_forward"));
+    historyNextToolButton->setIcon(
+            generateIcon(QIcon::fromTheme("general_forward")));
 
     historyPrevToolButton = new QToolButton();
-    historyPrevToolButton->setIcon(QIcon::fromTheme("general_back"));
+    historyPrevToolButton->setIcon(
+            generateIcon(QIcon::fromTheme("general_back")));
 
     historyShowToolButton = new QToolButton();
-    historyShowToolButton->setIcon(QIcon::fromTheme("general_back"));
+    historyShowToolButton->setIcon(
+            generateIcon(QIcon::fromTheme("general_back")));
+
 
     QPixmap p = historyShowToolButton->icon().pixmap(256);
+    qDebug()<<p.size();
     QMatrix m;
     m.rotate(90);
 
+    QPixmap p2 = p.transformed(m);
+    qDebug()<<p2.size();
+
 
-    QIcon temp;
-    temp.addPixmap(p.transformed(m));
+    QIcon temp(p2);
     historyShowToolButton->setIcon(temp);
 
 
@@ -156,18 +177,16 @@ void SearchBarWidget::searchPushButtonClicked() {
         emit stopSearching();
     }
     else {
-        if(searchWordLineEdit->text().isEmpty()) return;
-        setBusy();
-        QStringList searchWord;
-        searchWord << searchWordLineEdit->text();
-        emit searchForTranslations(searchWord);
+        search(searchWordLineEdit->text());
     }
 }
 
-void SearchBarWidget::searchWordList(QStringList words) {
-    if(!_isSearching) {
+
+void SearchBarWidget::search(QString word) {
+    if(!_isSearching && !word.isEmpty()) {
+        searchWordLineEdit->setText(word);
         setBusy();
-        emit searchForTranslations(words);
+        emit searchForTranslations(word);
     }
 }