kmsystemtray.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KMSYSTEMTRAY_H
00019 #define KMSYSTEMTRAY_H
00020
00021 #include <ksystemtray.h>
00022
00023 #include <qmap.h>
00024 #include <qguardedptr.h>
00025 #include <qptrvector.h>
00026 #include <qpixmap.h>
00027 #include <qimage.h>
00028
00029 #include <time.h>
00030
00031 class KMFolder;
00032 class KMMainWidget;
00033 class QMouseEvent;
00034 class KPopupMenu;
00035 class QPoint;
00036
00041 class KMSystemTray : public KSystemTray
00042 {
00043 Q_OBJECT
00044 public:
00046 KMSystemTray(QWidget* parent=0, const char *name=0);
00048 ~KMSystemTray();
00049
00050 void setMode(int mode);
00051 int mode() const;
00052
00053 void hideKMail();
00054
00055 private slots:
00056 void updateNewMessageNotification(KMFolder * folder);
00057 void foldersChanged();
00058 void selectedAccount(int);
00059 void updateNewMessages();
00060
00061 protected:
00062 void mousePressEvent(QMouseEvent *);
00063 bool mainWindowIsOnCurrentDesktop();
00064 void showKMail();
00065 void buildPopupMenu();
00066 void updateCount();
00067
00068 QString prettyName(KMFolder *);
00069 KMMainWidget * getKMMainWidget();
00070
00071 private:
00072
00073 bool mParentVisible;
00074 QPoint mPosOfMainWin;
00075 int mDesktopOfMainWin;
00076
00077 int mMode;
00078 int mCount;
00079 int mNewMessagePopupId;
00080
00081 KPopupMenu * mPopupMenu;
00082 QPixmap mDefaultIcon;
00083 QImage mLightIconImage;
00084
00085 QPtrVector<KMFolder> mPopupFolders;
00086 QMap<QGuardedPtr<KMFolder>, int> mFoldersWithUnread;
00087 QMap<QGuardedPtr<KMFolder>, bool> mPendingUpdates;
00088 QTimer *mUpdateTimer;
00089 time_t mLastUpdate;
00090 };
00091
00092 #endif
This file is part of the documentation for kmail Library Version 3.3.2.