48 virtual QString id()
const = 0;
49 virtual QString type()
const = 0;
54 virtual bool shallShow()
const;
56 bool defaultVisibility()
const;
57 void setDefaultVisibility(
bool on);
63 virtual bool forward(QMouseEvent *e);
65 virtual void editorChange(
QEditor *e);
67 virtual void mouseMoveEvent(QMouseEvent *e);
68 virtual void mousePressEvent(QMouseEvent *e);
69 virtual void mouseReleaseEvent(QMouseEvent *e);
71 virtual void showEvent(QShowEvent *e);
72 virtual void hideEvent(QHideEvent *e);
73 virtual void paintEvent(QPaintEvent *e);
74 virtual bool paint(QPainter *p,
QEditor *e);
77 QPointer<QEditor> m_editor;
78 bool m_defaultVisibility, m_shownOnce;
79 static QHash<QString, QPanelCreator*>& creators();
86 virtual QString id()
const = 0;
90 #define Q_PANEL(T, SID) \
92 class Creator : public QPanelCreator \
95 virtual QString id() const \
100 virtual QPanel* panel(QWidget *p) \
105 static QPanelCreator* instance() \
107 static Creator global; \
112 virtual ~Creator() {} \
115 QString id() const { return SID; } \
117 static void _register() \
119 QPanel::registerCreator(Creator::instance()); \
123 #define Q_PANEL_ID(T) \
124 T::Creator::instance()->id() \
127 #define Q_CREATE_PANEL(T) \
128 QPanel::panel(Q_PANEL_ID(T)) \