Medical Imaging Interaction Toolkit  2023.12.99-ed252ae7
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 
266  virtual void AddEditorAreaTransfer(const QStringList& transferTypes) = 0;
267 
289  virtual void ConfigureEditorAreaDropListener(IDropTargetListener* dropTargetListener) = 0;
290 
305  virtual QMenuBar* CreateMenuBar() = 0;
306 
323  virtual QWidget* CreateToolBar(QWidget* parent) = 0;
324 
325  /*
326  * Creates the status line control.
327  * <p>
328  * This should only be called if the advisor is defining custom window contents
329  * in <code>createWindowContents</code>, and may only be called once.
330  * The caller must lay out the status line appropriately within the parent,
331  * but must not add, remove or change items in the result (hence the
332  * return type of <code>Control</code>).
333  * The status line is populated by the window's status line manager.
334  * The application can add to the status line manager in the advisor's
335  * <code>fillActionBars</code> method instead.
336  * </p>
337  *
338  * @param parent the parent composite
339  * @return the status line control, suitable for laying out in the parent
340  */
341  //virtual Control createStatusLineControl(Composite parent);
342 
357  virtual QWidget* CreatePageComposite(QWidget* parent) = 0;
358 
366  virtual bool SaveState(SmartPointer<IMemento> memento) = 0;
367 };
368 
369 }
370 
371 #endif /*BERRYIWORKBENCHWINDOWCONFIGURER_H_*/
org_blueberry_ui_qt_Export.h
berry::SmartPointer
Implements transparent reference counting.
Definition: berryICommandCategoryListener.h:21
berry::Object
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:72
BERRY_UI_QT
#define BERRY_UI_QT
Definition: org_blueberry_ui_qt_Export.h:26
berry::IWorkbenchWindowConfigurer
Definition: berryIWorkbenchWindowConfigurer.h:50
berryObjectMacro
#define berryObjectMacro(...)
Definition: berryMacros.h:31
berryObject.h
berry
Definition: QmitkPropertyItemModel.h:24
berry::IDropTargetListener
Definition: berryIDropTargetListener.h:28