Medical Imaging Interaction Toolkit  2018.4.99-eed36131
Medical Imaging Interaction Toolkit
berryStackPresentation.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 
14 #ifndef BERRYSTACKPRESENTATION_H_
15 #define BERRYSTACKPRESENTATION_H_
16 
17 #include <berryMacros.h>
18 
20 
23 #include "berryStackDropResult.h"
24 
25 #include "berryISizeProvider.h"
26 #include "berryIMemento.h"
27 
28 namespace berry
29 {
30 
53 
54 public:
55 
57 
58 private:
59 
64 
65 protected:
66 
73 
74  ~StackPresentation() override;
75 
81 
82 public:
83 
87  static const int AS_INACTIVE; // = 0;
88 
92  static const int AS_ACTIVE_FOCUS; // = 1;
93 
98  static const int AS_ACTIVE_NOFOCUS; // = 2;
99 
105  virtual void SetBounds(const QRect& bounds) = 0;
106 
118  virtual QSize ComputeMinimumSize();
119 
120  /*
121  * @see ISizeProvider#getSizeFlags(boolean)
122  */
123  int GetSizeFlags(bool width) override;
124 
125  /*
126  * @see ISizeProvider#computePreferredSize(boolean, int, int, int)
127  */
128  int ComputePreferredSize(bool width, int availableParallel, int availablePerpendicular, int preferredResult) override;
129 
137  virtual void SetActive(int newState) = 0;
138 
150  virtual void SetVisible(bool isVisible) = 0;
151 
165  virtual void SetState(int state) = 0;
166 
172  virtual QWidget* GetControl() = 0;
173 
186  virtual void AddPart(IPresentablePart::Pointer newPart, Object::Pointer cookie) = 0;
187 
193  virtual void RemovePart(IPresentablePart::Pointer oldPart) = 0;
194 
203  virtual void MovePart(IPresentablePart::Pointer toMove, Object::Pointer cookie);
204 
211  virtual void SelectPart(IPresentablePart::Pointer toSelect) = 0;
212 
223  virtual StackDropResult::Pointer DragOver(QWidget* currentControl, const QPoint& location) = 0;
224 
229  // virtual void ShowSystemMenu() = 0;
230 
234  // virtual void ShowPaneMenu() = 0;
235 
240  virtual void ShowPartList();
241 
249  virtual void SaveState(IPresentationSerializer* context, IMemento::Pointer memento);
250 
258  virtual void RestoreState(IPresentationSerializer* context, IMemento::Pointer memento);
259 
266  virtual QList<QWidget*> GetTabList(IPresentablePart::Pointer part) = 0;
267 };
268 
269 }
270 
271 #endif /* BERRYSTACKPRESENTATION_H_ */
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:72
#define berryObjectMacro(...)
Definition: berryMacros.h:33
berry::WeakPointer< Self > WeakPtr
Definition: berryObject.h:84
#define BERRY_UI_QT