MNE-CPP  beta 1.0
sensoritem.h
Go to the documentation of this file.
1 //=============================================================================================================
36 #ifndef SENSORITEM_H
37 #define SENSORITEM_H
38 
39 //*************************************************************************************************************
40 //=============================================================================================================
41 // QT INCLUDES
42 //=============================================================================================================
43 
44 #include <QGraphicsObject>
45 #include <QStyleOptionGraphicsItem>
46 #include <QPainter>
47 
48 
49 //*************************************************************************************************************
50 //=============================================================================================================
51 // DEFINE NAMESPACE XDISPLIB
52 //=============================================================================================================
53 
54 namespace XDISPLIB
55 {
56 
57 
58 //=============================================================================================================
64 class SensorItem : public QGraphicsObject
65 {
66  Q_OBJECT
67 public:
68 
69  //=========================================================================================================
79  SensorItem(const QString& dispChName, qint32 chNumber, const QPointF& coordinate, const QColor& channelColor, QGraphicsItem *parent = 0);
80 
81  //=========================================================================================================
87  void setColor(const QColor& channelColor);
88 
89  //=========================================================================================================
95  QRectF boundingRect() const;
96 
97  //=========================================================================================================
103  QPainterPath shape() const;
104 
105  //=========================================================================================================
113  void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0);
114 
115  //=========================================================================================================
121  inline const QString& getDisplayChName() const;
122 
123  //=========================================================================================================
129  inline qint32 getChNumber() const;
130 
131  //=========================================================================================================
137  inline void setPosition(QPointF newPosition);
138 
139  //=========================================================================================================
145  inline QPointF getPosition();
146 
147  //=========================================================================================================
153  inline bool isHighlighted() const;
154 
155  //=========================================================================================================
161  inline void setHighlighted(bool highlight);
162 
163  //=========================================================================================================
169  inline bool isChoosen() const;
170 
171  //=========================================================================================================
177  inline void setChoosen(bool choosen);
178 
179 protected:
180  //=========================================================================================================
186  void mousePressEvent(QGraphicsSceneMouseEvent *event);
187 
188  //=========================================================================================================
194  void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
195 
196  //=========================================================================================================
202  void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
203 
204 signals:
205  //=========================================================================================================
211  void itemChanged(SensorItem* item);
212 
213 private:
214  QString m_sDisplayChName;
215  qint32 m_iChNumber;
216  QPointF m_qPointFCoord;
217  QColor m_qColorChannel;
218  bool m_bIsHighlighted;
219  bool m_bIsChoosen;
220 };
221 
222 
223 //*************************************************************************************************************
224 //=============================================================================================================
225 // INLINE DEFINITIONS
226 //=============================================================================================================
227 
228 inline const QString& SensorItem::getDisplayChName() const
229 {
230  return m_sDisplayChName;
231 }
232 
233 
234 //*************************************************************************************************************
235 
236 inline qint32 SensorItem::getChNumber() const
237 {
238  return m_iChNumber;
239 }
240 
241 
242 //*************************************************************************************************************
243 
244 inline void SensorItem::setPosition(QPointF newPosition)
245 {
246  m_qPointFCoord = newPosition;
247 }
248 
249 
250 //*************************************************************************************************************
251 
252 inline QPointF SensorItem::getPosition()
253 {
254  return m_qPointFCoord;
255 }
256 
257 
258 //*************************************************************************************************************
259 
260 inline bool SensorItem::isHighlighted() const
261 {
262  return m_bIsHighlighted;
263 }
264 
265 
266 //*************************************************************************************************************
267 
268 inline void SensorItem::setHighlighted(bool highlight)
269 {
270  m_bIsHighlighted = highlight;
271  update();
272 }
273 
274 
275 //*************************************************************************************************************
276 
277 inline bool SensorItem::isChoosen() const
278 {
279  return m_bIsChoosen;
280 }
281 
282 
283 //*************************************************************************************************************
284 
285 inline void SensorItem::setChoosen(bool choosen)
286 {
287  m_bIsChoosen = choosen;
288  update();
289 }
290 
291 
292 } // NAMESPACE
293 
294 #endif // SENSORITEM_H
void setPosition(QPointF newPosition)
Definition: sensoritem.h:244
void mouseMoveEvent(QGraphicsSceneMouseEvent *event)
Definition: sensoritem.cpp:146
void itemChanged(SensorItem *item)
void setChoosen(bool choosen)
Definition: sensoritem.h:285
void setColor(const QColor &channelColor)
Definition: sensoritem.cpp:129
bool isChoosen() const
Definition: sensoritem.h:277
qint32 getChNumber() const
Definition: sensoritem.h:236
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
Definition: sensoritem.cpp:102
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
Definition: sensoritem.cpp:159
void mousePressEvent(QGraphicsSceneMouseEvent *event)
Definition: sensoritem.cpp:137
QRectF boundingRect() const
Definition: sensoritem.cpp:84
QPainterPath shape() const
Definition: sensoritem.cpp:92
QPointF getPosition()
Definition: sensoritem.h:252
bool isHighlighted() const
Definition: sensoritem.h:260
The SensorItem class represents a channel item, plottet at the graphics scene.
Definition: sensoritem.h:64
SensorItem(const QString &dispChName, qint32 chNumber, const QPointF &coordinate, const QColor &channelColor, QGraphicsItem *parent=0)
Definition: sensoritem.cpp:66
void setHighlighted(bool highlight)
Definition: sensoritem.h:268
const QString & getDisplayChName() const
Definition: sensoritem.h:228