java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.panel.Panel
All Implemented Interfaces:
Serializable, Iterable, EventListener, org.apache.wicket.event.IEventSink, org.apache.wicket.event.IEventSource, org.apache.wicket.feedback.IFeedbackContributor, org.apache.wicket.IConverterLocator, org.apache.wicket.IMetadataContext, org.apache.wicket.IQueueRegion, org.apache.wicket.markup.html.IHeaderContributor, org.apache.wicket.request.component.IRequestableComponent, org.apache.wicket.util.IHierarchical, org.apache.wicket.util.io.IClusterable, IObserver, IPlugin, IRenderService

public class TabsPlugin extends RenderPlugin
Plugin that manages a number of IRenderServices using a tabbing interface.

Configuration:

  • title.maxlength
    The maximum length (in characters) of the title. When exceeded, the title will be shown truncated with ellipses. The title attribute will contain the full title.
  • icon.size
    The size of the icon in the tab. Can be one of the IconSize sizes. By default, 'm' will be used.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected class 
     

    Nested classes/interfaces inherited from class org.hippoecm.frontend.service.render.RenderService

    RenderService.ExtensionPoint
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
    static final String
     
    static final String
     

    Fields inherited from class org.hippoecm.frontend.service.render.AbstractRenderService

    BEHAVIOR, children, CSS_ID, DEFAULT_LOCALE, EXTENSIONS_ID, FEEDBACK, FEEDBACK_SCOPE, MODEL_ID, SKIN_ID, VARIANT_ID, VISIBLE, WICKET_ID

    Fields inherited from class org.apache.wicket.markup.html.panel.Panel

    PANEL

    Fields 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

    Fields inherited from interface org.hippoecm.frontend.plugin.IPlugin

    CLASSNAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    TabsPlugin(IPluginContext context, IPluginConfig properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
     
    void
    Set focus on the specified child.
    void
     
    void
     
    Returns the jcr path of the selected TAB or null if it's hidden or none is selected.
    protected final TabbedPanel
     
     
    boolean
     
    void
     
    protected TabbedPanel
    newTabbedPanel(String id, List<TabsPlugin.Tab> tabs, org.apache.wicket.MarkupContainer tabsContainer)
     
    void
     
    protected void
    onSelectTab(int index)
    Template method for subclasses.
    protected void
     
    protected void
     
    void
    Called after user events and JCR events have been handled, but before the rendering has started.
    void
    renderHead(org.apache.wicket.markup.head.IHeaderResponse response)
     

    Methods inherited from class org.hippoecm.frontend.service.render.RenderPlugin

    newPlugin, newPlugin, onStart, onStop, start, stop

    Methods inherited from class org.hippoecm.frontend.service.render.RenderService

    createExtensionPoint

    Methods inherited from class org.apache.wicket.markup.html.panel.Panel

    getRegionMarkup, newMarkupSourcingStrategy

    Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer

    getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession

    Methods 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, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, size, stream, streamChildren, toString, toString, visitChildren, visitChildren

    Methods 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, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMarkupTag, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnModelChanged, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, 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, wrap

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.wicket.IQueueRegion

    dequeue, newDequeueContext

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Field Details

  • Constructor Details

  • Method Details

    • newTabbedPanel

      protected TabbedPanel newTabbedPanel(String id, List<TabsPlugin.Tab> tabs, org.apache.wicket.MarkupContainer tabsContainer)
    • renderHead

      public void renderHead(org.apache.wicket.markup.head.IHeaderResponse response)
      Specified by:
      renderHead in interface org.apache.wicket.markup.html.IHeaderContributor
      Overrides:
      renderHead in class org.apache.wicket.Component
    • render

      public void render(PluginRequestTarget target)
      Description copied from class: AbstractRenderService
      Called after user events and JCR events have been handled, but before the rendering has started. Plugins can register Components with the request target to enlist in the rendering phase.

      Implementations that use extensions must call the same method on those.

      Specified by:
      render in interface IRenderService
      Overrides:
      render in class RenderPlugin
    • focus

      public void focus(IRenderService child)
      Description copied from class: AbstractRenderService
      Set focus on the specified child. Implementations should make the child visible when they themselves are visible, or become visible later.
      Specified by:
      focus in interface IRenderService
      Overrides:
      focus in class AbstractRenderService
      Parameters:
      child - The extension that requests focus. This parameter can be null, in which case the Component should set focus to itself.
    • onDetach

      public void onDetach()
      Overrides:
      onDetach in class org.apache.wicket.MarkupContainer
    • getVariation

      public String getVariation()
      Overrides:
      getVariation in class AbstractRenderService
    • hasOpenTabs

      public boolean hasOpenTabs()
    • onSelectTab

      protected void onSelectTab(int index)
      Template method for subclasses. Called when a tab is selected, either explicitly (user clicks tab) or implicitly (tab requests focus).
      Parameters:
      index - Index of the tab
    • hide

      public void hide()
    • blurTabs

      public void blurTabs()
    • disableTabRefocus

      public void disableTabRefocus()
    • focusRecentTabUnlessHidden

      public void focusRecentTabUnlessHidden()
    • getSelectedTabPath

      public String getSelectedTabPath()
      Returns the jcr path of the selected TAB or null if it's hidden or none is selected.
      Returns:
      path of selected tab.
    • focusRecentTab

      public void focusRecentTab()
    • getTabbedPanel

      protected final TabbedPanel getTabbedPanel()
    • onTabActivated

      protected void onTabActivated(TabsPlugin.Tab tab)
    • onTabDeactivated

      protected void onTabDeactivated(TabsPlugin.Tab tab)