Medical Imaging Interaction Toolkit  2018.4.99-6aa36ba9
Medical Imaging Interaction Toolkit
berryIWorkbenchWindowConfigurer.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 BERRYIWORKBENCHWINDOWCONFIGURER_H_
14 #define BERRYIWORKBENCHWINDOWCONFIGURER_H_
15 
16 #include <berryObject.h>
17 
19 
20 class QMenuBar;
21 
22 namespace berry
23 {
24 
25 struct IActionBarConfigurer;
26 struct IDropTargetListener;
27 struct IMemento;
28 struct IWorkbenchConfigurer;
29 struct IWorkbenchWindow;
30 
51 {
52 
54 
55  ~IWorkbenchWindowConfigurer() override;
56 
62  virtual SmartPointer<IWorkbenchWindow> GetWindow() = 0;
63 
69  virtual SmartPointer<IWorkbenchConfigurer> GetWorkbenchConfigurer() = 0;
70 
77  virtual SmartPointer<IActionBarConfigurer> GetActionBarConfigurer() = 0;
78 
84  virtual QString GetTitle() = 0;
85 
91  virtual void SetTitle(const QString& title) = 0;
92 
102  virtual bool GetShowMenuBar() const = 0;
103 
110  virtual void SetShowMenuBar(bool show) = 0;
111 
121  virtual bool GetShowToolBar() const = 0;
122 
129  virtual void SetShowToolBar(bool show) = 0;
130 
140  virtual bool GetShowStatusLine() const = 0;
141 
148  virtual void SetShowStatusLine(bool show) = 0;
149 
160  virtual bool GetShowPerspectiveBar() const = 0;
161 
169  virtual void SetShowPerspectiveBar(bool show) = 0;
170 
180  virtual bool GetShowProgressIndicator() const = 0;
181 
188  virtual void SetShowProgressIndicator(bool show) = 0;
189 
196  virtual Qt::WindowFlags GetWindowFlags() const = 0;
197 
210  virtual void SetWindowFlags(Qt::WindowFlags windowFlags) = 0;
211 
217  virtual QPoint GetInitialSize() const = 0;
218 
227  virtual void SetInitialSize(QPoint initialSize) = 0;
228 
229  /*
230  * Returns the data associated with this workbench window at the given key.
231  *
232  * @param key the key
233  * @return the data, or <code>null</code> if there is no data at the given
234  * key
235  */
236  //virtual Object getData(String key);
237 
238  /*
239  * Sets the data associated with this workbench window at the given key.
240  *
241  * @param key the key
242  * @param data the data, or <code>null</code> to delete existing data
243  */
244  //virtual void setData(String key, Object data);
245 
267  virtual void AddEditorAreaTransfer(const QStringList& transferTypes) = 0;
268 
290  virtual void ConfigureEditorAreaDropListener(IDropTargetListener* dropTargetListener) = 0;
291 
306  virtual QMenuBar* CreateMenuBar() = 0;
307 
324  virtual QWidget* CreateToolBar(QWidget* parent) = 0;
325 
326  /*
327  * Creates the status line control.
328  * <p>
329  * This should only be called if the advisor is defining custom window contents
330  * in <code>createWindowContents</code>, and may only be called once.
331  * The caller must lay out the status line appropriately within the parent,
332  * but must not add, remove or change items in the result (hence the
333  * return type of <code>Control</code>).
334  * The status line is populated by the window's status line manager.
335  * The application can add to the status line manager in the advisor's
336  * <code>fillActionBars</code> method instead.
337  * </p>
338  *
339  * @param parent the parent composite
340  * @return the status line control, suitable for laying out in the parent
341  */
342  //virtual Control createStatusLineControl(Composite parent);
343 
358  virtual QWidget* CreatePageComposite(QWidget* parent) = 0;
359 
367  virtual bool SaveState(SmartPointer<IMemento> memento) = 0;
368 };
369 
370 }
371 
372 #endif /*BERRYIWORKBENCHWINDOWCONFIGURER_H_*/
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:72
Implements transparent reference counting.
#define berryObjectMacro(...)
Definition: berryMacros.h:33
#define BERRY_UI_QT