Class SideTabbedPanel
- java.lang.Object
-
- org.apache.wicket.Component
-
- org.apache.wicket.MarkupContainer
-
- org.apache.wicket.markup.html.WebMarkupContainer
-
- org.apache.wicket.markup.html.panel.Panel
-
- com.inductiveautomation.ignition.gateway.web.components.SideTabbedPanel
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Iterable<org.apache.wicket.Component>
,org.apache.wicket.event.IEventSink
,org.apache.wicket.event.IEventSource
,org.apache.wicket.IConverterLocator
,org.apache.wicket.markup.html.IHeaderContributor
,org.apache.wicket.request.component.IRequestableComponent
,org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>
,org.apache.wicket.util.io.IClusterable
public class SideTabbedPanel extends org.apache.wicket.markup.html.panel.Panel
This is a drop-in replacement for TabbedPanel, that puts the tabs along the sied.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
- See Also:
ITab
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
TAB_PANEL_ID
id used for child panels
-
Constructor Summary
Constructors Constructor Description SideTabbedPanel(java.lang.String id, java.util.List tabs)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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'sli
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-
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebPage, getWebRequest, getWebResponse, getWebSession
-
Methods inherited from class org.apache.wicket.MarkupContainer
add, 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, visitChildren
-
Methods inherited from class org.apache.wicket.Component
add, 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, wrap
-
-
-
-
Field Detail
-
TAB_PANEL_ID
public static final java.lang.String TAB_PANEL_ID
id used for child panels- See Also:
- Constant Field Values
-
-
Method Detail
-
newTabContainer
protected org.apache.wicket.markup.html.list.LoopItem newTabContainer(int tabIndex)
Generates a loop item used to represent a specific tab'sli
element.- Returns:
- new loop item
-
onBeforeRender
protected void onBeforeRender()
- Overrides:
onBeforeRender
in classorg.apache.wicket.Component
-
getTabContainerCssClass
protected java.lang.String getTabContainerCssClass()
- Returns:
- the value of css class attribute that will be added to a div containing the tabs. The default value is
tab-row
-
getTabs
public final java.util.List getTabs()
- Returns:
- list of tabs that can be used by the user to add/remove/reorder tabs in the panel
-
newTitle
protected org.apache.wicket.Component newTitle(java.lang.String titleId, org.apache.wicket.model.IModel titleModel, int index)
Factory method for tab titles. Returned component can be anything that can attach to span tags such as a fragment, panel, or a label- Parameters:
titleId
- id of title componenttitleModel
- model containing tab titleindex
- index of tab- Returns:
- title component
-
newLink
protected org.apache.wicket.markup.html.WebMarkupContainer newLink(java.lang.String linkId, int index)
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); } }; }
- Parameters:
linkId
- component id with which the link should be createdindex
- index of the tab that should be activated when this link is clicked. SeesetSelectedTab(int)
.- Returns:
- created link component
-
getSelectedTab
public final int getSelectedTab()
- Returns:
- index of the selected tab
-
setSelectedTab
public void setSelectedTab(int index)
sets the selected tab- Parameters:
index
- index of the tab to select
-
-