aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Ui/qsui/listwidget.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2019-05-12 09:49:15 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2019-05-12 09:49:15 +0000
commit276e2812df63848805f5a871cbf860dbf2082709 (patch)
tree09c202fbc87a30ea3641857094842e07d8633c85 /src/plugins/Ui/qsui/listwidget.cpp
parent2c9996aa5b65f939d59cc725391b8ee1e5eba893 (diff)
downloadqmmp-276e2812df63848805f5a871cbf860dbf2082709.tar.gz
qmmp-276e2812df63848805f5a871cbf860dbf2082709.tar.bz2
qmmp-276e2812df63848805f5a871cbf860dbf2082709.zip
qsui: fixed feature to remove tracks from quick search (#1000)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8869 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Ui/qsui/listwidget.cpp')
-rw-r--r--src/plugins/Ui/qsui/listwidget.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/plugins/Ui/qsui/listwidget.cpp b/src/plugins/Ui/qsui/listwidget.cpp
index 2ace2d171..0ced7bdbb 100644
--- a/src/plugins/Ui/qsui/listwidget.cpp
+++ b/src/plugins/Ui/qsui/listwidget.cpp
@@ -587,6 +587,55 @@ void ListWidget::setFilterString(const QString &str)
updateList(PlayListModel::STRUCTURE);
}
+void ListWidget::clear()
+{
+ if(m_filterMode)
+ {
+ m_model->removeTracks(m_filteredItems);
+ m_filteredItems.clear();
+ }
+ else
+ {
+ m_model->clear();
+ }
+}
+
+void ListWidget::removeSelected()
+{
+ if(m_filterMode)
+ {
+ QList<PlayListItem *> items;
+ for(PlayListItem *item : m_filteredItems)
+ {
+ if(item->isSelected())
+ items << item;
+ }
+ m_model->removeTracks(items);
+ }
+ else
+ {
+ m_model->removeSelected();
+ }
+}
+
+void ListWidget::removeUnselected()
+{
+ if(m_filterMode)
+ {
+ QList<PlayListItem *> items;
+ for(PlayListItem *item : m_filteredItems)
+ {
+ if(!item->isSelected())
+ items << item;
+ }
+ m_model->removeTracks(items);
+ }
+ else
+ {
+ m_model->removeUnselected();
+ }
+}
+
void ListWidget::updateSkin()
{
m_drawer.loadSystemColors();