// playlistfeature.h // Created 8/17/09 by RJ Ryan (rryan@mit.edu) #ifndef PLAYLISTFEATURE_H #define PLAYLISTFEATURE_H #include #include #include #include #include #include #include "library/baseplaylistfeature.h" #include "preferences/usersettings.h" class TrackCollection; class TreeItem; class PlaylistFeature : public BasePlaylistFeature { Q_OBJECT public: PlaylistFeature(QObject* parent, TrackCollection* pTrackCollection, UserSettingsPointer pConfig); virtual ~PlaylistFeature(); QVariant title(); QIcon getIcon(); bool dropAcceptChild(const QModelIndex& index, QList urls, QObject* pSource); bool dragMoveAcceptChild(const QModelIndex& index, QUrl url); public slots: void onRightClick(const QPoint& globalPos); void onRightClickChild(const QPoint& globalPos, QModelIndex index); private slots: void slotPlaylistTableChanged(int playlistId); void slotPlaylistContentChanged(int playlistId); void slotPlaylistTableRenamed(int playlistId, QString a_strName); protected: void buildPlaylistList(); void decorateChild(TreeItem *pChild, int playlist_id); private: QString getRootViewHtml() const; }; #endif /* PLAYLISTFEATURE_H */