public class SideTabbedPanel
extends org.apache.wicket.markup.html.panel.Panel
SideTabbedPanel component represets a panel with tabs that are used to switch between different content panels inside the SideTabbedPanel 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("first tab")) {
public Panel getPanel(String panelId)
{
return new TabPanel1(panelId);
}
});
tabs.add(new AbstractTab(new Model("second tab")) {
public Panel getPanel(String panelId)
{
return new TabPanel2(panelId);
}
});
add(new SideTabbedPanel("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 java.lang.String |
TAB_PANEL_ID
id used for child panels
|
| Constructor and Description |
|---|
SideTabbedPanel(java.lang.String id,
java.util.List tabs)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
int |
getSelectedTab() |
protected java.lang.String |
getTabContainerCssClass() |
java.util.List |
getTabs() |
protected org.apache.wicket.markup.html.WebMarkupContainer |
newLink(java.lang.String linkId,
int index)
Factory method for links used to switch between tabs.
|
protected org.apache.wicket.markup.html.list.LoopItem |
newTabContainer(int tabIndex)
Generates a loop item used to represent a specific tab's
li element. |
protected org.apache.wicket.Component |
newTitle(java.lang.String titleId,
org.apache.wicket.model.IModel titleModel,
int index)
Factory method for tab titles.
|
protected void |
onBeforeRender() |
void |
setSelectedTab(int index)
sets the selected tab
|
getWebPage, getWebRequest, getWebResponse, getWebSessionadd, addOrReplace, autoAdd, contains, get, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, onAfterRenderChildren, onComponentTagBody, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, swap, toString, toString, visitChildren, visitChildren, visitChildren, visitChildrenadd, addStateChange, afterRender, beforeRender, canCallListenerInterface, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, 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, initModel, internalOnModelChanged, internalPrepareForRender, internalRenderComponent, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onComponentTag, onConfigure, onDetach, onEvent, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, 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, wrappublic static final java.lang.String TAB_PANEL_ID
public SideTabbedPanel(java.lang.String id,
java.util.List tabs)
id - component idtabs - list of ITab objects used to represent tabsprotected org.apache.wicket.markup.html.list.LoopItem newTabContainer(int tabIndex)
li element.protected void onBeforeRender()
onBeforeRender in class org.apache.wicket.Componentprotected java.lang.String getTabContainerCssClass()
tab-rowpublic final java.util.List getTabs()
protected org.apache.wicket.Component newTitle(java.lang.String titleId,
org.apache.wicket.model.IModel titleModel,
int index)
titleId - id of title componenttitleModel - model containing tab titleindex - index of tabprotected org.apache.wicket.markup.html.WebMarkupContainer newLink(java.lang.String linkId,
int index)
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);
}
};
}
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 final int getSelectedTab()
public void setSelectedTab(int index)
index - index of the tab to select