karm
desktoptracker.h00001 #ifndef KARM_DESKTOP_TRACKER_H
00002 #define KARM_DESKTOP_TRACKER_H
00003
00004 #include <vector>
00005
00006 #include <kwinmodule.h>
00007
00008 #include "desktoplist.h"
00009
00010 class Task;
00011 class QTimer;
00012
00013 typedef std::vector<Task *> TaskVector;
00014 const int maxDesktops = 16;
00015
00021 class DesktopTracker: public QObject
00022 {
00023 Q_OBJECT
00024
00025 public:
00026 DesktopTracker();
00027 void printTrackers();
00028 void startTracking();
00029 void registerForDesktops( Task* task, DesktopList dl );
00030 int desktopCount() const { return _desktopCount; };
00031
00032 private:
00033 KWinModule kWinModule;
00034
00035
00036
00037
00038 TaskVector desktopTracker[maxDesktops];
00039 int _previousDesktop;
00040 int _desktopCount;
00041 int _desktop;
00042 QTimer *_timer;
00043
00044 signals:
00045 void reachedtActiveDesktop( Task* task );
00046 void leftActiveDesktop( Task* task );
00047
00048 public slots:
00049 void handleDesktopChange( int desktop );
00050
00051 private slots:
00052 void changeTimers();
00053 };
00054
00055 #endif // KARM_DESKTOP_TRACKER_H
|