MNE-CPP  0.1.9
A Framework for Electrophysiology
layoutscene.h
Go to the documentation of this file.
1 //=============================================================================================================
36 #ifndef LAYOUTSCENE_H
37 #define LAYOUTSCENE_H
38 
39 //=============================================================================================================
40 // INCLUDES
41 //=============================================================================================================
42 
43 #include "../../disp_global.h"
44 
45 //=============================================================================================================
46 // QT INCLUDES
47 //=============================================================================================================
48 
49 #include <QGraphicsScene>
50 
51 //=============================================================================================================
52 // EIGEN INCLUDES
53 //=============================================================================================================
54 
55 //=============================================================================================================
56 // FORWARD DECLARATIONS
57 //=============================================================================================================
58 
59 class QGestureEvent;
60 class QPanGesture;
61 class QPinchGesture;
62 class QSwipeGesture;
63 
64 //=============================================================================================================
65 // DEFINE NAMESPACE DISPLIB
66 //=============================================================================================================
67 
68 namespace DISPLIB
69 {
70 
71 //=============================================================================================================
72 // DISPLIB FORWARD DECLARATIONS
73 //=============================================================================================================
74 
75 //=============================================================================================================
81 class DISPSHARED_EXPORT LayoutScene : public QGraphicsScene
82 {
83  Q_OBJECT
84 
85 public:
86  //=========================================================================================================
90  LayoutScene(QGraphicsView* view,
91  QObject *parent = 0);
92 
93 protected:
94  //=========================================================================================================
98  void wheelEvent(QGraphicsSceneWheelEvent* event);
99 
100  //=========================================================================================================
104  void mouseDoubleClickEvent(QGraphicsSceneMouseEvent* mouseEvent);
105 
106  //=========================================================================================================
110  void mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent);
111 
112  //=========================================================================================================
116  void mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent);
117 
118  //=========================================================================================================
122  void mouseReleaseEvent(QGraphicsSceneMouseEvent *mouseEvent);
123 
124  //=========================================================================================================
128  void keyPressEvent(QKeyEvent *keyEvent);
129 
130  //=========================================================================================================
134  void keyReleaseEvent(QKeyEvent *keyEvent);
135 
136  //=========================================================================================================
140  bool event(QEvent *event);
141 
142  //=========================================================================================================
146  bool gestureEvent(QGestureEvent *event);
147 
148  //=========================================================================================================
152  void panTriggered(QPanGesture*);
153 
154  //=========================================================================================================
158  void pinchTriggered(QPinchGesture*);
159 
160  //=========================================================================================================
164  void swipeTriggered(QSwipeGesture*);
165 
166  //=========================================================================================================
173  bool eventFilter(QObject *object, QEvent *event);
174 
175  QGraphicsView* m_qvView;
176  //QList<QGraphicsItem *> m_selectedItems; /**< The currently selected items during extended selection mode.*/
177 
178  bool m_bDragMode;
179  //bool m_bExtendedSelectionMode; /**< Flag whether the extended selection mode.*/
181 };
182 } // NAMESPACE DISPLIB
183 
184 #endif // LAYOUTSCENE_H
QGraphicsView * m_qvView
Definition: layoutscene.h:175
The LayoutScene class provides a reimplemented QGraphicsScene for 2D layout plotting. This class handles all the user interaction features (subclass in order to use).
Definition: layoutscene.h:81
QPointF m_mousePressPosition
Definition: layoutscene.h:180
#define DISPSHARED_EXPORT
Definition: disp_global.h:55