aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/playlistmodel.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-02-13 20:02:54 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2012-02-13 20:02:54 +0000
commit526e04b8b4d8ba43f39c0bb653200b054bf5dbd9 (patch)
tree243ac42cd058530735f62807599a36e760f377c4 /src/qmmpui/playlistmodel.cpp
parent336f191f80cbb5cfba9b4910ee1ada7a8133796e (diff)
downloadqmmp-526e04b8b4d8ba43f39c0bb653200b054bf5dbd9.tar.gz
qmmp-526e04b8b4d8ba43f39c0bb653200b054bf5dbd9.tar.bz2
qmmp-526e04b8b4d8ba43f39c0bb653200b054bf5dbd9.zip
added 'disc number' tag support for flac files with embedded cuesheet, added sorting by disc number (Brice Videau)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2601 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/playlistmodel.cpp')
-rw-r--r--src/qmmpui/playlistmodel.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp
index 50ffe35b1..bbdb64a14 100644
--- a/src/qmmpui/playlistmodel.cpp
+++ b/src/qmmpui/playlistmodel.cpp
@@ -639,6 +639,17 @@ static bool _titleGreaterComparator(PlayListItem* s1,PlayListItem* s2)
{
return QString::localeAwareCompare (s1->value(Qmmp::TITLE), s2->value(Qmmp::TITLE)) > 0;
}
+
+//by album+disc
+static bool _discnumberLessComparator(PlayListItem* s1,PlayListItem* s2)
+{
+ return QString::localeAwareCompare (s1->value(Qmmp::DISCNUMBER), s2->value(Qmmp::DISCNUMBER)) < 0;
+}
+
+static bool _discnumberGreaterComparator(PlayListItem* s1,PlayListItem* s2)
+{
+ return QString::localeAwareCompare (s1->value(Qmmp::DISCNUMBER), s2->value(Qmmp::DISCNUMBER)) > 0;
+}
//by album
static bool _albumLessComparator(PlayListItem* s1,PlayListItem* s2)
{
@@ -722,6 +733,10 @@ void PlayListModel::doSort(int sort_mode,QList<PlayListItem*>& list_to_sort)
compareLessFunc = _titleLessComparator;
compareGreaterFunc = _titleGreaterComparator;
break;
+ case DISCNUMBER:
+ compareLessFunc = _discnumberLessComparator;
+ compareGreaterFunc = _discnumberGreaterComparator;
+ break;
case ALBUM:
compareLessFunc = _albumLessComparator;
compareGreaterFunc = _albumGreaterComparator;