]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/FindAndReplace.cpp
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / FindAndReplace.cpp
index e91c3af639586754b48dca149c617a1fa63cf23a..50f3641b5700fa6ad0442a08c84dd0dea7f3bd49 100644 (file)
@@ -82,57 +82,64 @@ FindAndReplaceWidget::FindAndReplaceWidget(GuiView & view)
 }
 
 
-bool FindAndReplaceWidget::eventFilter(QObject *obj, QEvent *event)
+bool FindAndReplaceWidget::eventFilter(QObject * obj, QEvent * event)
 {
-       if (obj == find_work_area_
-           && event->type() == QEvent::KeyPress) {
-               QKeyEvent *e = static_cast<QKeyEvent *> (event);
-               if (e->key() == Qt::Key_Escape
-                   && e->modifiers() == Qt::NoModifier) {
+       if (event->type() != QEvent::KeyPress
+                 || (obj != find_work_area_ && obj != replace_work_area_))
+               return QWidget::eventFilter(obj, event);
+
+       QKeyEvent * e = static_cast<QKeyEvent *> (event);
+       switch (e->key()) {
+       case Qt::Key_Escape:
+               if (e->modifiers() == Qt::NoModifier) {
                        hideDialog();
                        return true;
-               } else if (e->key() == Qt::Key_Enter
-                          || e->key() == Qt::Key_Return) {
-                       if (e->modifiers() == Qt::ShiftModifier) {
+               }
+               break;
+
+       case Qt::Key_Enter:
+       case Qt::Key_Return:
+               if (e->modifiers() == Qt::ShiftModifier) {
+                       if (obj == find_work_area_)
                                on_findPrevPB_clicked();
-                               return true;
-                       } else if (e->modifiers() == Qt::NoModifier) {
+                       else
+                               on_replacePrevPB_clicked();
+                       return true;
+               } else if (e->modifiers() == Qt::NoModifier) {
+                       if (obj == find_work_area_)
                                on_findNextPB_clicked();
-                               return true;
-                       }
-               } else if (e->key() == Qt::Key_Tab
-                          && e->modifiers() == Qt::NoModifier) {
-                       LYXERR(Debug::FIND, "Focusing replace WA");
-                       replace_work_area_->setFocus();
+                       else
+                               on_replaceNextPB_clicked();
                        return true;
                }
-       }
-       if (obj == replace_work_area_
-           && event->type() == QEvent::KeyPress) {
-               QKeyEvent *e = static_cast<QKeyEvent *> (event);
-               if (e->key() == Qt::Key_Escape
-                   && e->modifiers() == Qt::NoModifier) {
-                       hideDialog();
-                       return true;
-               } else if (e->key() == Qt::Key_Enter
-                          || e->key() == Qt::Key_Return) {
-                       if (e->modifiers() == Qt::ShiftModifier) {
-                               on_replacePrevPB_clicked();
-                               return true;
-                       } else if (e->modifiers() == Qt::NoModifier) {
-                               on_replaceNextPB_clicked();
+               break;
+
+       case Qt::Key_Tab:
+               if (e->modifiers() == Qt::NoModifier) {
+                       if (obj == find_work_area_){
+                               LYXERR(Debug::FIND, "Focusing replace WA");
+                               replace_work_area_->setFocus();
                                return true;
                        }
-               } else if (e->key() == Qt::Key_Backtab) {
+               }
+               break;
+
+       case Qt::Key_Backtab:
+               if (obj == replace_work_area_) {
                        LYXERR(Debug::FIND, "Focusing find WA");
                        find_work_area_->setFocus();
                        return true;
                }
+               break;
+
+       default:
+               break;
        }
        // standard event processing
        return QWidget::eventFilter(obj, event);
 }
 
+
 static docstring buffer_to_latex(Buffer & buffer) {
        OutputParams runparams(&buffer.params().encoding());
        odocstringstream os;
@@ -328,10 +335,10 @@ docstring question_string(FindAndReplaceOptions const & opt)
        }
        docstring message = opt.forward ?
                bformat(_("End of %1$s reached while searching forward.\n"
-                         "Continue searching from begin?"),
+                         "Continue searching from the beginning?"),
                        scope) : 
-               bformat(_("Beginning of %1$s reached while searching backwards.\n"
-                         "Continue searching from end?"),
+               bformat(_("Beginning of %1$s reached while searching backward.\n"
+                         "Continue searching from the end?"),
                        scope);
 
        return message;