Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
berry::WorkbenchWindowAdvisor Class Reference

#include <berryWorkbenchWindowAdvisor.h>

Inheritance diagram for berry::WorkbenchWindowAdvisor:

Public Member Functions

 WorkbenchWindowAdvisor (const SmartPointer< IWorkbenchWindowConfigurer > &configurer)
 
virtual ~WorkbenchWindowAdvisor ()
 
virtual void PreWindowOpen ()
 
virtual SmartPointer< ActionBarAdvisorCreateActionBarAdvisor (SmartPointer< IActionBarConfigurer > configurer)
 
virtual void PostWindowRestore ()
 
virtual void OpenIntro ()
 
virtual void PostWindowCreate ()
 
virtual void PostWindowOpen ()
 
virtual bool PreWindowShellClose ()
 
virtual void PostWindowClose ()
 
virtual void CreateWindowContents (SmartPointer< Shell > shell)
 
virtual QWidget * CreateEmptyWindowContents (QWidget *parent)
 
virtual bool SaveState (SmartPointer< IMemento > memento)
 
virtual bool RestoreState (SmartPointer< IMemento > memento)
 

Protected Member Functions

SmartPointer< IWorkbenchWindowConfigurerGetWindowConfigurer ()
 

Detailed Description

Public base class for configuring a workbench window.

The workbench window advisor object is created in response to a workbench window being created (one per window), and is used to configure the window.

An application should declare a subclass of WorkbenchWindowAdvisor and override methods to configure workbench windows to suit the needs of the particular application.

The following advisor methods are called at strategic points in the workbench window's lifecycle (as with the workbench advisor, all occur within the dynamic scope of the call to PlatformUI::CreateAndRunWorkbench()):

  • PreWindowOpen() - called as the window is being opened; use to configure aspects of the window other than actions bars
  • PostWindowRestore() - called after the window has been recreated from a previously saved state; use to adjust the restored window
  • PostWindowCreate() - called after the window has been created, either from an initial state or from a restored state; used to adjust the window
  • OpenIntro() - called immediately before the window is opened in order to create the introduction component, if any.
  • PostWindowOpen() - called after the window has been opened; use to hook window listeners, etc.
  • PreWindowShellClose() - called when the window's shell is closed by the user; use to pre-screen window closings

Definition at line 65 of file berryWorkbenchWindowAdvisor.h.

Constructor & Destructor Documentation

◆ WorkbenchWindowAdvisor()

berry::WorkbenchWindowAdvisor::WorkbenchWindowAdvisor ( const SmartPointer< IWorkbenchWindowConfigurer > &  configurer)

Creates a new workbench window advisor for configuring a workbench window via the given workbench window configurer.

Parameters
configureran object for configuring the workbench window

◆ ~WorkbenchWindowAdvisor()

virtual berry::WorkbenchWindowAdvisor::~WorkbenchWindowAdvisor ( )
virtual

Member Function Documentation

◆ CreateActionBarAdvisor()

virtual SmartPointer<ActionBarAdvisor> berry::WorkbenchWindowAdvisor::CreateActionBarAdvisor ( SmartPointer< IActionBarConfigurer configurer)
virtual

Creates a new action bar advisor to configure the action bars of the window via the given action bar configurer. The default implementation returns a new instance of ActionBarAdvisor.

Parameters
configurerthe action bar configurer for the window
Returns
the action bar advisor for the window

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ CreateEmptyWindowContents()

virtual QWidget* berry::WorkbenchWindowAdvisor::CreateEmptyWindowContents ( QWidget *  parent)
virtual

Creates and returns the control to be shown when the window has no open pages. If null is returned, the default window background is shown.

The default implementation returns null. Subclasses may override.

Parameters
parentthe parent composite
Returns
the control or null

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ CreateWindowContents()

virtual void berry::WorkbenchWindowAdvisor::CreateWindowContents ( SmartPointer< Shell shell)
virtual

Creates the contents of the window.

The default implementation adds a menu bar, a cool bar, a status line, a perspective bar, and a fast view bar. The visibility of these controls can be configured using the SetShow* methods on IWorkbenchWindowConfigurer.

Subclasses may override to define custom window contents and layout, but must call IWorkbenchWindowConfigurer::CreatePageComposite().

Parameters
shellthe window's shell
See also
IWorkbenchWindowConfigurer::CreateMenuBar()
IWorkbenchWindowConfigurer::CreateCoolBarControl()
IWorkbenchWindowConfigurer::CreateStatusLineControl()
IWorkbenchWindowConfigurer::CreatePageComposite()

◆ GetWindowConfigurer()

SmartPointer<IWorkbenchWindowConfigurer> berry::WorkbenchWindowAdvisor::GetWindowConfigurer ( )
protected

Returns the workbench window configurer.

Returns
the workbench window configurer

◆ OpenIntro()

virtual void berry::WorkbenchWindowAdvisor::OpenIntro ( )
virtual

Opens the introduction componenet.

Clients must not call this method directly (although super calls are okay). The default implementation opens the intro in the first window provided if the preference WorkbenchPreferenceConstants::SHOW_INTRO is true. If an intro is shown then this preference will be set to false. Subsequently, and intro will be shown only if WorkbenchConfigurer::GetSaveAndRestore() returns true and the introduction was visible on last shutdown. Subclasses may override.

◆ PostWindowClose()

virtual void berry::WorkbenchWindowAdvisor::PostWindowClose ( )
virtual

Performs arbitrary actions after the window is closed.

This method is called after the window's controls have been disposed. Clients must not call this method directly (although super calls are okay). The default implementation does nothing. Subclasses may override.

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ PostWindowCreate()

virtual void berry::WorkbenchWindowAdvisor::PostWindowCreate ( )
virtual

Performs arbitrary actions after the window has been created (possibly after being restored), but has not yet been opened.

This method is called after the window has been created from scratch, or when it has been restored from a previously-saved window. In the latter case, this method is called after PostWindowRestore(). Clients must not call this method directly (although super calls are okay). The default implementation does nothing. Subclasses may override.

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ PostWindowOpen()

virtual void berry::WorkbenchWindowAdvisor::PostWindowOpen ( )
virtual

Performs arbitrary actions after the window has been opened (possibly after being restored).

This method is called after the window has been opened. This method is called after the window has been created from scratch, or when it has been restored from a previously-saved window. Clients must not call this method directly (although super calls are okay). The default implementation does nothing. Subclasses may override.

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ PostWindowRestore()

virtual void berry::WorkbenchWindowAdvisor::PostWindowRestore ( )
virtual

Performs arbitrary actions after the window has been restored, but before it is opened.

This method is called after a previously-saved window has been recreated. This method is not called when a new window is created from scratch. This method is never called when a workbench is started for the very first time, or when workbench state is not saved or restored. Clients must not call this method directly (although super calls are okay). The default implementation does nothing. Subclasses may override. It is okay to call IWorkbench::Close() from this method.

Exceptions
WorkbenchExceptionthrown if there are any errors to report from post-restoration of the window

◆ PreWindowOpen()

virtual void berry::WorkbenchWindowAdvisor::PreWindowOpen ( )
virtual

Performs arbitrary actions before the window is opened.

This method is called before the window's controls have been created. Clients must not call this method directly (although super calls are okay). The default implementation does nothing. Subclasses may override. Typical clients will use the window configurer to tweak the workbench window in an application-specific way; however, filling the window's menu bar, tool bar, and status line must be done in ActionBarAdvisor::FillActionBars(), which is called immediately after this method is called.

Reimplemented in QmitkExtWorkbenchWindowAdvisor.

◆ PreWindowShellClose()

virtual bool berry::WorkbenchWindowAdvisor::PreWindowShellClose ( )
virtual

Performs arbitrary actions as the window's shell is being closed directly, and possibly veto the close.

This method is called from a IShellListener associated with the window, for example when the user clicks the window's close button. It is not called when the window is being closed for other reasons, such as if the user exits the workbench via the ActionFactory::QUIT action. Clients must not call this method directly (although super calls are okay). If this method returns false, then the user's request to close the shell is ignored. This gives the workbench advisor an opportunity to query the user and/or veto the closing of a window under some circumstances.

Returns
true to allow the window to close, and false to prevent the window from closing
See also
IWorkbenchWindow::Close()
WorkbenchAdvisor::PreShutdown()

◆ RestoreState()

virtual bool berry::WorkbenchWindowAdvisor::RestoreState ( SmartPointer< IMemento memento)
virtual

Restores arbitrary application specific state information.

Parameters
mementothe storage area for object's state
Returns
a status object indicating whether the restore was successful

◆ SaveState()

virtual bool berry::WorkbenchWindowAdvisor::SaveState ( SmartPointer< IMemento memento)
virtual

Saves arbitrary application specific state information.

Parameters
mementothe storage area for object's state
Returns
a status object indicating whether the save was successful

The documentation for this class was generated from the following file: