diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-09-25 20:52:56 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-09-25 20:52:56 +0000 |
| commit | 525d822bec49c9952388b71ffd7c293528b31c24 (patch) | |
| tree | 5573da458b29dcf72b5f9226935957c84c6d6c1f /src/ui/playlistitem.cpp | |
| parent | 9f84a7baad27edb52a1a443a1f7f3aa7ab7594c1 (diff) | |
| download | qmmp-525d822bec49c9952388b71ffd7c293528b31c24.tar.gz qmmp-525d822bec49c9952388b71ffd7c293528b31c24.tar.bz2 qmmp-525d822bec49c9952388b71ffd7c293528b31c24.zip | |
using QMap for metadata
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@561 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/ui/playlistitem.cpp')
| -rw-r--r-- | src/ui/playlistitem.cpp | 54 |
1 files changed, 27 insertions, 27 deletions
diff --git a/src/ui/playlistitem.cpp b/src/ui/playlistitem.cpp index c7f600c8e..6d30d4180 100644 --- a/src/ui/playlistitem.cpp +++ b/src/ui/playlistitem.cpp @@ -26,14 +26,14 @@ PlayListItem::PlayListItem() : SongInfo(), m_flag(FREE) { - m_tag = 0; + m_info = 0; } PlayListItem::PlayListItem(const QString& path) : SongInfo(), m_flag(FREE) { m_selected = FALSE; m_current = FALSE; - m_tag = 0; + m_info = 0; setValue(SongInfo::PATH, path); setValue(SongInfo::STREAM, path.startsWith("http://")); //TODO do this inside SongInfo QSettings settings ( QDir::homePath() +"/.qmmp/qmmprc", QSettings::IniFormat ); @@ -47,7 +47,7 @@ PlayListItem::PlayListItem(const QString& path) : SongInfo(), m_flag(FREE) if (m_use_meta && !path.startsWith("http://")) { - m_tag = Decoder::createTag(path); + m_info = Decoder::getFileInfo(path); readMetadata(); } else if (path.startsWith("http://") && m_fullStreamPath) @@ -90,28 +90,28 @@ PlayListItem::FLAGS PlayListItem::flag() const return m_flag; } -void PlayListItem::updateTags(const FileTag *tag) +/*void PlayListItem::updateTags(const FileTag *tag) { - if (m_tag) + if (m_info) { - delete m_tag; - m_tag = 0; + delete m_info; + m_info = 0; } if (!tag->isEmpty()) - m_tag = new FileTag(*tag); + m_info = new FileTag(*tag); readMetadata(); -} +}*/ void PlayListItem::updateTags() { if (path().startsWith("http://")) return; - if (m_tag) + if (m_info) { - delete m_tag; - m_tag = 0; + delete m_info; + m_info = 0; } - m_tag = Decoder::createTag(path()); + m_info = Decoder::getFileInfo(path()); readMetadata(); } @@ -129,18 +129,18 @@ void PlayListItem::readMetadata() { //clear(); m_title.clear(); - if (m_tag) //read length first - setValue(SongInfo::LENGTH, m_tag->length()); - if (m_use_meta && m_tag && !m_tag->isEmpty()) + if (m_info) //read length first //TODO fix this + setValue(SongInfo::LENGTH, uint(m_info->length())); + if (m_use_meta && m_info && !m_info->isEmpty()) { - //fill SongInfo - setValue(SongInfo::TITLE, m_tag->title()); - setValue(SongInfo::ARTIST, m_tag->artist()); - setValue(SongInfo::ALBUM, m_tag->album()); - setValue(SongInfo::COMMENT, m_tag->comment()); - setValue(SongInfo::GENRE, m_tag->genre()); - setValue(SongInfo::YEAR, m_tag->year()); - setValue(SongInfo::TRACK, m_tag->track()); + //fill SongInfo //TODO optimize + setValue(SongInfo::TITLE, m_info->metaData(Qmmp::TITLE)); + setValue(SongInfo::ARTIST, m_info->metaData(Qmmp::ARTIST)); + setValue(SongInfo::ALBUM, m_info->metaData(Qmmp::ALBUM)); + setValue(SongInfo::COMMENT, m_info->metaData(Qmmp::COMMENT)); + setValue(SongInfo::GENRE, m_info->metaData(Qmmp::GENRE)); + setValue(SongInfo::YEAR, m_info->metaData(Qmmp::YEAR).toUInt()); + setValue(SongInfo::TRACK, m_info->metaData(Qmmp::TRACK).toUInt()); //generate playlist string m_title = m_format; m_title = printTag(m_title, "%p", artist()); @@ -159,9 +159,9 @@ void PlayListItem::readMetadata() else m_title = path().split('/',QString::SkipEmptyParts).takeLast (); } - if (m_tag) - delete m_tag; - m_tag = 0; + if (m_info) + delete m_info; + m_info = 0; if (m_convertUnderscore) m_title.replace("_", " "); if (m_convertTwenty) |
