Medical Imaging Interaction Toolkit  2025.12.02
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 
120 
128  virtual void AddWindowListener(IWindowListener* listener) = 0;
129 
137  virtual void RemoveWindowListener(IWindowListener* listener) = 0;
138 
144 
155  virtual bool Close() = 0;
156 
166 
181 
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 
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_*/
Implements transparent reference counting.
#define BERRY_UI_QT
virtual SmartPointer< IWorkbenchPage > ShowPerspective(const QString &perspectiveId, IWorkbenchWindow::Pointer window)=0
virtual bool Close()=0
virtual IExtensionTracker * GetExtensionTracker() const =0
virtual IWorkbenchListener::Events & GetWorkbenchEvents()=0
virtual IElementFactory * GetElementFactory(const QString &factoryId) const =0
virtual IWorkbenchWindow::Pointer OpenWorkbenchWindow(IAdaptable *input)=0
virtual void AddWorkbenchListener(IWorkbenchListener *listener)=0
virtual std::size_t GetWorkbenchWindowCount() const =0
virtual bool IsClosing() const =0
virtual IWorkbenchWindow::Pointer OpenWorkbenchWindow(const QString &perspectiveId, IAdaptable *input)=0
virtual SmartPointer< IWorkbenchPage > ShowPerspective(const QString &perspectiveId, IWorkbenchWindow::Pointer window, IAdaptable *input)=0
virtual IViewRegistry * GetViewRegistry() const =0
virtual IEditorRegistry * GetEditorRegistry() const =0
berryObjectMacro(berry::IWorkbench)
virtual IIntroManager * GetIntroManager() const =0
virtual IPerspectiveRegistry * GetPerspectiveRegistry() const =0
virtual IWorkbenchWindow::Pointer GetActiveWorkbenchWindow() const =0
~IWorkbench() override
virtual QList< IWorkbenchWindow::Pointer > GetWorkbenchWindows() const =0
virtual IWindowListener::Events & GetWindowEvents()=0
virtual Display * GetDisplay() const =0
virtual void AddWindowListener(IWindowListener *listener)=0
virtual bool SaveAllEditors(bool confirm)=0
virtual void RemoveWindowListener(IWindowListener *listener)=0
virtual void UpdateTheme()=0
virtual void RemoveWorkbenchListener(IWorkbenchListener *listener)=0