aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/playlistmanager.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-08-13 15:01:53 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-08-13 15:01:53 +0000
commit83301f7d3943cc55b6dc1cdc5a503d1fdb128b29 (patch)
tree36d77b30bb72afe4e29ee8dbf0ad2cccff8d54d0 /src/qmmpui/playlistmanager.cpp
parente7dd6e5afa7bab562c26b68af1cb50a5582b0b2d (diff)
downloadqmmp-83301f7d3943cc55b6dc1cdc5a503d1fdb128b29.tar.gz
qmmp-83301f7d3943cc55b6dc1cdc5a503d1fdb128b29.tar.bz2
qmmp-83301f7d3943cc55b6dc1cdc5a503d1fdb128b29.zip
fixed saving of current track
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3589 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/playlistmanager.cpp')
-rw-r--r--src/qmmpui/playlistmanager.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/qmmpui/playlistmanager.cpp b/src/qmmpui/playlistmanager.cpp
index ba644024a..f6774e4b4 100644
--- a/src/qmmpui/playlistmanager.cpp
+++ b/src/qmmpui/playlistmanager.cpp
@@ -278,7 +278,7 @@ bool PlayListManager::isShuffle() const
void PlayListManager::readPlayLists()
{
QString line, param, value;
- int s = 0, row = 0, pl = 0;
+ int s = 0, current = 0, pl = 0;
QList <PlayListTrack *> tracks;
QFile file(QDir::homePath() +"/.qmmp/playlist.txt");
file.open(QIODevice::ReadOnly);
@@ -300,19 +300,18 @@ void PlayListManager::readPlayLists()
pl = value.toInt();
else if(param == "playlist")
{
-
if(!m_models.isEmpty())
{
m_models.last()->add(tracks);
- m_models.last()->setCurrent(row);
+ m_models.last()->setCurrent(tracks.at(qBound(0, current, tracks.count()-1)));
}
tracks.clear();
- row = 0;
+ current = 0;
m_models << new PlayListModel(value, this);
}
else if (param == "current")
{
- row = value.toInt();
+ current = value.toInt();
}
else if (param == "file")
{
@@ -346,7 +345,7 @@ void PlayListManager::readPlayLists()
if(!m_models.isEmpty())
{
m_models.last()->add(tracks);
- m_models.last()->setCurrent(row);
+ m_models.last()->setCurrent(tracks.at(qBound(0, current, tracks.count()-1)));
}
else
m_models << new PlayListModel(tr("Playlist"),this);
@@ -372,7 +371,7 @@ void PlayListManager::writePlayLists()
{
QList<PlayListItem *> items = model->items();
file.write(QString("playlist=%1\n").arg(model->name()).toUtf8());
- file.write(QString("current=%1\n").arg(model->currentIndex()).toUtf8());
+ file.write(QString("current=%1\n").arg(model->numberOfTrack(model->currentIndex())).toUtf8());
foreach(PlayListItem* m, items)
{
if(m->isGroup())