aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/playlistcontainer.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-01-09 12:01:22 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-01-09 12:01:22 +0000
commitebd7f9bc697973366de8a6bf7265051e825e0680 (patch)
tree1feb9df1c5fe3493e9aa1dd8f5d6233a38ae9d3c /src/qmmpui/playlistcontainer.cpp
parentbc7ad688c646afd2a89e5c5ff58696f2df2c8605 (diff)
downloadqmmp-ebd7f9bc697973366de8a6bf7265051e825e0680.tar.gz
qmmp-ebd7f9bc697973366de8a6bf7265051e825e0680.tar.bz2
qmmp-ebd7f9bc697973366de8a6bf7265051e825e0680.zip
renaming experimental branch
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4675 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/playlistcontainer.cpp')
-rw-r--r--src/qmmpui/playlistcontainer.cpp205
1 files changed, 0 insertions, 205 deletions
diff --git a/src/qmmpui/playlistcontainer.cpp b/src/qmmpui/playlistcontainer.cpp
index 7772d1b3e..c7aaf3482 100644
--- a/src/qmmpui/playlistcontainer.cpp
+++ b/src/qmmpui/playlistcontainer.cpp
@@ -28,208 +28,3 @@ void PlayListContainer::addTrack(PlayListTrack *track)
{
addTracks(QList<PlayListTrack *> () << track);
}
-
-////===============THE BEGINNING OF SORT IMPLEMENTATION =======================////
-
-// First we'll implement bundle of static compare procedures
-// to sort items in different ways
-
-//by title
-static bool _titleLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::TITLE), s2->value(Qmmp::TITLE)) < 0;
-}
-
-static bool _titleGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::TITLE), s2->value(Qmmp::TITLE)) > 0;
-}
-//by album+disc
-static bool _discnumberLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::DISCNUMBER), s2->value(Qmmp::DISCNUMBER)) < 0;
-}
-
-static bool _discnumberGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::DISCNUMBER), s2->value(Qmmp::DISCNUMBER)) > 0;
-}
-//by album
-static bool _albumLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ALBUM), s2->value(Qmmp::ALBUM)) < 0;
-}
-
-static bool _albumGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ALBUM), s2->value(Qmmp::ALBUM)) > 0;
-}
-//by artist
-static bool _artistLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ARTIST), s2->value(Qmmp::ARTIST)) < 0;
-}
-
-static bool _artistGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ARTIST), s2->value(Qmmp::ARTIST)) > 0;
-}
-//by album artist
-static bool _albumArtistLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ALBUMARTIST), s2->value(Qmmp::ALBUMARTIST)) < 0;
-}
-
-static bool _albumArtistGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->value(Qmmp::ALBUMARTIST), s2->value(Qmmp::ALBUMARTIST)) > 0;
-}
-//by path
-static bool _pathAndFilenameLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->url(), s2->url()) < 0;
-}
-
-static bool _pathAndFilenameGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->url(), s2->url()) > 0;
-}
-//by file name
-static bool _filenameLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- QFileInfo i_s1(s1->url());
- QFileInfo i_s2(s2->url());
- return QString::localeAwareCompare (i_s1.baseName(), i_s2.baseName()) < 0;
-}
-
-static bool _filenameGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- QFileInfo i_s1(s1->url());
- QFileInfo i_s2(s2->url());
- return QString::localeAwareCompare (i_s1.baseName(), i_s2.baseName()) > 0;
-}
-//by date
-static bool _dateLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return s1->value(Qmmp::YEAR).toInt() < s2->value(Qmmp::YEAR).toInt();
-}
-
-static bool _dateGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return s1->value(Qmmp::YEAR).toInt() > s2->value(Qmmp::YEAR).toInt();
-}
-//by track
-static bool _trackLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return s1->value(Qmmp::TRACK).toInt() < s2->value(Qmmp::TRACK).toInt();
-}
-
-static bool _trackGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return s1->value(Qmmp::TRACK).toInt() > s2->value(Qmmp::TRACK).toInt();
-}
-//by file creation date
-static bool _fileCreationDateLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QFileInfo(s1->value(Qmmp::URL)).created() < QFileInfo(s2->value(Qmmp::URL)).created();
-}
-
-static bool _fileCreationDateGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QFileInfo(s1->value(Qmmp::URL)).created() > QFileInfo(s2->value(Qmmp::URL)).created();
-}
-//by file modification date
-static bool _fileModificationDateLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QFileInfo(s1->value(Qmmp::URL)).lastModified() < QFileInfo(s2->value(Qmmp::URL)).lastModified();
-}
-
-static bool _fileModificationDateGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QFileInfo(s1->value(Qmmp::URL)).lastModified() > QFileInfo(s2->value(Qmmp::URL)).lastModified();
-}
-
-//by group
-static bool _groupLessComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->groupName(), s2->groupName()) < 0;
-}
-
-static bool _groupGreaterComparator(PlayListTrack* s1,PlayListTrack* s2)
-{
- return QString::localeAwareCompare (s1->groupName(), s2->groupName()) > 0;
-}
-
-void PlayListContainer::doSort(int sort_mode, QList<PlayListTrack*>& list_to_sort, bool reverted)
-{
- QList<PlayListTrack*>::iterator begin;
- QList<PlayListTrack*>::iterator end;
-
- begin = list_to_sort.begin();
- end = list_to_sort.end();
-
- bool(*compareLessFunc)(PlayListTrack*,PlayListTrack*) = 0;
- bool(*compareGreaterFunc)(PlayListTrack*,PlayListTrack*) = 0;
-
- switch (sort_mode)
- {
- case PlayListModel::TITLE:
- compareLessFunc = _titleLessComparator;
- compareGreaterFunc = _titleGreaterComparator;
- break;
- case PlayListModel::DISCNUMBER:
- compareLessFunc = _discnumberLessComparator;
- compareGreaterFunc = _discnumberGreaterComparator;
- break;
- case PlayListModel::ALBUM:
- compareLessFunc = _albumLessComparator;
- compareGreaterFunc = _albumGreaterComparator;
- break;
- case PlayListModel::ARTIST:
- compareLessFunc = _artistLessComparator;
- compareGreaterFunc = _artistGreaterComparator;
- break;
- case PlayListModel::ALBUMARTIST:
- compareLessFunc = _albumArtistLessComparator;
- compareGreaterFunc = _albumArtistGreaterComparator;
- break;
- case PlayListModel::FILENAME:
- compareLessFunc = _filenameLessComparator;
- compareGreaterFunc = _filenameGreaterComparator;
- break;
- case PlayListModel::PATH_AND_FILENAME:
- compareLessFunc = _pathAndFilenameLessComparator;
- compareGreaterFunc = _pathAndFilenameGreaterComparator;
- break;
- case PlayListModel::DATE:
- compareLessFunc = _dateLessComparator;
- compareGreaterFunc = _dateGreaterComparator;
- break;
- case PlayListModel::TRACK:
- compareLessFunc = _trackLessComparator;
- compareGreaterFunc = _trackGreaterComparator;
- break;
- case PlayListModel::FILE_CREATION_DATE:
- compareLessFunc = _fileCreationDateLessComparator;
- compareGreaterFunc = _fileCreationDateGreaterComparator;
- break;
- case PlayListModel::FILE_MODIFICATION_DATE:
- compareLessFunc = _fileModificationDateLessComparator;
- compareGreaterFunc = _fileModificationDateGreaterComparator;
- break;
- case PlayListModel::GROUP:
- compareLessFunc = _groupLessComparator;
- compareGreaterFunc = _groupGreaterComparator;
- break;
- default:
- compareLessFunc = _titleLessComparator;
- compareGreaterFunc = _titleGreaterComparator;
- }
-
- if(reverted)
- qStableSort(begin,end,compareGreaterFunc);
- else
- qStableSort(begin,end,compareLessFunc);
-}
-
-////=============== THE END OF SORT IMPLEMENTATION =======================////