aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/playlistitem.h
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-08-05 11:50:37 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-08-05 11:50:37 +0000
commit245d0ac0cdb729c94ca71dc035342154d70aa8e5 (patch)
treef908567eb29ddba73c36e82511605d3635a897e8 /src/qmmpui/playlistitem.h
parentd04ab1bfe9a70049e0c9ee753835c95a6ccf2086 (diff)
downloadqmmp-245d0ac0cdb729c94ca71dc035342154d70aa8e5.tar.gz
qmmp-245d0ac0cdb729c94ca71dc035342154d70aa8e5.tar.bz2
qmmp-245d0ac0cdb729c94ca71dc035342154d70aa8e5.zip
added playlist groups, disabled broken plugins
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3564 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/playlistitem.h')
-rw-r--r--src/qmmpui/playlistitem.h74
1 files changed, 7 insertions, 67 deletions
diff --git a/src/qmmpui/playlistitem.h b/src/qmmpui/playlistitem.h
index ab8b4170d..301442e14 100644
--- a/src/qmmpui/playlistitem.h
+++ b/src/qmmpui/playlistitem.h
@@ -24,42 +24,22 @@
#include <qmmp/fileinfo.h>
#include <qmmp/qmmp.h>
+
/** @brief The PlayListItem class provides an item for use with the PlayListModel class.
* @author Ilya Kotov <forkotov02@hotmail.ru>
*/
-class PlayListItem : public QMap <Qmmp::MetaData, QString>
+class PlayListItem
{
public:
- /*!
- * Current state of playlist item.
- * FREE - instance is free and may be deleted
- * EDITING - instance is currently busy in some kind of operation(tags editing etc.)
- * and can't be deleted at the moment. Set flag SCHEDULED_FOR_DELETION for it
- * instead of delete operator call.
- */
- enum FLAGS
- {
- FREE = 0, /*!< instance is free and may be deleted */
- EDITING, /*!< instance is currently busy */
- SCHEDULED_FOR_DELETION /*!< instance is sheduled for deletion */
- };
+
/*!
* Constructs an empty plalist item.
*/
PlayListItem();
/*!
- * Constructs a new PlayListItem that is a copy of the given \b item
- */
- PlayListItem(const PlayListItem &item);
- /*!
- * Constructs plalist item with given metadata.
- * @param info Media file information.
- */
- PlayListItem(FileInfo *info);
- /*!
* Object destructor.
*/
- ~PlayListItem();
+ virtual ~PlayListItem();
/*!
* Sets item selection flag to \b select
* @param select State of selection (\b true select, \b false unselect)
@@ -70,58 +50,18 @@ public:
*/
bool isSelected() const;
/*!
- * Returns current state of the playlist item.
- */
- FLAGS flag() const;
- /*!
- * Sets state of the playlist item.
- */
- void setFlag(FLAGS);
- /*!
* Returns formatted title of the item.
*/
- const QString formattedTitle();
+ virtual const QString formattedTitle() const = 0;
/*!
* Returns formatted length of the item.
*/
- const QString formattedLength() const;
- /*!
- * Direct access to the item short title.
- * @param title New short title.
- */
- void setText(const QString &title);
- /*!
- * Returns song length in seconds.
- */
- qint64 length() const;
- /*!
- * Sets length in seconds.
- */
- void setLength(qint64 length);
- /*!
- * Same as url()
- */
- const QString url() const;
- /*!
- * Updates current metadata.
- * @param metaData Map with metadata values.
- */
- void updateMetaData(const QMap <Qmmp::MetaData, QString> &metaData);
- /*!
- * Gets new metadata from file (works for local files only).
- */
- void updateTags();
+ virtual const QString formattedLength() const = 0;
- const QString groupName() const;
+ virtual bool isGroup() const = 0;
private:
- void readMetadata();
- QString m_formattedTitle;
- QString m_formattedLength;
- FileInfo *m_info;
bool m_selected;
- FLAGS m_flag;
- qint64 m_length;
};
#endif