From 42e6605515468b0eb5ecfcffc0b032b68a65df0a Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sun, 27 Aug 2017 19:49:21 +0000 Subject: added PlayListModel::findTracks function git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7390 90c681e8-e032-0410-971d-27865f9a5e38 --- src/qmmpui/playlistmodel.cpp | 19 +++++++++++++++++++ src/qmmpui/playlistmodel.h | 2 ++ 2 files changed, 21 insertions(+) (limited to 'src') diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index 4710d1066..862d498c9 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -425,6 +425,25 @@ PlayListTrack *PlayListModel::findTrack(int track_index) const return m_container->findTrack(track_index); } +QList PlayListModel::findTracks(const QString &str) const +{ + QList items; + PlayListItem *item = 0; + if(str.isEmpty()) + return items; + + for(int i = 0; i < m_container->count(); ++i) + { + item = m_container->item(i); + if(item->isGroup()) + continue; + + if(!item->formattedTitles().filter(str, Qt::CaseInsensitive).isEmpty()) + items.append(item); + } + return items; +} + void PlayListModel::setSelected(int index, bool selected) { m_container->setSelected(index, selected); diff --git a/src/qmmpui/playlistmodel.h b/src/qmmpui/playlistmodel.h index fe5da58f6..55de460af 100644 --- a/src/qmmpui/playlistmodel.h +++ b/src/qmmpui/playlistmodel.h @@ -332,6 +332,8 @@ public: * Return null pointer if playlist does not contain track with index \b track_index. */ PlayListTrack *findTrack(int track_index) const; + + QList findTracks(const QString &str) const; /*! * Enum of the playlist update flags. */ -- cgit v1.2.3-13-gbd6f