karm Library API Documentation

desktoptracker.h

00001 #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 
00012 typedef std::vector<Task *> TaskVector;
00013 
00019 class DesktopTracker: public QObject
00020 {
00021   Q_OBJECT
00022 
00023   public:
00024     DesktopTracker();
00025     void printTrackers();
00026     void startTracking();
00027     void registerForDesktops( Task* task, DesktopList dl );
00028     int desktopCount() const { return _desktopCount; };
00029 
00030   private: // member variables
00031     KWinModule kWinModule;
00032 
00033     // define vectors for at most 16 virtual desktops
00034     // E.g.: desktopTrackerStop[3] contains a vector with
00035     // all tasks to be notified, when switching to/from desk 3.
00036     TaskVector desktopTracker[16];
00037     int _previousDesktop;
00038     int _desktopCount;
00039 
00040   signals:
00041     void reachedtActiveDesktop( Task* task );
00042     void leftActiveDesktop( Task* task );
00043 
00044   public slots:
00045     void handleDesktopChange( int desktop );
00046 
00047 };
00048 
00049 #endif // KARM_DESKTOP_TRACKER_H
KDE Logo
This file is part of the documentation for karm Library Version 3.2.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat May 1 11:37:52 2004 by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2003