Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
QmitkMultiWidgetLayoutManager.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 QmitkMultiWidgetLayoutManager_h
14 #define QmitkMultiWidgetLayoutManager_h
15 
16 #include "MitkQtWidgetsExports.h"
17 
18 #include <QObject>
19 
22 
36 {
37  Q_OBJECT
38 
39 public:
40 
41  enum class LayoutDesign
42  {
43  DEFAULT = 0,
44  ALL_2D_TOP_3D_BOTTOM,
45  ALL_2D_LEFT_3D_RIGHT,
46  ONE_BIG,
47  ONLY_2D_HORIZONTAL,
48  ONLY_2D_VERTICAL,
49  ONE_TOP_3D_BOTTOM,
50  ONE_LEFT_3D_RIGHT,
51  ALL_HORIZONTAL,
52  ALL_VERTICAL,
53  REMOVE_ONE,
54  NONE
55  };
56 
58 
63  void SetLayoutDesign(LayoutDesign layoutDesign);
72 
119 
120 private:
121 
122  QmitkAbstractMultiWidget* m_MultiWidget;
123  QmitkRenderWindowWidget* m_CurrentRenderWindowWidget;
124 
125 };
126 
127 #endif
#define MITKQTWIDGETS_EXPORT
The 'QmitkAbstractMultiWidget' is a 'QWidget' that can be subclassed to display multiple render windo...
The layout manager provides different layout-functions that can modify the layout of an QmitkAbstract...
void SetOnly2DVerticalLayout()
All 2D render windows are spread vertically, no 3D render windows.
void SetDefaultLayout()
The default layout shows all render windows in a rectangle.
void SetAllHorizontalLayout()
All 2D and 3D render windows are spread horizontally.
void SetOneTop3DBottomLayout()
The current render window is put above all 3D render windows, which are spread horizontally below the...
void RemoveOneLayout()
Hide the current render window.
void SetOnly2DHorizontalLayout()
All 2D render windows are spread horizontally, no 3D render windows.
void SetAll2DTop3DBottomLayout()
All 2D render windows are spread horizontally above all 3D render windows.
void SetOneLeft3DRightLayout()
The current render window is put beneath all 3D render windows, which are spread vertically beneath t...
void SetAllVerticalLayout()
All 2D and 3D render windows are spread vertically.
void SetCurrentRenderWindowWidget(QmitkRenderWindowWidget *renderWindowWidget)
Allow setting the current render window widget without relying on the sending object.
void SetLayoutDesign(LayoutDesign layoutDesign)
This function is called by render window widgets. Given a specific layout design the layout of the mu...
void SetOneBigLayout()
The current render window is displayed as a single 'full screen' render window.
void SetAll2DLeft3DRightLayout()
All 2D render windows are spread vertically beneath all 3D render windows.
QmitkMultiWidgetLayoutManager(QmitkAbstractMultiWidget *multiwidget)
The 'QmitkRenderWindowWidget' is a QFrame that holds a render window and some associates properties,...