1 #ifndef PLAYLISTDIALOG_H 2 #define PLAYLISTDIALOG_H 5 #include <QStackedLayout> 6 #include <QStandardItem> 25 QLabel *_labelEmptyPreview;
28 QStackedLayout *_stackLayout;
31 QStandardItemModel *_unsavedPlaylistModel, *_savedPlaylistModel;
33 QList<Playlist*> _playlists;
34 QMap<QStandardItem*, Playlist*> _unsaved;
35 QMap<QStandardItem*, PlaylistDAO> _saved;
41 PlaylistModified = Qt::UserRole + 2};
45 inline void setPlaylists(
const QList<Playlist*> &playlists) { _playlists = playlists; }
48 virtual bool eventFilter(QObject *obj, QEvent *event)
override;
51 void clearPreview(
bool aboutToInsertItems =
true);
54 static QString convertNameToValidFileName(
const QString &name);
58 virtual int exec()
override;
62 void deleteSavedPlaylists();
64 void dropAutoSavePlaylists(
const QModelIndex &,
int start,
int);
67 void exportSelectedPlaylist();
70 void loadSelectedPlaylists();
72 void populatePreviewFromSaved(
const QItemSelection &,
const QItemSelection &);
74 void populatePreviewFromUnsaved(
const QItemSelection &,
const QItemSelection &);
76 void renameItem(QStandardItem *item);
79 void updatePlaylists();
82 void aboutToLoadPlaylist(
uint playlistId);
83 void aboutToSavePlaylist(
Playlist *playlist,
bool overwrite);
84 void aboutToRenamePlaylist(
Playlist *playlist);
86 void aboutToDeletePlaylist(
uint playlistId);
89 #endif // PLAYLISTDIALOG_H The PlaylistDialog class can save, load and export playlists in m3u format.
Definition: playlistdialog.h:20
unsigned int uint
Definition: taglib.h:68
The Playlist class is used to display tracks in the MainWindow class.
Definition: playlist.h:21
Definition: ui_playlistdialog.h:188
The PlaylistDAO class is a simple wrapper which contains basic informations about a playlist...
Definition: playlistdao.h:12
void setPlaylists(const QList< Playlist * > &playlists)
Definition: playlistdialog.h:45
PlaylistRoles
Definition: playlistdialog.h:40
#define MIAMTABPLAYLISTS_LIBRARY
Definition: miamtabplaylists_global.hpp:8