1 #ifndef __cpBaseQtApplication__Pipeline__EventFilter__h__
\r
2 #define __cpBaseQtApplication__Pipeline__EventFilter__h__
\r
4 #include <cpBaseQtApplication_Export.h>
\r
8 class QGraphicsScene;
\r
9 class QGraphicsSceneMouseEvent;
\r
10 class QGraphicsItem;
\r
11 class QGraphicsSceneContextMenuEvent;
\r
12 class QGraphicsSceneDragDropEvent;
\r
13 class QGraphicsSceneHelpEvent;
\r
14 class QGraphicsSceneHoverEvent;
\r
15 class QGraphicsSceneMouseEvent;
\r
16 class QGraphicsSceneMoveEvent;
\r
17 class QGraphicsSceneResizeEvent;
\r
18 class QGraphicsSceneWheelEvent;
\r
20 // -------------------------------------------------------------------------
\r
21 #define cpBaseQtApplicationPipelineEventFilterCallbackDCL( E ) \
\r
22 void _##E##_cbk( QGraphicsScene##E##Event* e );
\r
24 namespace cpBaseQtApplication
\r
32 class cpBaseQtApplication_EXPORT EventFilter
\r
38 typedef EventFilter Self;
\r
39 typedef QObject Superclass;
\r
42 explicit EventFilter( QObject* parent = 0 );
\r
43 virtual ~EventFilter( );
\r
46 const Canvas* canvas( ) const;
\r
47 void setCanvas( Canvas* c );
\r
49 void install( QGraphicsScene* s );
\r
50 bool eventFilter( QObject* o, QEvent* e );
\r
53 QGraphicsItem* itemAt( const QPointF& pos );
\r
56 typedef QGraphicsSceneDragDropEvent QGraphicsSceneDragEnterEvent;
\r
57 typedef QGraphicsSceneDragDropEvent QGraphicsSceneDragLeaveEvent;
\r
58 typedef QGraphicsSceneDragDropEvent QGraphicsSceneDragMoveEvent;
\r
59 typedef QGraphicsSceneDragDropEvent QGraphicsSceneDropEvent;
\r
60 typedef QGraphicsSceneHoverEvent QGraphicsSceneHoverEnterEvent;
\r
61 typedef QGraphicsSceneHoverEvent QGraphicsSceneHoverMoveEvent;
\r
62 typedef QGraphicsSceneHoverEvent QGraphicsSceneHoverLeaveEvent;
\r
63 typedef QGraphicsSceneMouseEvent QGraphicsSceneMouseDoubleClickEvent;
\r
64 typedef QGraphicsSceneMouseEvent QGraphicsSceneMouseMoveEvent;
\r
65 typedef QGraphicsSceneMouseEvent QGraphicsSceneMousePressEvent;
\r
66 typedef QGraphicsSceneMouseEvent QGraphicsSceneMouseReleaseEvent;
\r
68 cpBaseQtApplicationPipelineEventFilterCallbackDCL( ContextMenu );
\r
69 cpBaseQtApplicationPipelineEventFilterCallbackDCL( DragEnter );
\r
70 cpBaseQtApplicationPipelineEventFilterCallbackDCL( DragLeave );
\r
71 cpBaseQtApplicationPipelineEventFilterCallbackDCL( DragMove );
\r
72 cpBaseQtApplicationPipelineEventFilterCallbackDCL( Drop );
\r
73 cpBaseQtApplicationPipelineEventFilterCallbackDCL( Help );
\r
74 cpBaseQtApplicationPipelineEventFilterCallbackDCL( HoverEnter );
\r
75 cpBaseQtApplicationPipelineEventFilterCallbackDCL( HoverLeave );
\r
76 cpBaseQtApplicationPipelineEventFilterCallbackDCL( HoverMove );
\r
77 cpBaseQtApplicationPipelineEventFilterCallbackDCL( MouseDoubleClick );
\r
78 cpBaseQtApplicationPipelineEventFilterCallbackDCL( MouseMove );
\r
79 cpBaseQtApplicationPipelineEventFilterCallbackDCL( MousePress );
\r
80 cpBaseQtApplicationPipelineEventFilterCallbackDCL( MouseRelease );
\r
81 cpBaseQtApplicationPipelineEventFilterCallbackDCL( Move );
\r
82 cpBaseQtApplicationPipelineEventFilterCallbackDCL( Resize );
\r
83 cpBaseQtApplicationPipelineEventFilterCallbackDCL( Wheel );
\r
86 QGraphicsScene* m_Scene;
\r
94 #endif // __cpBaseQtApplication__Pipeline__EventFilter__h__
\r