Medical Imaging Interaction Toolkit  2024.06.00
Medical Imaging Interaction Toolkit
QmitkRenderWindowUtilityWidget.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef QmitkRenderWindowUtilityWidget_h
14 #define QmitkRenderWindowUtilityWidget_h
15 
16 #include "MitkQtWidgetsExports.h"
17 
18 // qt widgets module
21 #include <QmitkStepperAdapter.h>
24 
25 // qt
26 #include <QWidget>
27 #include <QHBoxLayout>
28 #include <QMenuBar>
29 #include <QComboBox>
30 
31 namespace mitk
32 {
33  class DataStorage;
34 }
35 
36 class QmitkRenderWindow;
37 
39 {
40  Q_OBJECT
41 
42 public:
43 
45  QWidget* parent = nullptr,
46  QmitkRenderWindow* renderWindow = nullptr,
47  mitk::DataStorage* dataStorage = nullptr
48  );
49 
51 
52  void ToggleSynchronization(bool synchronized);
53 
54  void SetGeometry(const itk::EventObject& event);
55 
56 public Q_SLOTS:
57  void UpdateViewPlaneSelection();
58 
59 Q_SIGNALS:
60 
61  void SynchronizationToggled(QmitkSynchronizedNodeSelectionWidget* synchronizedWidget);
62  void SetDataSelection(const QList<mitk::DataNode::Pointer>& newSelection);
63 
64 private:
65 
66  mitk::BaseRenderer* m_BaseRenderer;
67  QmitkSynchronizedNodeSelectionWidget* m_NodeSelectionWidget;
68  QPushButton* m_SynchPushButton;
69  QmitkSliceNavigationWidget* m_SliceNavigationWidget;
70  QmitkStepperAdapter* m_StepperAdapter;
71  std::unique_ptr<mitk::RenderWindowLayerController> m_RenderWindowLayerController;
72  std::unique_ptr<mitk::RenderWindowViewDirectionController> m_RenderWindowViewDirectionController;
73  QComboBox* m_ViewDirectionSelector;
74 
75  void ChangeViewDirection(const QString& viewDirection);
76 
77 };
78 
79 #endif
MITKQTWIDGETS_EXPORT
#define MITKQTWIDGETS_EXPORT
Definition: MitkQtWidgetsExports.h:15
QmitkStepperAdapter
Helper class to connect Qt-based navigators to instances of Stepper.
Definition: QmitkStepperAdapter.h:32
mitkRenderWindowViewDirectionController.h
QmitkSliceNavigationWidget.h
QmitkRenderWindow
MITK implementation of the QVTKWidget.
Definition: QmitkRenderWindow.h:38
QmitkSynchronizedNodeSelectionWidget.h
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
QmitkRenderWindowUtilityWidget
Definition: QmitkRenderWindowUtilityWidget.h:38
QmitkStepperAdapter.h
QmitkSynchronizedNodeSelectionWidget
Definition: QmitkSynchronizedNodeSelectionWidget.h:42
MitkQtWidgetsExports.h
mitk::DataStorage
Data management class that handles 'was created by' relations.
Definition: mitkDataStorage.h:43
QmitkSliceNavigationWidget
Definition: QmitkSliceNavigationWidget.h:24
mitk::BaseRenderer
Definition: mitkBaseRenderer.h:56
mitkRenderWindowLayerController.h