bibliothek.gui.dock.control
Interface DockControllerFactory

All Known Implementing Classes:
DefaultDockControllerFactory, SecureDockControllerFactory

public interface DockControllerFactory

Contains various factory methods which are used during initialization of a DockController

Author:
Benjamin Sigg

Method Summary
 DockRegisterListener createActionBinder(DockController controller, ControllerSetupCollection setup)
          Creates a listener that will ensure that every DockAction is bound to its Dockable.
 ActionViewConverter createActionViewConverter(DockController controller, ControllerSetupCollection setup)
          Creates the converter that will transform actions into views.
 ActionOffer createDefaultActionOffer(DockController controller, ControllerSetupCollection setup)
          Creates the default action offer.
 DockableSelector createDockableSelector(DockController controller, ControllerSetupCollection setup)
          Creates a new selector for Dockables.
 DoubleClickController createDoubleClickController(DockController controller, ControllerSetupCollection setup)
          Creates the controller that will forward double clicks with the mouse.
 ExtensionManager createExtensionManager(DockController controller, ControllerSetupCollection setup)
          Creates a new ExtensionManager.
 DockRegisterListener createFocusController(DockController controller, ControllerSetupCollection setup)
          Creates a listener which will observe all stations to ensure that the focused Dockable is always visible.
 KeyboardController createKeyboardController(DockController controller, ControllerSetupCollection setup)
          Creates a new controller for global KeyEvents.
 MouseFocusObserver createMouseFocusObserver(DockController controller, ControllerSetupCollection setup)
          Creates the focus-controller of the controller.
 PopupController createPopupController(DockController controller, ControllerSetupCollection setup)
          Creates a listener which will open a popup-menu for each title or dockable known to the controller.
 DockRegister createRegister(DockController controller, ControllerSetupCollection setup)
          Creates a new register for the controller.
 DockRelocator createRelocator(DockController controller, ControllerSetupCollection setup)
          Creates a new relocator for the controller.
 SingleParentRemover createSingleParentRemover(DockController controller, ControllerSetupCollection setup)
          Creates a SingleParentRemover that will be used to remove some stations from this controller.
 

Method Detail

createRegister

DockRegister createRegister(DockController controller,
                            ControllerSetupCollection setup)
Creates a new register for the controller.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new register

createRelocator

DockRelocator createRelocator(DockController controller,
                              ControllerSetupCollection setup)
Creates a new relocator for the controller.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the relocator

createFocusController

DockRegisterListener createFocusController(DockController controller,
                                           ControllerSetupCollection setup)
Creates a listener which will observe all stations to ensure that the focused Dockable is always visible.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the listener or null

createPopupController

PopupController createPopupController(DockController controller,
                                      ControllerSetupCollection setup)
Creates a listener which will open a popup-menu for each title or dockable known to the controller.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new listener or null

createActionBinder

DockRegisterListener createActionBinder(DockController controller,
                                        ControllerSetupCollection setup)
Creates a listener that will ensure that every DockAction is bound to its Dockable.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new listener or null

createMouseFocusObserver

MouseFocusObserver createMouseFocusObserver(DockController controller,
                                            ControllerSetupCollection setup)
Creates the focus-controller of the controller.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the controller, not null

createDoubleClickController

DoubleClickController createDoubleClickController(DockController controller,
                                                  ControllerSetupCollection setup)
Creates the controller that will forward double clicks with the mouse.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the controller, not null

createKeyboardController

KeyboardController createKeyboardController(DockController controller,
                                            ControllerSetupCollection setup)
Creates a new controller for global KeyEvents.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new controller, not null

createDockableSelector

DockableSelector createDockableSelector(DockController controller,
                                        ControllerSetupCollection setup)
Creates a new selector for Dockables.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new controller, not null

createActionViewConverter

ActionViewConverter createActionViewConverter(DockController controller,
                                              ControllerSetupCollection setup)
Creates the converter that will transform actions into views.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new converter, not null

createDefaultActionOffer

ActionOffer createDefaultActionOffer(DockController controller,
                                     ControllerSetupCollection setup)
Creates the default action offer. This ActionOffer will be used if no other offer was interested in a Dockable.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the offer, must not be null

createSingleParentRemover

SingleParentRemover createSingleParentRemover(DockController controller,
                                              ControllerSetupCollection setup)
Creates a SingleParentRemover that will be used to remove some stations from this controller.

Parameters:
controller - the controller for which the element is created
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
The remover

createExtensionManager

ExtensionManager createExtensionManager(DockController controller,
                                        ControllerSetupCollection setup)
Creates a new ExtensionManager.

Parameters:
controller - the controller which will use the manager
setup - an observable where new objects can add ControllerSetupListener to be informed when the setup of controller is finished.
Returns:
the new manager, not null