00001 #ifndef FOCUSINTERFACE_H 00002 #define FOCUSINTERFACE_H 00003 00004 #include <ui/lib/uiinterface.h> 00005 00006 #include <tools/global.h> 00007 00008 #include <QtPlugin> 00009 00010 namespace domain 00011 { 00012 class TaskManagerData; 00013 class Task; 00014 } 00015 00016 namespace control 00017 { 00018 00026 class CONTROL_EXPORT FocusInterface : public QObject 00027 { 00028 Q_OBJECT 00029 00030 public: 00031 00032 virtual ~FocusInterface(); 00033 00038 virtual QString description() const = 0; 00039 00045 virtual bool applyFocus(QList<domain::Task*>* tasks) = 0; 00046 00047 void init(domain::TaskManagerData* data, ui::UiInterface* ui); 00048 00049 protected: 00050 00051 domain::TaskManagerData* data; 00052 ui::UiInterface* ui; 00053 }; 00054 00055 } 00056 00057 Q_DECLARE_INTERFACE(control::FocusInterface, 00058 "net.sourceforge.moptaskmanager.focus/1.0"); 00059 00060 #endif