Class AjaxTabbedPanel<T extends org.apache.wicket.extensions.markup.html.tabs.ITab>
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.evolveum.midpoint.web.component.TabbedPanel<T>
com.evolveum.midpoint.web.component.AjaxTabbedPanel<T>
- Type Parameters:
T- The type of panel to be used for this component's tabs. Just useITabif you have no special needs here.
- All Implemented Interfaces:
Serializable,Iterable<org.apache.wicket.Component>,org.apache.wicket.event.IEventSink,org.apache.wicket.event.IEventSource,org.apache.wicket.feedback.IFeedbackContributor,org.apache.wicket.IConverterLocator,org.apache.wicket.IMetadataContext<Serializable,,org.apache.wicket.Component> org.apache.wicket.IQueueRegion,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
- Direct Known Subclasses:
TabCenterTabbedPanel
public class AjaxTabbedPanel<T extends org.apache.wicket.extensions.markup.html.tabs.ITab>
extends TabbedPanel<T>
Ajaxified version of the tabbed panel. Uses AjaxFallbackLink instead of regular wicket links so
it can update itself inplace.
- Author:
- Igor Vaynberg (ivaynberg), shood
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.evolveum.midpoint.web.component.TabbedPanel
TabbedPanel.RightSideItemProvider -
Field Summary
Fields inherited from class com.evolveum.midpoint.web.component.TabbedPanel
ID_COUNT, ID_LINK, ID_TABS, ID_TABS_CONTAINER, ID_TITLE, RIGHT_SIDE_TAB_ID, RIGHT_SIDE_TAB_ITEM_ID, TAB_PANEL_IDFields inherited from class org.apache.wicket.markup.html.panel.Panel
PANELFields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING, RFLAG_CONTAINER_HAS_REMOVALS -
Constructor Summary
ConstructorsConstructorDescriptionAjaxTabbedPanel(String id, List<T> tabs) ConstructorAjaxTabbedPanel(String id, List<T> tabs, org.apache.wicket.model.IModel<Integer> model) ConstructorAjaxTabbedPanel(String id, List<T> tabs, org.apache.wicket.model.IModel<Integer> model, TabbedPanel.RightSideItemProvider rightSideItemProvider) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.wicket.markup.html.WebMarkupContainerFactory method for links used to switch between tabs.protected voidonAjaxUpdate(Optional<org.apache.wicket.ajax.AjaxRequestTarget> target) A template method that lets users add additional behavior when ajax update occurs.protected voidonClickTabPerformed(int index, Optional<org.apache.wicket.ajax.AjaxRequestTarget> target) Methods inherited from class com.evolveum.midpoint.web.component.TabbedPanel
getLastTabCssClass, getSelectedTab, getSelectedTabCssClass, getTabContainerCssClass, getTabs, initModel, newIcon, newTabContainer, newTabsContainer, newTitle, onBeforeRender, onDetach, onTabChange, populateLoopItem, reloadCountLabels, setSelectedTabMethods inherited from class org.apache.wicket.markup.html.panel.Panel
getRegionMarkup, newMarkupSourcingStrategyMethods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSessionMethods inherited from class org.apache.wicket.MarkupContainer
add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onComponentTagBody, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildrenMethods inherited from class org.apache.wicket.Component
add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, 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, getMarkupTag, 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, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onComponentTag, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.wicket.IQueueRegion
dequeue, newDequeueContextMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
AjaxTabbedPanel
Constructor- Parameters:
id-tabs-
-
AjaxTabbedPanel
Constructor- Parameters:
id-tabs-model- model holding the index of the selected tab
-
AjaxTabbedPanel
public AjaxTabbedPanel(String id, List<T> tabs, org.apache.wicket.model.IModel<Integer> model, TabbedPanel.RightSideItemProvider rightSideItemProvider)
-
-
Method Details
-
newLink
Description copied from class:TabbedPanelFactory 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:
newLinkin classTabbedPanel<T extends org.apache.wicket.extensions.markup.html.tabs.ITab>- Parameters:
linkId- component id with which the link should be createdindex- index of the tab that should be activated when this link is clicked. SeeTabbedPanel.setSelectedTab(int).- Returns:
- created link component
-
onClickTabPerformed
protected void onClickTabPerformed(int index, Optional<org.apache.wicket.ajax.AjaxRequestTarget> target) -
onAjaxUpdate
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 viaTabbedPanel.getSelectedTab().Note Since an
AjaxFallbackLinkis used to back the ajax update thetargetargument can be null when the client browser does not support ajax and the fallback mode is used. SeeAjaxFallbackLinkfor details.- Parameters:
target- ajax target used to update this component
-