Medical Imaging Interaction Toolkit  2018.04.99-46eee069
Medical Imaging Interaction Toolkit
berryIWorkbench.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 BERRYIWORKBENCH_H_
14 #define BERRYIWORKBENCH_H_
15 
16 #include <berryMacros.h>
17 
19 #include "berryIViewRegistry.h"
20 #include "berryIEditorRegistry.h"
23 #include "berryIWorkbenchWindow.h"
25 #include "berryIWindowListener.h"
26 #include "berryDisplay.h"
27 
28 namespace berry {
29 
30 struct IElementFactory;
31 struct IExtensionTracker;
32 struct IWorkbenchPage;
33 
81 
83 
84  ~IWorkbench() override;
85 
96  virtual Display* GetDisplay() const = 0;
97 
105  virtual void AddWorkbenchListener(IWorkbenchListener* listener) = 0;
106 
114  virtual void RemoveWorkbenchListener(IWorkbenchListener* listener) = 0;
115 
119  virtual IWorkbenchListener::Events& GetWorkbenchEvents() = 0;
120 
128  virtual void AddWindowListener(IWindowListener* listener) = 0;
129 
137  virtual void RemoveWindowListener(IWindowListener* listener) = 0;
138 
143  virtual IWindowListener::Events& GetWindowEvents() = 0;
144 
155  virtual bool Close() = 0;
156 
165  virtual IWorkbenchWindow::Pointer GetActiveWorkbenchWindow() const = 0;
166 
180  virtual IExtensionTracker* GetExtensionTracker() const = 0;
181 
187  virtual IPerspectiveRegistry* GetPerspectiveRegistry() const = 0;
188 
195  virtual IViewRegistry* GetViewRegistry() const = 0;
196 
202  virtual IEditorRegistry* GetEditorRegistry() const = 0;
203 
212  virtual std::size_t GetWorkbenchWindowCount() const = 0;
213 
221  virtual QList<IWorkbenchWindow::Pointer> GetWorkbenchWindows() const = 0;
222 
254  virtual IWorkbenchWindow::Pointer OpenWorkbenchWindow(const QString& perspectiveId,
255  IAdaptable* input) = 0;
256 
279  virtual IWorkbenchWindow::Pointer OpenWorkbenchWindow(IAdaptable* input) = 0;
280 
320  virtual SmartPointer<IWorkbenchPage> ShowPerspective(const QString& perspectiveId,
321  IWorkbenchWindow::Pointer window) = 0;
322 
366  virtual SmartPointer<IWorkbenchPage> ShowPerspective(const QString& perspectiveId,
367  IWorkbenchWindow::Pointer window, IAdaptable* input) = 0;
368 
381  virtual bool SaveAllEditors(bool confirm) = 0;
382 
392  virtual IElementFactory* GetElementFactory(const QString& factoryId) const = 0;
393 
400  virtual IIntroManager* GetIntroManager() const = 0;
401 
410  virtual bool IsClosing() const = 0;
411 
415  virtual void UpdateTheme() = 0;
416 
417 };
418 
419 }
420 
421 #endif /*BERRYIWORKBENCH_H_*/
#define berryObjectMacro(...)
Definition: berryMacros.h:33
#define BERRY_UI_QT