diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2017-08-27 20:32:47 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2017-08-27 20:32:47 +0000 |
| commit | 3173c425fd45d11fc963467aa03dcc64bced1621 (patch) | |
| tree | 3c0efcce13e078be0fbcb88ee9ac3279888ec8ff | |
| parent | 8ebba0b38106ede308d3c2c4a07c12277ae5f702 (diff) | |
| download | qmmp-3173c425fd45d11fc963467aa03dcc64bced1621.tar.gz qmmp-3173c425fd45d11fc963467aa03dcc64bced1621.tar.bz2 qmmp-3173c425fd45d11fc963467aa03dcc64bced1621.zip | |
added clear button
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7397 90c681e8-e032-0410-971d-27865f9a5e38
| -rw-r--r-- | src/plugins/Ui/qsui/qsuiquicksearch.cpp | 14 | ||||
| -rw-r--r-- | src/plugins/Ui/qsui/qsuiquicksearch.h | 4 |
2 files changed, 17 insertions, 1 deletions
diff --git a/src/plugins/Ui/qsui/qsuiquicksearch.cpp b/src/plugins/Ui/qsui/qsuiquicksearch.cpp index 2763c9542..686c18f05 100644 --- a/src/plugins/Ui/qsui/qsuiquicksearch.cpp +++ b/src/plugins/Ui/qsui/qsuiquicksearch.cpp @@ -42,6 +42,20 @@ QSUIQuickSearch::QSUIQuickSearch(ListWidget *listWidget, QWidget *parent) : layout->addWidget(m_lineEdit); m_lineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); connect(m_lineEdit, SIGNAL(textEdited(QString)), m_listWidget, SLOT(setFilterString(QString))); + connect(m_lineEdit, SIGNAL(textChanged(QString)), SLOT(onTextChanged(QString))); connect(m_manager, SIGNAL(selectedPlayListChanged(PlayListModel*,PlayListModel*)), m_lineEdit, SLOT(clear())); connect(m_listWidget, SIGNAL(doubleClicked()), m_lineEdit, SLOT(clear())); + + m_clearButton = new QToolButton(this); + m_clearButton->setVisible(false); + m_clearButton->setAutoRaise(true); + m_clearButton->setIcon(QIcon::fromTheme("edit-clear")); + layout->addWidget(m_clearButton); + connect(m_clearButton, SIGNAL(clicked()), m_lineEdit, SLOT(clear())); + connect(m_clearButton, SIGNAL(clicked()), m_listWidget, SLOT(setFilterString())); +} + +void QSUIQuickSearch::onTextChanged(const QString &str) +{ + m_clearButton->setVisible(!str.isEmpty()); } diff --git a/src/plugins/Ui/qsui/qsuiquicksearch.h b/src/plugins/Ui/qsui/qsuiquicksearch.h index 2cb0240b1..d85b8faaa 100644 --- a/src/plugins/Ui/qsui/qsuiquicksearch.h +++ b/src/plugins/Ui/qsui/qsuiquicksearch.h @@ -27,6 +27,7 @@ class QLineEdit; class PlayListManager; class ListWidget; +class QToolButton; /** @author Ilya Kotov <forkotov02@hotmail.ru> @@ -38,12 +39,13 @@ public: explicit QSUIQuickSearch(ListWidget *listWidget, QWidget *parent = 0); private slots: - void onTextEdited(const QString &str); + void onTextChanged(const QString &str); private: QLineEdit *m_lineEdit; PlayListManager *m_manager; ListWidget *m_listWidget; + QToolButton *m_clearButton; }; |
