kdeui
kpanelmenu.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __KPANELMENU_H__
00026 #define __KPANELMENU_H__
00027
00028 #include <qstring.h>
00029 #include <kpopupmenu.h>
00030 #include <kgenericfactory.h>
00031
00032 class KPanelMenuPrivate;
00033
00053 class KDEUI_EXPORT KPanelMenu : public KPopupMenu
00054 {
00055 Q_OBJECT
00056
00057 public:
00062 KPanelMenu(QWidget *parent=0, const char *name=0);
00070 KPanelMenu(const QString &startDir, QWidget *parent=0, const char *name=0);
00074 virtual ~KPanelMenu();
00075
00082 const QString& path() const;
00088 void setPath(const QString &p);
00096 bool initialized() const;
00103 void setInitialized(bool on);
00104
00111 void disableAutoClear();
00112
00113 public slots:
00119 void reinitialize();
00126 void deinitialize();
00127
00128 protected slots:
00137 virtual void slotAboutToShow();
00144 virtual void slotExec(int id) = 0;
00153 virtual void initialize() = 0;
00158 void slotClear();
00159
00160 protected:
00164 virtual void hideEvent(QHideEvent *ev);
00168 void init(const QString& path = QString::null);
00169
00170 protected:
00171 virtual void virtual_hook( int id, void* data );
00172 private:
00173 void internalInitialize();
00174 KPanelMenuPrivate *d;
00175 };
00176
00177 #define K_EXPORT_KICKER_MENUEXT( libname, classname ) \
00178 K_EXPORT_COMPONENT_FACTORY( \
00179 kickermenu_##libname, \
00180 KGenericFactory<classname>("libkickermenu_" #libname) )
00181
00182 #endif