MNE-CPP  0.1.9
A Framework for Electrophysiology
frequencyspectrumdelegate.h
Go to the documentation of this file.
1 //=============================================================================================================
36 #ifndef FREQUENCYSPECTRUMDELEGATE_H
37 #define FREQUENCYSPECTRUMDELEGATE_H
38 
39 //=============================================================================================================
40 // INCLUDES
41 //=============================================================================================================
42 
43 #include "../../disp_global.h"
44 
45 //=============================================================================================================
46 // QT INCLUDES
47 //=============================================================================================================
48 
49 #include <QAbstractItemDelegate>
50 #include <QPointer>
51 
52 //=============================================================================================================
53 // EIGEN INCLUDES
54 //=============================================================================================================
55 
56 #include <Eigen/Core>
57 
58 //=============================================================================================================
59 // FORWARD DECLARATIONS
60 //=============================================================================================================
61 
62 class QTableView;
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 FrequencySpectrumDelegate : public QAbstractItemDelegate
82 {
83  Q_OBJECT
84 
85 public:
86  //=========================================================================================================
92  FrequencySpectrumDelegate(QTableView* m_pTableView,
93  QObject *parent = 0);
94 
95  //=========================================================================================================
101  void setScaleType(qint8 ScaleType);
102 
103  //=========================================================================================================
113  virtual void paint(QPainter *painter,
114  const QStyleOptionViewItem &option,
115  const QModelIndex &index) const;
116 
117  //=========================================================================================================
124  virtual QSize sizeHint(const QStyleOptionViewItem &option,
125  const QModelIndex &index) const;
126 
127  //=========================================================================================================
137  void rcvMouseLoc(int row,
138  int x,
139  int y,
140  QRect visRect);
141 
142 private:
143  //=========================================================================================================
150  void capturePoint(const QModelIndex &index,
151  const QStyleOptionViewItem &option,
152  QPainterPath& path,
153  Eigen::RowVectorXd& data,
154  QPainter *painter) const;
155 
156  //=========================================================================================================
163  void createPlotPath(const QModelIndex &index,
164  const QStyleOptionViewItem &option,
165  QPainterPath& path,
166  Eigen::RowVectorXd& data) const;
167 
168  //=========================================================================================================
175  void createGridPath(const QModelIndex &index,
176  const QStyleOptionViewItem &option,
177  QPainterPath& path,
178  Eigen::RowVectorXd& data) const;
179 
180  //=========================================================================================================
186  void createGridTick(const QModelIndex &index,
187  const QStyleOptionViewItem &option,
188  QPainter *painter) const;
189 
190  QPointer<QTableView> m_tableview;
192  int m_tableview_row;
193  int m_mousex;
194  int m_mousey;
195  QRect m_visRect;
196  float m_x_rate;
197  float m_fMaxValue;
198  float m_fScaleY;
199  qint8 m_iScaleType;
200 };
201 } // NAMESPACE
202 
203 #endif // FREQUENCYSPECTRUMDELEGATE_H
The FrequencySpectrumDelegate class represents a frequency delegate which creates the plot paths...
#define DISPSHARED_EXPORT
Definition: disp_global.h:55