kpanelmenu.h00001
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
|