00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KSYSTEMTRAY_H
00019 #define KSYSTEMTRAY_H
00020
00021 #include <qlabel.h>
00022
00023 class KActionCollection;
00024 class KPopupMenu;
00025 class KSystemTrayPrivate;
00026
00063 class KSystemTray : public QLabel
00064 {
00065 Q_OBJECT
00066 public:
00067
00081 KSystemTray( QWidget* parent = 0, const char* name = 0 );
00082
00083
00084
00085
00086 ~KSystemTray();
00087
00088
00089 protected:
00090
00097 void mousePressEvent( QMouseEvent * );
00098
00105 void mouseReleaseEvent( QMouseEvent * );
00106
00111 KPopupMenu* contextMenu() const;
00112
00113
00118 virtual void contextMenuAboutToShow( KPopupMenu* menu );
00119
00120
00126 KActionCollection* actionCollection();
00127
00131 void showEvent( QShowEvent * );
00132
00136 void enterEvent( QEvent* );
00137
00138 signals:
00144 void quitSelected();
00145
00146 private slots:
00147 void minimizeRestoreAction();
00148 private:
00149 void activateOrHide();
00150 void minimizeRestore( bool restore );
00151 KPopupMenu* menu;
00152
00153 int minimizeRestoreId;
00154 uint hasQuit :1;
00155 protected:
00156 virtual void virtual_hook( int id, void* data );
00157 private:
00158 KSystemTrayPrivate* d;
00159 };
00160
00161
00162 #endif