From e928ac0349780ca9b3cebca0e5d00b750cdea2ea Mon Sep 17 00:00:00 2001 From: John Maguire Date: Thu, 28 Jun 2012 12:27:32 +0200 Subject: [PATCH] Support selectAll() in QSearchField. --- 3rdparty/qocoa/qsearchfield.h | 3 ++- 3rdparty/qocoa/qsearchfield_mac.mm | 9 +++++++++ 3rdparty/qocoa/qsearchfield_nonmac.cpp | 9 +++++++++ src/globalsearch/globalsearchview.cpp | 2 +- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/3rdparty/qocoa/qsearchfield.h b/3rdparty/qocoa/qsearchfield.h index 4b67071a7..431b0a792 100644 --- a/3rdparty/qocoa/qsearchfield.h +++ b/3rdparty/qocoa/qsearchfield.h @@ -17,8 +17,9 @@ public: public slots: void setText(const QString &text); void setPlaceholderText(const QString &text); - void clear(); + void selectAll(); + signals: void textChanged(const QString &text); void editingFinished(); diff --git a/3rdparty/qocoa/qsearchfield_mac.mm b/3rdparty/qocoa/qsearchfield_mac.mm index 4fe38fa5d..d4e8c38c0 100644 --- a/3rdparty/qocoa/qsearchfield_mac.mm +++ b/3rdparty/qocoa/qsearchfield_mac.mm @@ -140,6 +140,15 @@ void QSearchField::clear() emit textChanged(QString()); } +void QSearchField::selectAll() +{ + Q_ASSERT(pimpl); + if (!pimpl) + return; + + [pimpl->nsSearchField performSelector:@selector(selectText:)]; +} + QString QSearchField::text() const { Q_ASSERT(pimpl); diff --git a/3rdparty/qocoa/qsearchfield_nonmac.cpp b/3rdparty/qocoa/qsearchfield_nonmac.cpp index caf4b2f60..aaa46df26 100644 --- a/3rdparty/qocoa/qsearchfield_nonmac.cpp +++ b/3rdparty/qocoa/qsearchfield_nonmac.cpp @@ -117,6 +117,15 @@ void QSearchField::clear() pimpl->lineEdit->clear(); } +void QSearchField::selectAll() +{ + Q_ASSERT(pimpl && pimpl->lineEdit); + if (!(pimpl && pimpl->lineEdit)) + return; + + pimpl->lineEdit->clear(); +} + QString QSearchField::text() const { Q_ASSERT(pimpl && pimpl->lineEdit); diff --git a/src/globalsearch/globalsearchview.cpp b/src/globalsearch/globalsearchview.cpp index 61233b1de..91ccc085a 100644 --- a/src/globalsearch/globalsearchview.cpp +++ b/src/globalsearch/globalsearchview.cpp @@ -481,7 +481,7 @@ void GlobalSearchView::showEvent(QShowEvent* e) { void GlobalSearchView::FocusSearchField() { ui_->search->setFocus(); - //ui_->search->selectAll(); + ui_->search->selectAll(); } void GlobalSearchView::hideEvent(QHideEvent* e) {