MNE-CPP  0.1.9
A Framework for Electrophysiology
control3dview.h
Go to the documentation of this file.
1 //=============================================================================================================
35 #ifndef DISPLIB_CONTROL3DVIEW_H
36 #define DISPLIB_CONTROL3DVIEW_H
37 
38 //=============================================================================================================
39 // INCLUDES
40 //=============================================================================================================
41 
42 #include "../disp_global.h"
43 #include "abstractview.h"
44 
45 //=============================================================================================================
46 // QT INCLUDES
47 //=============================================================================================================
48 
49 //=============================================================================================================
50 // EIGEN INCLUDES
51 //=============================================================================================================
52 
53 //=============================================================================================================
54 // FORWARD DECLARATIONS
55 //=============================================================================================================
56 
57 namespace Ui {
58  class Control3DViewWidget;
59 }
60 
61 class QStyledItemDelegate;
62 class QStandardItemModel;
63 
64 //=============================================================================================================
65 // DEFINE NAMESPACE DISPLIB
66 //=============================================================================================================
67 
68 namespace DISPLIB
69 {
70 
71 //=============================================================================================================
72 // DISPLIB FORWARD DECLARATIONS
73 //=============================================================================================================
74 
75 //=============================================================================================================
82 {
83  Q_OBJECT
84 
85 public:
86  typedef QSharedPointer<Control3DView> SPtr;
87  typedef QSharedPointer<const Control3DView> ConstSPtr;
89  //=========================================================================================================
97  explicit Control3DView(const QString& sSettingsPath = "",
98  QWidget* parent = 0,
99  const QStringList& slFlags = QStringList() << "Data" << "View" << "Light",
100  Qt::WindowType type = Qt::Widget);
101 
102  //=========================================================================================================
106  ~Control3DView();
107 
108  //=========================================================================================================
114  void setFlags(const QStringList& slFlags);
115 
116  //=========================================================================================================
122  void setDelegate(QStyledItemDelegate* pItemDelegate);
123 
124  //=========================================================================================================
131  void setModel(QStandardItemModel* pDataTreeModel);
132 
133  //=========================================================================================================
137  void onTreeViewHeaderHide();
138 
139  //=========================================================================================================
143  void onTreeViewRemoveItem(const QModelIndex &index);
144 
145  //=========================================================================================================
149  void onTreeViewDescriptionHide();
150 
151  //=========================================================================================================
155  void saveSettings();
156 
157  //=========================================================================================================
161  void loadSettings();
162 
163 protected:
164  //=========================================================================================================
170  void updateGuiMode(GuiMode mode);
171 
172  //=========================================================================================================
178  void updateProcessingMode(ProcessingMode mode);
179 
180  //=========================================================================================================
186  void onOpacityChange(qint32 value);
187 
188  //=========================================================================================================
192  void onSceneColorPicker();
193 
194  //=========================================================================================================
200  void onCustomContextMenuRequested(QPoint pos);
201 
202  //=========================================================================================================
208  void onAlwaysOnTop(bool state);
209 
210  //=========================================================================================================
217  void onSceneColorChanged(const QColor& color);
218 
219  //=========================================================================================================
225  void onShowFullScreen(bool checked);
226 
227  //=========================================================================================================
233  void onRotationClicked(bool checked);
234 
235  //=========================================================================================================
239  void onCoordAxisClicked(bool checked);
240 
241  //=========================================================================================================
245  void onLightColorPicker();
246 
247  //=========================================================================================================
253  void onLightColorChanged(const QColor& color);
254 
255  //=========================================================================================================
261  void onLightIntensityChanged(double value);
262 
263  //=========================================================================================================
267  void clearView();
268 
269  Ui::Control3DViewWidget* m_pUi;
274 signals:
275  //=========================================================================================================
281  void sceneColorChanged(const QColor& color);
282 
283  //=========================================================================================================
289  void showFullScreen(bool bShowFullScreen);
290 
291  //=========================================================================================================
297  void rotationChanged(bool bRotationChanged);
298 
299  //=========================================================================================================
305  void showCoordAxis(bool bShowCoordAxis);
306 
307  //=========================================================================================================
313  void lightColorChanged(const QColor& color);
314 
315  //=========================================================================================================
321  void lightIntensityChanged(double value);
322 
323  //=========================================================================================================
327  void takeScreenshotChanged();
328 
329  //=========================================================================================================
333  void toggleSingleView();
334 
335  //=========================================================================================================
339  void toggleMutiview();
340 };
341 } // NAMESPACE DISPLIB
342 
343 #endif // DISPLIB_CONTROL3DVIEW_H
Ui::Control3DViewWidget * m_pUi
QSharedPointer< const Control3DView > ConstSPtr
Definition: control3dview.h:87
Definition: applytoview.h:58
QSharedPointer< Control3DView > SPtr
Definition: control3dview.h:86
User GUI control for the View3D.
Definition: control3dview.h:81
#define DISPSHARED_EXPORT
Definition: disp_global.h:55
The AbstractView class provides the base calss for all Disp viewers.
Definition: abstractview.h:75