Miam-Player  0.8.0
A nice music player
playlistmodel.h
Go to the documentation of this file.
1 #ifndef PLAYLISTMODEL_H
2 #define PLAYLISTMODEL_H
3 
4 #include <QMediaContent>
5 #include <QMediaPlaylist>
6 #include <QMenu>
7 #include <QStandardItemModel>
8 
9 #include <model/trackdao.h>
10 #include <filehelper.h>
11 #include <mediaplaylist.h>
13 
20 class MIAMTABPLAYLISTS_LIBRARY PlaylistModel : public QStandardItemModel
21 {
22  Q_OBJECT
23  Q_ENUMS(Origin)
24 private:
26  MediaPlaylist *_mediaPlaylist;
27 
28 public:
29  explicit PlaylistModel(QObject *parent);
30 
31  enum Origin { RemoteMedia = Qt::UserRole + 1 };
32 
34  void clear();
35 
36  bool insertMedias(int rowIndex, const QList<QMediaContent> &tracks);
37 
38  bool insertMedias(int rowIndex, const QList<TrackDAO> &tracks);
39 
41  QList<QStandardItem *> internalMove(QModelIndex dest, QModelIndexList selectedIndexes);
42 
44  void insertRow(int row, const QList<QStandardItem *> & items);
45 
46  inline MediaPlaylist* mediaPlaylist() const { return _mediaPlaylist; }
47 
48  void removeTrack(int row);
49 
50 private:
51  void createLine(int row, const TrackDAO &track);
52 
53  void insertMedia(int rowIndex, const FileHelper &fileHelper);
54 };
55 
56 #endif // PLAYLISTMODEL_H
Origin
Definition: playlistmodel.h:31
The MediaPlaylist class has been created to have a custom Random mode.
Definition: mediaplaylist.h:16
The TrackDAO class is a simple wrapper which contains basic informations about a file.
Definition: trackdao.h:12
The FileHelper class is used to extract various but relevant fields in all types of tags (MP3...
Definition: filehelper.h:32
#define MIAMTABPLAYLISTS_LIBRARY
Definition: miamtabplaylists_global.hpp:8
MediaPlaylist * mediaPlaylist() const
Definition: playlistmodel.h:46
The PlaylistModel class is the underlying class for Playlist class.
Definition: playlistmodel.h:20