21 #ifndef PLAYLISTCONTAINER_P_H
22 #define PLAYLISTCONTAINER_P_H
26 #include "playlistitem.h"
27 #include "playlisttrack.h"
28 #include "playlistgroup.h"
36 class PlayListContainer
40 virtual ~PlayListContainer(){}
43 virtual void addTracks(
const QList<PlayListTrack *> &tracks) = 0;
45 virtual void replaceTracks(
const QList<PlayListTrack *> &tracks) = 0;
46 virtual QList<PlayListGroup *> groups()
const = 0;
47 virtual const QList<PlayListItem *> &items()
const = 0;
48 virtual QList<PlayListTrack *> tracks()
const = 0;
49 virtual int count()
const = 0;
50 virtual int trackCount()
const = 0;
51 virtual QList<PlayListItem *> mid(
int pos,
int count)
const = 0;
52 virtual bool isEmpty()
const = 0;
53 virtual bool isSelected(
int index)
const = 0;
54 virtual void setSelected(
int index,
bool selected) = 0;
55 virtual void clearSelection() = 0;
61 virtual int indexOfTrack(
int index)
const = 0;
64 virtual void removeTracks(QList<PlayListTrack *> tracks) = 0;
65 virtual bool move(
const QList<int> &indexes,
int from,
int to) = 0;
66 virtual QList<PlayListTrack *> takeAllTracks() = 0;
67 virtual void clear() = 0;
69 virtual void reverseList() = 0;
70 virtual void randomizeList() = 0;
76 void restoreQueue(
const QList<PlayListTrack *> &tracks);
77 const QList<PlayListTrack *> &queuedTracks()
const;
80 void swapTrackNumbers(QList<PlayListItem *> *container,
int index1,
int index2);
83 void updateQueueIndexes();
84 QQueue<PlayListTrack *> m_queue;
The PlayListTrack class provides a group for use with the PlayListModel class.
Definition: playlistgroup.h:34
The PlayListItem class provides an item for use with the PlayListModel class.
Definition: playlistitem.h:32
The PlayListTrack class provides a track for use with the PlayListModel class.
Definition: playlisttrack.h:37