NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
IGIVLEditor.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef IGIVLEditor_h
16 #define IGIVLEditor_h
17 
18 #include <QmitkAbstractRenderEditor.h>
19 #include <mitkILinkedRenderWindowPart.h>
20 #include <service/event/ctkEvent.h>
21 #include <uk_ac_ucl_cmic_igivleditor_Export.h>
22 
23 class QmitkIGIVLEditor;
24 class IGIVLEditorPrivate;
25 
33 class UK_AC_UCL_CMIC_IGIVLEDITOR IGIVLEditor : public QmitkAbstractRenderEditor, public mitk::ILinkedRenderWindowPart
34 {
35  Q_OBJECT
36 
37 public:
38 
39  static const char* EDITOR_ID;
40 
41  berryObjectMacro(IGIVLEditor)
42 
43  IGIVLEditor();
44  ~IGIVLEditor();
45 
46  QmitkIGIVLEditor* GetIGIVLEditor();
47 
48  // ------------------- mitk::IRenderWindowPart ----------------------
49 
53  QmitkRenderWindow* GetActiveQmitkRenderWindow() const;
54 
58  QHash<QString,QmitkRenderWindow*> GetQmitkRenderWindows() const;
59 
63  QmitkRenderWindow* GetQmitkRenderWindow(const QString& id) const;
64 
68  mitk::Point3D GetSelectedPosition(const QString& id = QString()) const;
69 
73  void SetSelectedPosition(const mitk::Point3D& pos, const QString& id = QString());
74 
78  void EnableDecorations(bool enable, const QStringList& decorations = QStringList());
79 
83  bool IsDecorationEnabled(const QString& decoration) const;
84 
88  QStringList GetDecorations() const;
89 
90  // ------------------- mitk::ILinkedRenderWindowPart ----------------------
91 
95  mitk::SlicesRotator* GetSlicesRotator() const;
96 
100  mitk::SlicesSwiveller* GetSlicesSwiveller() const;
101 
105  void EnableSlicingPlanes(bool enable);
106 
110  bool IsSlicingPlanesEnabled() const;
111 
115  void EnableLinkedNavigation(bool enable);
116 
120  bool IsLinkedNavigationEnabled() const;
121 
122 protected:
123 
124  void SetFocus();
125  void OnPreferencesChanged(const berry::IBerryPreferences*);
126  void CreateQtPartControl(QWidget* parent);
127 
128  void WriteCurrentConfig(const QString& directory) const;
129 
130 protected slots:
131 
132  void OnPreferencesChanged();
133 
134 private slots:
135 
139  void OnIGIUpdate(const ctkEvent& event);
140 
142  void OnRecordingStarted(const ctkEvent& event);
143 
144 private:
145 
146  const QScopedPointer<IGIVLEditorPrivate> d;
147 };
148 
149 #endif /*IGIVLEditor_h */
Definition: niftkBaseSegmentorView.h:30
GLboolean enable
Definition: glew.h:2642
Definition: ReceptorMemberCommandTest.cxx:25
Simple editor that delegates all functionality to a QmitkIGIVLEditor, and most methods are dummy or d...
Definition: IGIVLEditor.h:33
static const char * EDITOR_ID
Definition: IGIVLEditor.h:39
cl_event event
Definition: glew.h:3231
PIMPL pattern implementation of IGIVLEditor.
Definition: IGIVLEditor.cxx:60