org.olat.core.gui.control
Interface WindowBackOffice

All Superinterfaces:
Disposable
All Known Implementing Classes:
WindowBackOfficeImpl

public interface WindowBackOffice
extends Disposable

Description:
TODO: Felix Jost Class Description for Trans

Initial Date: 10.02.2007

Author:
Felix Jost, http://www.goodsolutions.ch

Field Summary
static Event IGNORE_BOOKMARK_ONE_TIME
           
 
Method Summary
 void acquireBackHandling(BackHandler backHandler)
          when set, all browser-back and forward moves are sent to the backHandler instead of the ordinary handling (which reverts to the latest gui path in case of back).
 void addCycleListener(GenericEventListener gel)
          not used normally! normally you do not have to care about when happens what - you should only need to know what to do in your event-methods of your controllers.
 void adjustGuiPathCenter(WindowControlInfo wci)
           
 Controller createAJAXController(UserRequest ureq)
           
 Controller createDebugDispatcherController(UserRequest ureq, WindowControl windowControl)
           
 Controller createDevelopmentController(UserRequest ureq, WindowControl windowControl)
           
 GuiStack createGuiStack(Component initialComponent)
           
 Controller createInlineTranslationDispatcherController(UserRequest ureq, WindowControl windowControl)
          Factory method to create the inline translation tool dispatcher controller.
 java.lang.String getBusinessControlPath()
           
 java.lang.Object getData(java.lang.String key)
          gets the data
 GlobalSettings getGlobalSettings()
           
 Window getWindow()
           
 WindowManager getWindowManager()
           
 void informControllerCreated(WindowControl wControl, Controller controller)
           
 void informControllerDispatched(WindowControl wControl, Controller controller, Component source, Event event)
           
 void invokeLater(java.lang.Runnable runnable)
          Use this method for asynchronous updates to the gui.
 boolean isDebuging()
           
 void putData(java.lang.String key, java.lang.Object value)
          together with getData and registerForCycleEvents, this serves to exchange request-transient render-related data amongst parties, e.g.
 void releaseBackHandling(BackHandler backHandler)
          releases any back handler.
 void removeCycleListener(GenericEventListener gel)
           
 void sendCommandTo(Command wco)
           
 
Methods inherited from interface org.olat.core.gui.control.Disposable
dispose
 

Field Detail

IGNORE_BOOKMARK_ONE_TIME

static final Event IGNORE_BOOKMARK_ONE_TIME
Method Detail

getWindowManager

WindowManager getWindowManager()

getWindow

Window getWindow()
Returns:
the window associated

createDevelopmentController

Controller createDevelopmentController(UserRequest ureq,
                                       WindowControl windowControl)
Parameters:
ureq -
windowControl -
Returns:

getGlobalSettings

GlobalSettings getGlobalSettings()
Returns:

createDebugDispatcherController

Controller createDebugDispatcherController(UserRequest ureq,
                                           WindowControl windowControl)
Parameters:
ureq -
windowControl -
Returns:

createInlineTranslationDispatcherController

Controller createInlineTranslationDispatcherController(UserRequest ureq,
                                                       WindowControl windowControl)
Factory method to create the inline translation tool dispatcher controller. This implicitly sets the translation controller on the window back office

Parameters:
ureq -
windowControl -
Returns:

createAJAXController

Controller createAJAXController(UserRequest ureq)
Parameters:
ureq -
Returns:

isDebuging

boolean isDebuging()
Returns:

informControllerDispatched

void informControllerDispatched(WindowControl wControl,
                                Controller controller,
                                Component source,
                                Event event)

informControllerCreated

void informControllerCreated(WindowControl wControl,
                             Controller controller)
Parameters:
controller -

getBusinessControlPath

java.lang.String getBusinessControlPath()

createGuiStack

GuiStack createGuiStack(Component initialComponent)
Parameters:
initialComponent -
Returns:

invokeLater

void invokeLater(java.lang.Runnable runnable)
Use this method for asynchronous updates to the gui.
invokes the runnable at a time when it is safe, that is the dispatching and rendering of the window is not disturbed.

Parameters:
runnable - the runnable

sendCommandTo

void sendCommandTo(Command wco)
Parameters:
wco - the Command to be sent to the client (all requests are queued and sent in a batch at the end of the request)

putData

void putData(java.lang.String key,
             java.lang.Object value)
together with getData and registerForCycleEvents, this serves to exchange request-transient render-related data amongst parties, e.g. layoutcontrollers telling the implementor of the windowcontrol/guimessage receiver where to visually put the guimessage.
all the data is clear before the inline-rendering-about-to-start event, since after that point no state change must occur.

Parameters:
key - the key (to be agreed upon by the inter-communicating parties)
value - any object

getData

java.lang.Object getData(java.lang.String key)
gets the data

Parameters:
key - the key
Returns:
See Also:
putData(String key, Object value)

addCycleListener

void addCycleListener(GenericEventListener gel)
not used normally! normally you do not have to care about when happens what - you should only need to know what to do in your event-methods of your controllers. when listeners want to be informed about cycles in the dispatching/validating/rendering

Parameters:
gel - the listener

removeCycleListener

void removeCycleListener(GenericEventListener gel)

adjustGuiPathCenter

void adjustGuiPathCenter(WindowControlInfo wci)

acquireBackHandling

void acquireBackHandling(BackHandler backHandler)
when set, all browser-back and forward moves are sent to the backHandler instead of the ordinary handling (which reverts to the latest gui path in case of back). use when "critical" use cases/controllers are in progress, such as a qti-test where a (unintended) back-button-click should not leave the current workflow.
this method should be called from the constructor of the controller that wishes to control the back-handling.
an existing backhandler will be overridden, that is, only the latest set has any effect TODO: check if boolean (done/skip) instead of void makes sense here to backevent-bubble. or if the back-handlers should be stacked (what would be real use cases for such a thing?)

Parameters:
backHandler -

releaseBackHandling

void releaseBackHandling(BackHandler backHandler)
releases any back handler. must be called by a controller in its dispose method when it acquired a backhandling in its contructor.

Parameters:
backHandler - the backhandler to release