defuze.me  Client
schedulermodel.hpp
00001 #ifndef SCHEDULERMODEL_HPP
00002 #define SCHEDULERMODEL_HPP
00003 
00004 #include <QStandardItemModel>
00005 #include "eventmodel.hpp"
00006 
00007 namespace Scheduler
00008 {
00009 
00010     class EventModel;
00011     class SchedulerPlugin;
00012 
00013     class SchedulerModel : public QStandardItemModel
00014     {
00015         Q_OBJECT
00016 
00017     public:
00018         SchedulerModel(SchedulerPlugin *scheduler);
00019         ~SchedulerModel();
00020 
00021         SchedulerPlugin     *getScheduler() const;
00022 
00023         void                loadEvents();
00024         void                clearEvents();
00025         QList<EventModel*>  *getEvents();
00026         EventModel*         getEvent(int id);
00027 
00028     signals:
00029         void                loadEvent(Scheduler::EventModel*);
00030 
00031     private:
00032         SchedulerPlugin     *scheduler;
00033         QList<EventModel*>  *events;
00034     };
00035 }
00036 
00037 #endif // SCHEDULERMODEL_HPP