org.apache.wicket.extensions.ajax.markup.html.tabs
Class AjaxTabbedPanel

java.lang.Object
  extended by org.apache.wicket.Component
      extended by org.apache.wicket.MarkupContainer
          extended by org.apache.wicket.markup.html.WebMarkupContainer
              extended by org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup
                  extended by org.apache.wicket.markup.html.panel.Panel
                      extended by org.apache.wicket.extensions.markup.html.tabs.TabbedPanel
                          extended by org.apache.wicket.extensions.ajax.markup.html.tabs.AjaxTabbedPanel
All Implemented Interfaces:
Serializable, IClusterable, IConverterLocator, IHeaderPartContainerProvider

public class AjaxTabbedPanel
extends TabbedPanel

Ajaxified version of the tabbed panel. Uses AjaxFallbackLink instead of regular wicket links so it can update itself inplace.

Author:
Igor Vaynberg (ivaynberg)
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.wicket.Component
Component.ComponentModelChange, Component.EnabledChange, Component.IVisitor<T extends Component>, Component.VisibilityChange
 
Field Summary
 
Fields inherited from class org.apache.wicket.extensions.markup.html.tabs.TabbedPanel
TAB_PANEL_ID
 
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_CONFIGURED, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PATH_SEPARATOR, RENDER
 
Constructor Summary
AjaxTabbedPanel(String id, List<ITab> tabs)
          Constructor
 
Method Summary
protected  WebMarkupContainer newLink(String linkId, int index)
          Factory method for links used to switch between tabs.
protected  void onAjaxUpdate(AjaxRequestTarget target)
          A template method that lets users add additional behavior when ajax update occurs.
 
Methods inherited from class org.apache.wicket.extensions.markup.html.tabs.TabbedPanel
getSelectedTab, getTabContainerCssClass, getTabs, newTabContainer, newTabsContainer, newTitle, onBeforeRender, onDetach, setSelectedTab
 
Methods inherited from class org.apache.wicket.markup.html.panel.Panel
onComponentTag, onComponentTagBody, renderHead
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup
newHeaderPartContainer, renderHeadFromAssociatedMarkupFile
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getMarkupType, getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onAfterRenderChildren, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, renderNext, replace, setDefaultModel, setMarkupStream, size, swap, toString, toString, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachBehaviors, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getApplication, getBehaviors, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdImpl, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalAttach, internalDetach, internalOnAttach, internalOnDetach, internalOnModelChanged, isActionAuthorized, isAncestorOf, isAttached, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, onAfterRender, onAttach, onBeginRequest, onConfigure, onEndRequest, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AjaxTabbedPanel

public AjaxTabbedPanel(String id,
                       List<ITab> tabs)
Constructor

Parameters:
id -
tabs -
Method Detail

newLink

protected WebMarkupContainer newLink(String linkId,
                                     int index)
Description copied from class: TabbedPanel
Factory method for links used to switch between tabs. The created component is attached to the following markup. Label component with id: title will be added for you by the tabbed panel.
 <a href="#" wicket:id="link"><span wicket:id="title">[[tab title]]</span></a>
 
Example implementation:
 protected WebMarkupContainer newLink(String linkId, final int index)
 {
        return new Link(linkId)
        {
                private static final long serialVersionUID = 1L;
 
                public void onClick()
                {
                        setSelectedTab(index);
                }
        };
 }
 

Overrides:
newLink in class TabbedPanel
Parameters:
linkId - component id with which the link should be created
index - index of the tab that should be activated when this link is clicked. See TabbedPanel.setSelectedTab(int).
Returns:
created link component

onAjaxUpdate

protected void onAjaxUpdate(AjaxRequestTarget target)
A template method that lets users add additional behavior when ajax update occurs. This method is called after the current tab has been set so access to it can be obtained via TabbedPanel.getSelectedTab().

Note Since an AjaxFallbackLink is used to back the ajax update the target argument can be null when the client browser does not support ajax and the fallback mode is used. See AjaxFallbackLink for details.

Parameters:
target - ajax target used to update this component


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.