wicket.extensions.breadcrumb.panel
Class BreadCrumbPanel

java.lang.Object
  extended bywicket.Component
      extended bywicket.MarkupContainer
          extended bywicket.markup.html.WebMarkupContainer
              extended bywicket.markup.html.WebMarkupContainerWithAssociatedMarkup
                  extended bywicket.markup.html.panel.Panel
                      extended bywicket.extensions.breadcrumb.panel.BreadCrumbPanel
All Implemented Interfaces:
IBreadCrumbParticipant, java.io.Serializable

public abstract class BreadCrumbPanel
extends wicket.markup.html.panel.Panel
implements IBreadCrumbParticipant

A panel that participates with a bread crumb model. The idea is that you would have a dialog-like component that is much like a wizard, but more decoupled. A typical setup is that you have a panel, where the content is dynamic but hierarchical in nature, and that there are links on the panel that take you deeper into the hierarchy

An example of using bread crumb panels and bread crumb links:

 add(new BreadCrumbLink("myLink", breadCrumbModel)
 {
 	protected IBreadCrumbParticipant getParticipant(String componentId)
 	{
 		return new MyPanel(componentId, breadCrumbModel);
 	}
 });
 
where MyPanel is a bread crumb panel and the link is added to another bread crumb panel instance (this). When clicked, MyPanel will replace the panel that the link is placed on, and it will set (and add) MyPanel as the active bread crumb in the bread crumb component model.

Author:
Eelco Hillenius
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class wicket.markup.html.WebMarkupContainerWithAssociatedMarkup
wicket.markup.html.WebMarkupContainerWithAssociatedMarkup.HeaderPartContainer
 
Nested classes inherited from class wicket.Component
wicket.Component.ComponentModelChange, wicket.Component.EnabledChange, wicket.Component.IVisitor, wicket.Component.VisibilityChange
 
Field Summary
 
Fields inherited from class wicket.Component
ENABLE, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PATH_SEPARATOR, RENDER
 
Constructor Summary
BreadCrumbPanel(java.lang.String id, IBreadCrumbModel breadCrumbModel)
          Construct.
BreadCrumbPanel(java.lang.String id, IBreadCrumbModel breadCrumbModel, wicket.model.IModel model)
          Construct.
 
Method Summary
 void activate(IBreadCrumbPanelFactory breadCrumbPanelFactory)
          Activates the bread crumb panel that is the result of calling the create method of the bread crumb panel factory.
 void activate(IBreadCrumbParticipant participant)
          Activates the provided participant, which typically has the effect of replacing this current panel with the one provided - as the participant typically would be a bread crumb panel - and updating the bread crumb model of this panel, pushing the bread crumb for the given participant on top.
 IBreadCrumbModel getBreadCrumbModel()
          Gets the bread crumb panel.
 wicket.Component getComponent()
          The participating component == this.
 void onActivate(IBreadCrumbParticipant previous)
          If the previous participant is not null (and a component, which it should be), replace that component on it's parent with this one.
 void setBreadCrumbModel(IBreadCrumbModel breadCrumbModel)
          Sets the bread crumb panel.
 
Methods inherited from class wicket.markup.html.panel.Panel
onComponentTag, onComponentTagBody, renderHead
 
Methods inherited from class wicket.markup.html.WebMarkupContainerWithAssociatedMarkup
newHeaderPartContainer, renderHeadFromAssociatedMarkupFile
 
Methods inherited from class wicket.markup.html.WebMarkupContainer
getMarkupType, getWebPage
 
Methods inherited from class wicket.MarkupContainer
add, autoAdd, contains, findMarkupStream, get, getAssociatedMarkupStream, getMarkupStream, internalAdd, internalAttach, internalDetach, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, replace, setMarkupStream, setModel, size, toString, toString, visitChildren, visitChildren
 
Methods inherited from class wicket.Component
add, addStateChange, checkComponentTag, checkComponentTagAttribute, continueToOriginalDestination, debug, detachBehaviors, detachModel, detachModels, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getApplication, getApplicationPages, getApplicationSettings, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMetaData, getModel, getModelComparator, getModelObject, getModelObjectAsString, getOutputMarkupId, getPage, getPageFactory, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getString, getString, getString, getStyle, getVariation, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnAttach, internalOnDetach, internalOnModelChanged, isActionAuthorized, isAncestorOf, isBehaviorAccepted, isEnableAllowed, isEnabled, isHeadRendered, isIgnoreAttributeModifier, isRenderAllowed, isVersioned, isVisible, isVisibleInHierarchy, modelChanged, modelChanging, newPage, newPage, onAfterRender, onAttach, onBeforeRender, onBeginRequest, onDetach, onEndRequest, onModelChanged, onModelChanging, onRender, redirectToInterceptPage, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderedBehaviors, replaceComponentTagBody, replaceWith, resetHeadRendered, sameRootModel, sameRootModel, setAuto, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMetaData, setModelObject, setOutputMarkupId, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface wicket.extensions.breadcrumb.IBreadCrumbParticipant
getTitle
 

Constructor Detail

BreadCrumbPanel

public BreadCrumbPanel(java.lang.String id,
                       IBreadCrumbModel breadCrumbModel)
Construct.

Parameters:
id - Component id
breadCrumbModel - The bread crumb model

BreadCrumbPanel

public BreadCrumbPanel(java.lang.String id,
                       IBreadCrumbModel breadCrumbModel,
                       wicket.model.IModel model)
Construct.

Parameters:
id - Component id
breadCrumbModel - The bread crumb model
model - The model
Method Detail

activate

public void activate(IBreadCrumbPanelFactory breadCrumbPanelFactory)
Activates the bread crumb panel that is the result of calling the create method of the bread crumb panel factory.

Parameters:
breadCrumbPanelFactory -

activate

public void activate(IBreadCrumbParticipant participant)
Activates the provided participant, which typically has the effect of replacing this current panel with the one provided - as the participant typically would be a bread crumb panel - and updating the bread crumb model of this panel, pushing the bread crumb for the given participant on top.

Parameters:
participant - The participant to set as the active one

getBreadCrumbModel

public final IBreadCrumbModel getBreadCrumbModel()
Gets the bread crumb panel.

Returns:
The bread crumb panel

getComponent

public wicket.Component getComponent()
The participating component == this.

Specified by:
getComponent in interface IBreadCrumbParticipant
Returns:
The participating component, must return a non-null value
See Also:
IBreadCrumbParticipant.getComponent()

onActivate

public void onActivate(IBreadCrumbParticipant previous)
If the previous participant is not null (and a component, which it should be), replace that component on it's parent with this one.

Specified by:
onActivate in interface IBreadCrumbParticipant
Parameters:
previous - The previously active bread crumb participant, possibly null
See Also:
IBreadCrumbParticipant.onActivate(wicket.extensions.breadcrumb.IBreadCrumbParticipant)

setBreadCrumbModel

public final void setBreadCrumbModel(IBreadCrumbModel breadCrumbModel)
Sets the bread crumb panel.

Parameters:
breadCrumbModel - The bread crumb panel


Copyright © 2004-2008 Wicket developers. All Rights Reserved.