T - The type of panel to be used for this component's tabs. Just use ITab if you
have no special needs here.public class TabbedPanel<T extends ITab> extends Panel
Note: When the currently selected tab is replaced by changing the underlying list of tabs,
the change is not picked up unless a call is made to setSelectedTab(int).
Example:
List tabs=new ArrayList();
tabs.add(new AbstractTab(new Model<String>("first tab")) {
public Panel getPanel(String panelId)
{
return new TabPanel1(panelId);
}
});
tabs.add(new AbstractTab(new Model<String>("second tab")) {
public Panel getPanel(String panelId)
{
return new TabPanel2(panelId);
}
});
add(new TabbedPanel("tabs", tabs));
<span wicket:id="tabs" class="tabpanel">[tabbed panel will be here]</span>
For a complete example see the component references in wicket-examples project
ITab,
Serialized Form| Modifier and Type | Field and Description |
|---|---|
static String |
CONTAINER_CSS_CLASS_KEY |
static String |
LAST_CSS_CLASS_KEY |
static String |
SELECTED_CSS_CLASS_KEY |
static String |
TAB_PANEL_ID
id used for child panels
|
ENABLE, FLAG_AFTER_RENDERING, FLAG_INITIALIZED, FLAG_PREPARED_FOR_RENDER, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RENDERING, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING| Constructor and Description |
|---|
TabbedPanel(String id,
List<T> tabs)
Constructor
|
TabbedPanel(String id,
List<T> tabs,
IModel<Integer> model)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
protected String |
getLastTabCssClass() |
int |
getSelectedTab() |
protected String |
getSelectedTabCssClass() |
protected String |
getTabContainerCssClass() |
List<T> |
getTabs() |
protected IModel<?> |
initModel()
Override of the default initModel behaviour.
|
protected WebMarkupContainer |
newLink(String linkId,
int index)
Factory method for links used to switch between tabs.
|
protected LoopItem |
newTabContainer(int tabIndex)
Generates a loop item used to represent a specific tab's
li element. |
protected WebMarkupContainer |
newTabsContainer(String id)
Generates the container for all tabs.
|
protected Component |
newTitle(String titleId,
IModel<?> titleModel,
int index)
Factory method for tab titles.
|
protected void |
onBeforeRender() |
protected void |
onDetach() |
TabbedPanel<T> |
setSelectedTab(int index)
sets the selected tab
|
getRegionMarkup, newMarkupSourcingStrategygetWebPage, getWebRequest, getWebResponse, getWebSessionadd, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findComponentToDequeue, get, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onAfterRenderChildren, onComponentTagBody, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, swap, toString, toString, visitChildren, visitChildren, visitChildren, visitChildrenadd, addStateChange, afterRender, beforeRender, canCallListenerInterface, canCallListenerInterfaceAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, internalOnModelChanged, internalPrepareForRender, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onComponentTag, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, prepareForRender, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setRequestFlag, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, visitParents, warn, wrapclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitdequeue, newDequeueContextpublic static final String TAB_PANEL_ID
public static final String CONTAINER_CSS_CLASS_KEY
public static final String SELECTED_CSS_CLASS_KEY
public static final String LAST_CSS_CLASS_KEY
public TabbedPanel(String id, List<T> tabs)
id - component idtabs - list of ITab objects used to represent tabsprotected IModel<?> initModel()
initModel in class ComponentComponent.initModel()protected WebMarkupContainer newTabsContainer(String id)
class attribute based on the return value of getTabContainerCssClass()id - container idprotected LoopItem newTabContainer(int tabIndex)
li element.tabIndex - protected void onBeforeRender()
onBeforeRender in class Componentprotected String getTabContainerCssClass()
tab-rowprotected String getLastTabCssClass()
lastprotected String getSelectedTabCssClass()
selectedpublic final List<T> getTabs()
protected Component newTitle(String titleId, IModel<?> titleModel, int index)
titleId - id of title componenttitleModel - model containing tab titleindex - index of tabprotected WebMarkupContainer newLink(String linkId, int index)
<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);
}
};
}
linkId - component id with which the link should be createdindex - index of the tab that should be activated when this link is clicked. See
setSelectedTab(int).public TabbedPanel<T> setSelectedTab(int index)
index - index of the tab to selectIndexOutOfBoundsException - if index is not in the range of available tabspublic final int getSelectedTab()
protected void onDetach()
onDetach in class MarkupContainerCopyright © 2006–2015 Apache Software Foundation. All rights reserved.