aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/groupedcontainer.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-06-25 18:53:41 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-06-25 18:53:41 +0000
commit33317ad580fd2f5981f53e866b8d1795132f32bb (patch)
tree52f862c45fbd58b79912a555dbfaca73b22c2ee2 /src/qmmpui/groupedcontainer.cpp
parentaf4b2444f18a4902d380313f9fc10b91e060692c (diff)
downloadqmmp-33317ad580fd2f5981f53e866b8d1795132f32bb.tar.gz
qmmp-33317ad580fd2f5981f53e866b8d1795132f32bb.tar.bz2
qmmp-33317ad580fd2f5981f53e866b8d1795132f32bb.zip
formatter: added track number field
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@5184 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/groupedcontainer.cpp')
-rw-r--r--src/qmmpui/groupedcontainer.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/qmmpui/groupedcontainer.cpp b/src/qmmpui/groupedcontainer.cpp
index 9b62d61d6..b0fb1e540 100644
--- a/src/qmmpui/groupedcontainer.cpp
+++ b/src/qmmpui/groupedcontainer.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2013-2014 by Ilya Kotov *
+ * Copyright (C) 2013-2015 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -60,7 +60,7 @@ void GroupedContainer::addTrack(PlayListTrack *track)
m_groups.append(group);
m_items.append(group);
m_items.append(track);
- //TODO calc track number
+ track->setTrackNumber(trackCount() - 1);
}
void GroupedContainer::addTracks(QList<PlayListTrack *> tracks)
@@ -358,6 +358,7 @@ bool GroupedContainer::move(QList<int> indexes, int from, int to)
else
{
m_items.move(i,i + to - from);
+ swapTrackNumbers(i,i + to - from);
group->trackList.move(i - firstIndex - 1,
i + to - from - firstIndex - 1);
}
@@ -372,6 +373,7 @@ bool GroupedContainer::move(QList<int> indexes, int from, int to)
else
{
m_items.move(indexes[i], indexes[i] + to - from);
+ swapTrackNumbers(indexes[i], indexes[i] + to - from);
group->trackList.move(indexes[i] - firstIndex - 1,
indexes[i] + to - from - firstIndex - 1);
}
@@ -430,6 +432,13 @@ void GroupedContainer::randomizeList()
m_update = true;
}
+void GroupedContainer::swapTrackNumbers(int index1, int index2)
+{
+ int number = m_items.at(index1)->trackNumber();
+ m_items.at(index1)->setTrackNumber(m_items.at(index2)->trackNumber());
+ m_items.at(index2)->setTrackNumber(number);
+}
+
void GroupedContainer::updateCache() const
{
if(!m_update)