From 9783fa786d3c7b0da869bd09747483ea149b6e91 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Tue, 13 Jan 2015 17:38:52 +0000 Subject: added file loader optimization git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4691 90c681e8-e032-0410-971d-27865f9a5e38 --- src/qmmpui/playlistmodel.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'src/qmmpui/playlistmodel.cpp') diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index 41297b0a3..660924175 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -58,10 +58,8 @@ PlayListModel::PlayListModel(const QString &name, QObject *parent) m_play_state = new NormalPlayState(this); connect(m_ui_settings, SIGNAL(groupsChanged(bool)), SLOT(prepareGroups(bool))); connect(m_ui_settings, SIGNAL(shuffleChanged(bool)), SLOT(prepareForShufflePlaying(bool))); - connect(m_loader, SIGNAL(newTrackToAdd(PlayListTrack*)), - SLOT(add(PlayListTrack*)), Qt::QueuedConnection); - connect(m_loader, SIGNAL(newTrackToInsert(PlayListItem*, PlayListTrack*)), - SLOT(insert(PlayListItem*, PlayListTrack*)), Qt::QueuedConnection); + connect(m_loader, SIGNAL(newTracksToInsert(PlayListItem*, QList)), + SLOT(insert(PlayListItem*, QList)), Qt::QueuedConnection); connect(m_loader, SIGNAL(finished()), SLOT(preparePlayState())); connect(m_loader, SIGNAL(finished()), SIGNAL(loaderFinished())); connect(m_task, SIGNAL(finished()), SLOT(onTaskFinished())); @@ -191,7 +189,10 @@ void PlayListModel::insert(int index, PlayListTrack *track) void PlayListModel::insert(PlayListItem *before, PlayListTrack *track) { - insert(m_container->indexOf(before), track); + if(before) + insert(m_container->indexOf(before), track); + else + add(track); } void PlayListModel::insert(int index, QList tracks) @@ -223,6 +224,14 @@ void PlayListModel::insert(int index, QList tracks) emit listChanged(flags); } +void PlayListModel::insert(PlayListItem *before, QList tracks) +{ + if(before) + insert(m_container->indexOf(before), tracks); + else + add(tracks); +} + void PlayListModel::insert(int index, const QString &path) { insert(index, QStringList() << path); -- cgit v1.2.3-13-gbd6f