defuze.me  Client
playlists.hpp
00001 #ifndef PLAYLISTS_HPP
00002 #define PLAYLISTS_HPP
00003 
00004 #include "staticplugin.hpp"
00005 #include "playlistswidget.hpp"
00006 #include "playlistsmodel.hpp"
00007 #include "playlist.hpp"
00008 
00009 namespace Playlists
00010 {
00011     class PlaylistsPlugin : public QObject, public StaticPlugin
00012     {
00013         Q_OBJECT
00014         public:
00015                 PlaylistsPlugin();
00016                 ~PlaylistsPlugin();
00017                 void                init();
00018                 void                aboutToQuit();
00019         PlaylistsModel      *getModel() const;
00020         PlaylistsWidget     *getWidget() const;
00021                 void            addPlaylist(QString name);
00022                 void                    deletePlaylist(int idPlaylist);
00023         QList<Playlist*>    *getPlaylistList() const;
00024                 Playlist                *getPlaylistById(int playlistId);
00025 
00026         private:
00027                 void                loadPlaylists();
00028         PlaylistsModel      *model;
00029         PlaylistsWidget     *widget;
00030         QList<Playlist*>    *playlistsList;
00031         };
00032 }
00033 
00034 #endif // PLAYLISTS_HPP