From 9cdff6078e0e94349c684bd3b862fdea60d3f159 Mon Sep 17 00:00:00 2001 From: Yoann Laissus Date: Sun, 21 Feb 2010 22:07:49 +0100 Subject: Clean and optimize the findBar code. Use the searchString signal. Fix the selection of the lineEdit text when the findBar is reopen. --- src/findbar.cpp | 36 +++++++----------------------------- 1 file changed, 7 insertions(+), 29 deletions(-) (limited to 'src/findbar.cpp') diff --git a/src/findbar.cpp b/src/findbar.cpp index 6b92f130..43b23035 100644 --- a/src/findbar.cpp +++ b/src/findbar.cpp @@ -43,7 +43,6 @@ #include #include #include -#include #include #include @@ -64,7 +63,6 @@ FindBar::FindBar(KMainWindow *mainwindow) hideButton->setAutoRaise(true); hideButton->setIcon(KIcon("dialog-close")); connect(hideButton, SIGNAL(clicked()), this, SLOT(hide())); - connect(hideButton, SIGNAL(clicked()), mainwindow, SLOT(findNext())); layout->addWidget(hideButton); layout->setAlignment(hideButton, Qt::AlignLeft | Qt::AlignTop); @@ -122,41 +120,21 @@ bool FindBar::matchCase() const } -void FindBar::clear() -{ - m_lineEdit->setText(QString()); -} - - void FindBar::show() { - // set focus to findbar if user select showFindBar shortcut - m_lineEdit->setFocus(); - m_lineEdit->selectAll(); - // show findbar if not visible if (isVisible()) return; - + QWidget::show(); m_hideTimer->start(60000); // emit a new find signal with the current text - QString temp = m_lineEdit->text(); - m_lineEdit->setText(""); - m_lineEdit->setText(temp); -} - - -void FindBar::keyPressEvent(QKeyEvent* event) -{ - if (event->key() == Qt::Key_Return && !m_lineEdit->text().isEmpty()) - { - emit searchString(m_lineEdit->text()); - return; - } - - QWidget::keyPressEvent(event); + emit(searchString(m_lineEdit->text())); + + // set focus to findbar if user select showFindBar shortcut + m_lineEdit->setFocus(); + m_lineEdit->selectAll(); } @@ -184,9 +162,9 @@ void FindBar::notifyMatch(bool match) } - void FindBar::hide() { m_hideTimer->stop(); QWidget::hide(); + emit(searchString(m_lineEdit->text())); } -- cgit v1.2.1