lib
KoContainerHandler.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef HANDLER_H
00021 #define HANDLER_H
00022
00023 #include <qobject.h>
00024 #include <KoDocumentChild.h>
00025
00026 class QWMatrix;
00027
00028 class KoView;
00029 class KoPartResizeHandlerPrivate;
00030 class KoPartMoveHandlerPrivate;
00031
00043 class KOFFICECORE_EXPORT KoEventHandler : public QObject
00044 {
00045 Q_OBJECT
00046 public:
00047 KoEventHandler( QObject* target );
00048 ~KoEventHandler();
00049
00050 QObject* target();
00051
00052 private:
00053 QObject* m_target;
00054 };
00055
00060 class KoPartResizeHandler : public KoEventHandler
00061 {
00062 Q_OBJECT
00063 public:
00064 KoPartResizeHandler( QWidget* widget, const QWMatrix& matrix, KoView* view, KoChild* child,
00065 KoChild::Gadget gadget, const QPoint& point );
00066 ~KoPartResizeHandler();
00067
00068 protected:
00069 void repaint(QRegion &rgn);
00070 bool eventFilter( QObject*, QEvent* );
00071
00072 private:
00073 KoPartResizeHandlerPrivate *d;
00074 };
00075
00080 class KoPartMoveHandler : public KoEventHandler
00081 {
00082 Q_OBJECT
00083 public:
00084 KoPartMoveHandler( QWidget* widget, const QWMatrix& matrix, KoView* view, KoChild* child,
00085 const QPoint& point );
00086 ~KoPartMoveHandler();
00087
00088 protected:
00089 bool eventFilter( QObject*, QEvent* );
00090
00091 private:
00092 KoPartMoveHandlerPrivate *d;
00093 };
00094
00109 class KOFFICECORE_EXPORT KoContainerHandler : public KoEventHandler
00110 {
00111 Q_OBJECT
00112 public:
00113 KoContainerHandler( KoView* view, QWidget* widget );
00114 ~KoContainerHandler();
00115
00116 signals:
00121 void popupMenu( KoChild*, const QPoint& global_pos );
00122
00126 void deleteChild( KoChild* );
00127
00128 protected:
00129 bool eventFilter( QObject*, QEvent* );
00130
00131 private:
00133 KoChild *child(KoChild::Gadget &gadget, QPoint &pos, const QMouseEvent *ev);
00134 KoView* m_view;
00135 };
00136
00137 #endif
|