MNE-CPP  beta 1.0
layoutscene.h
1 //=============================================================================================================
37 #ifndef LAYOUTSCENE_H
38 #define LAYOUTSCENE_H
39 
40 //*************************************************************************************************************
41 //=============================================================================================================
42 // INCLUDES
43 //=============================================================================================================
44 
45 
46 //*************************************************************************************************************
47 //=============================================================================================================
48 // QT INCLUDES
49 //=============================================================================================================
50 
51 #include <QGraphicsScene>
52 #include <QGraphicsView>
53 #include <QGraphicsSceneMouseEvent>
54 #include <QRubberBand>
55 #include <QWidget>
56 #include <QMouseEvent>
57 #include <QGestureEvent>
58 #include <QPanGesture>
59 #include <QPinchGesture>
60 #include <QGraphicsSceneEvent>
61 #include <QMutableListIterator>
62 #include <QScrollBar>
63 #include <QDebug>
64 
65 
66 //*************************************************************************************************************
67 //=============================================================================================================
68 // DEFINE NAMESPACE TMSIPlugin
69 //=============================================================================================================
70 
71 namespace XDISPLIB
72 {
73 
74 
75 //=============================================================================================================
81 class LayoutScene : public QGraphicsScene
82 {
83  Q_OBJECT
84 
85 public:
86  //=========================================================================================================
90  LayoutScene(QGraphicsView* view, QObject *parent = 0);
91 
92 protected:
93  QGraphicsView* m_qvView;
94  bool m_bDragMode;
95  //bool m_bExtendedSelectionMode; /**< Flag whether the extended selection mode.*/
97  //QList<QGraphicsItem *> m_selectedItems; /**< The currently selected items during extended selection mode.*/
98 
99  //=========================================================================================================
103  void wheelEvent(QGraphicsSceneWheelEvent* event);
104 
105  //=========================================================================================================
109  void mouseDoubleClickEvent(QGraphicsSceneMouseEvent* mouseEvent);
110 
111  //=========================================================================================================
115  void mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent);
116 
117  //=========================================================================================================
121  void mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent);
122 
123  //=========================================================================================================
127  void mouseReleaseEvent(QGraphicsSceneMouseEvent *mouseEvent);
128 
129  //=========================================================================================================
133  void keyPressEvent(QKeyEvent *keyEvent);
134 
135  //=========================================================================================================
139  void keyReleaseEvent(QKeyEvent *keyEvent);
140 
141  //=========================================================================================================
145  bool event(QEvent *event);
146 
147  //=========================================================================================================
151  bool gestureEvent(QGestureEvent *event);
152 
153  //=========================================================================================================
157  void panTriggered(QPanGesture*);
158 
159  //=========================================================================================================
163  void pinchTriggered(QPinchGesture*);
164 
165  //=========================================================================================================
169  void swipeTriggered(QSwipeGesture*);
170 
171  //=========================================================================================================
178  bool eventFilter(QObject *object, QEvent *event);
179 };
180 
181 } // NAMESPACE
182 
183 #endif // LAYOUTSCENE_H
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *mouseEvent)
Definition: layoutscene.cpp:92
LayoutScene(QGraphicsView *view, QObject *parent=0)
Definition: layoutscene.cpp:59
void swipeTriggered(QSwipeGesture *)
void panTriggered(QPanGesture *)
bool eventFilter(QObject *object, QEvent *event)
QPointF m_mousePressPosition
Definition: layoutscene.h:96
void mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent)
QGraphicsView * m_qvView
Definition: layoutscene.h:93
void mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent)
bool gestureEvent(QGestureEvent *event)
void keyReleaseEvent(QKeyEvent *keyEvent)
void keyPressEvent(QKeyEvent *keyEvent)
void mouseReleaseEvent(QGraphicsSceneMouseEvent *mouseEvent)
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
bool event(QEvent *event)
void pinchTriggered(QPinchGesture *)
void wheelEvent(QGraphicsSceneWheelEvent *event)
Definition: layoutscene.cpp:75