org.olat.core.gui.control.generic.breadcrumb
Class CrumbBasicController

java.lang.Object
  extended by org.olat.core.gui.control.DefaultController
      extended by org.olat.core.gui.control.controller.BasicController
          extended by org.olat.core.gui.control.generic.breadcrumb.CrumbBasicController
All Implemented Interfaces:
Controller, ControllerEventListener, Disposable, CrumbController

public abstract class CrumbBasicController
extends BasicController
implements CrumbController

Description:

This abstract class serves as a base for controllers that can be used in a bread crumb path navigation controller. It provides methods to activate and deactivate child controllers.

Initial Date: 09.09.2008

Author:
Florian Gnaegi, frentix GmbH, http://www.frentix.com

Method Summary
 void activateAndListenToChildCrumbController(CrumbController childCrumbController)
          Use this method to put another crumb on the bread crumb stack.
 void deactivateAndDisposeChildCrumbController()
          De-activate a child crumb that has been activated using activateAndListenToChildCrumbController().
 CrumbController getChildCrumbController()
           
abstract  java.lang.String getCrumbLinkHooverText()
           
abstract  java.lang.String getCrumbLinkText()
           
 void removeFromBreadCrumbPathAndDispose()
          This method can be used to de-activate the current crumb controller itself.
 void resetCrumbTexts()
          Force the bread crumb path to reload each label on the path
 void setBreadCrumbController(BreadCrumbController breadCrumbCtr)
          Set the bread crumb navigation.
 
Methods inherited from class org.olat.core.gui.control.DefaultController
addControllerListener, addLoggingResourceable, dispatchEvent, dispatchEvent, dispose, getControllerCount, getInitialComponent, getUserActivityLogger, getWindowControlForDebug, isDisposed, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.olat.core.gui.control.Controller
addControllerListener, dispatchEvent, dispose, getInitialComponent, getUserActivityLogger, getWindowControlForDebug, isDisposed
 
Methods inherited from interface org.olat.core.gui.control.ControllerEventListener
dispatchEvent
 

Method Detail

getCrumbLinkText

public abstract java.lang.String getCrumbLinkText()
Specified by:
getCrumbLinkText in interface CrumbController
Returns:
the translated text that should appear in the bread crumb path

getCrumbLinkHooverText

public abstract java.lang.String getCrumbLinkHooverText()
Specified by:
getCrumbLinkHooverText in interface CrumbController
Returns:
the translated hoover text that should appear in the bread crumb path when hoovering over the link text

getChildCrumbController

public CrumbController getChildCrumbController()
Specified by:
getChildCrumbController in interface CrumbController
Returns:
The current child crumb controller

setBreadCrumbController

public void setBreadCrumbController(BreadCrumbController breadCrumbCtr)
Description copied from interface: CrumbController
Set the bread crumb navigation.

Specified by:
setBreadCrumbController in interface CrumbController

activateAndListenToChildCrumbController

public void activateAndListenToChildCrumbController(CrumbController childCrumbController)
Description copied from interface: CrumbController
Use this method to put another crumb on the bread crumb stack. This will register the child crumb within the bread crumb navigation and activate it. As as side effect, it will attach the current class as listener, so you don't have to do this yourself.

Specified by:
activateAndListenToChildCrumbController in interface CrumbController

deactivateAndDisposeChildCrumbController

public void deactivateAndDisposeChildCrumbController()
Description copied from interface: CrumbController
De-activate a child crumb that has been activated using activateAndListenToChildCrumbController(). The method will also remove the crumb as listener from this class and dispose the crumb.

Specified by:
deactivateAndDisposeChildCrumbController in interface CrumbController

removeFromBreadCrumbPathAndDispose

public void removeFromBreadCrumbPathAndDispose()
Description copied from interface: CrumbController
This method can be used to de-activate the current crumb controller itself. It will remove the crumb from the bread crumb navigation and execute the necessary child crumb de-activation and disposal code

Specified by:
removeFromBreadCrumbPathAndDispose in interface CrumbController

resetCrumbTexts

public void resetCrumbTexts()
Description copied from interface: CrumbController
Force the bread crumb path to reload each label on the path

Specified by:
resetCrumbTexts in interface CrumbController