aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/tagupdater.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-09-02 09:11:40 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-09-02 09:11:40 +0000
commita2b0cb8e85797bd90666e538d2543c3a981ee51e (patch)
treed21f0bc87419349279147c22ad3d981493530eb6 /src/qmmpui/tagupdater.cpp
parentadba90cee9e3a72367f4df24c62cc38b35d5b9c3 (diff)
downloadqmmp-a2b0cb8e85797bd90666e538d2543c3a981ee51e.tar.gz
qmmp-a2b0cb8e85797bd90666e538d2543c3a981ee51e.tar.bz2
qmmp-a2b0cb8e85797bd90666e538d2543c3a981ee51e.zip
prepare for multiple tags viewer
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3677 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/tagupdater.cpp')
-rw-r--r--src/qmmpui/tagupdater.cpp30
1 files changed, 18 insertions, 12 deletions
diff --git a/src/qmmpui/tagupdater.cpp b/src/qmmpui/tagupdater.cpp
index 0b50e83cc..02f0c4590 100644
--- a/src/qmmpui/tagupdater.cpp
+++ b/src/qmmpui/tagupdater.cpp
@@ -20,23 +20,29 @@
#include "tagupdater_p.h"
-TagUpdater::TagUpdater(QObject* o, PlayListTrack* track) : m_observable(o), m_item(track)
+TagUpdater::TagUpdater(QObject* o, QList<PlayListTrack *> tracks) : m_observable(o)
{
- m_item->setFlag(PlayListTrack::EDITING);
- connect(m_observable, SIGNAL(destroyed(QObject *)),SLOT(updateTag()));
+ m_tracks = tracks;
+ foreach(PlayListTrack *t, m_tracks)
+ t->setFlag(PlayListTrack::EDITING);
+ connect(m_observable, SIGNAL(destroyed(QObject *)),SLOT(updateTags()));
connect(m_observable, SIGNAL(destroyed(QObject *)),SLOT(deleteLater()));
}
-void TagUpdater::updateTag()
+void TagUpdater::updateTags()
{
- if (m_item->flag() == PlayListTrack::SCHEDULED_FOR_DELETION)
+ foreach (PlayListTrack *t, m_tracks)
{
- delete m_item;
- m_item = NULL;
- }
- else
- {
- m_item->updateMetaData();
- m_item->setFlag(PlayListTrack::FREE);
+ if (t->flag() == PlayListTrack::SCHEDULED_FOR_DELETION)
+ {
+ delete t;
+ t = 0;
+ }
+ else
+ {
+ t->updateMetaData();
+ t->setFlag(PlayListTrack::FREE);
+ }
}
+ m_tracks.clear();
}