Class TabbedPanel

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.googlecode.wicket.jquery.core.JQueryPanel
com.googlecode.wicket.jquery.core.JQueryGenericPanel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>>
com.googlecode.wicket.jquery.ui.widget.tabs.TabbedPanel
All Implemented Interfaces:
com.googlecode.wicket.jquery.core.IJQueryWidget, ITabsListener, 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.IGenericComponent<List<org.apache.wicket.extensions.markup.html.tabs.ITab>,com.googlecode.wicket.jquery.core.JQueryGenericPanel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>>>, 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

public class TabbedPanel extends com.googlecode.wicket.jquery.core.JQueryGenericPanel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>> implements ITabsListener
Provides jQuery tabs based on a JQueryGenericPanel
Author:
Sebastien Briquet - sebfz1
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from interface com.googlecode.wicket.jquery.core.IJQueryWidget

    com.googlecode.wicket.jquery.core.IJQueryWidget.JQueryWidget
  • Field Summary

    Fields inherited from class com.googlecode.wicket.jquery.core.JQueryPanel

    options

    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
  • Constructor Summary

    Constructors
    Constructor
    Description
    TabbedPanel(String id, List<org.apache.wicket.extensions.markup.html.tabs.ITab> tabs)
    Constructor
    TabbedPanel(String id, List<org.apache.wicket.extensions.markup.html.tabs.ITab> tabs, com.googlecode.wicket.jquery.core.Options options)
    Constructor
    TabbedPanel(String id, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>> model)
    Constructor
    TabbedPanel(String id, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>> model, com.googlecode.wicket.jquery.core.Options options)
    Constructor
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    add(org.apache.wicket.extensions.markup.html.tabs.ITab tab)
    Helper method.
    void
    disable(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Disables a tab, identified by its index.
    void
    disable(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Disables all tabs
    void
    enable(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Enables a tab, identified by its index
    void
    enable(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Enables all tabs
    int
    Gets the last visible tab index
    List<org.apache.wicket.extensions.markup.html.tabs.ITab>
     
     
    boolean
    Indicates whether the 'activate' event is enabled.
    If true, the ITabsListener.onActivate(AjaxRequestTarget, int, ITab) event will be triggered on 'activate'
    boolean
    Indicates whether the 'beforeActivate' event is enabled.
    If true, the ITabsListener.onActivating(AjaxRequestTarget, int, ITab) event will be triggered.
    boolean
    Indicates whether the 'create' event is enabled.
    If true, the ITabsListener.onActivate(AjaxRequestTarget, int, ITab) event will be triggered on 'create'
    protected org.apache.wicket.markup.html.WebMarkupContainer
    newTabContainer(String id, String tabId, org.apache.wicket.extensions.markup.html.tabs.ITab tab, int index)
    Gets a new tab container that contains the tab's title
    Warning: override with care!
    protected org.apache.wicket.Component
    newTitleLabel(String id, org.apache.wicket.model.IModel<String> title)
    Gets a new Label for the tab's title
     
    void
    onActivate(org.apache.wicket.ajax.AjaxRequestTarget target, int index, org.apache.wicket.extensions.markup.html.tabs.ITab tab)
    Triggered when a tab has been activated ('create' and 'activate' event).
    void
    onActivating(org.apache.wicket.ajax.AjaxRequestTarget target, int index, org.apache.wicket.extensions.markup.html.tabs.ITab tab)
    Triggered when a tab is being activated ('beforeActivate' event).
    protected void
     
    void
    reload(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Reloads the TabbedPanel

    Note: This method should be used instead of target.add(tabbedPanel) if the underlying model is-a TabListModel
    setActiveTab(int index)
    Activates the selected tab
    void
    setActiveTab(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
    Activates the selected tab

    Warning: invoking this method results to a dual client-server round-trip.

    Methods inherited from class com.googlecode.wicket.jquery.core.JQueryPanel

    onBeforeRender, onConfigure

    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, onComponentTagBody, onDetach, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, 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, 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, initModel, internalOnModelChanged, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onBeforeRender, 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, 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.IGenericComponent

    getDefaultModel, getDefaultModelObject, getModel, setDefaultModel, setDefaultModelObject, setModel, setModelObject

    Methods inherited from interface org.apache.wicket.IQueueRegion

    dequeue, newDequeueContext

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Constructor Details

    • TabbedPanel

      public TabbedPanel(String id, List<org.apache.wicket.extensions.markup.html.tabs.ITab> tabs)
      Constructor
      Parameters:
      id - the markup id
      tabs - the list of ITabs
    • TabbedPanel

      public TabbedPanel(String id, List<org.apache.wicket.extensions.markup.html.tabs.ITab> tabs, com.googlecode.wicket.jquery.core.Options options)
      Constructor
      Parameters:
      id - the markup id
      tabs - the list of ITabs
      options - the Options
    • TabbedPanel

      public TabbedPanel(String id, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>> model)
      Constructor
      Parameters:
      id - the markup id
      model - the list model of ITabs
    • TabbedPanel

      public TabbedPanel(String id, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>> model, com.googlecode.wicket.jquery.core.Options options)
      Constructor
      Parameters:
      id - the markup id
      model - the list model of ITabs
      options - the Options
  • Method Details

    • getSelector

      public String getSelector()
      Specified by:
      getSelector in class com.googlecode.wicket.jquery.core.JQueryGenericPanel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>>
    • getModelObject

      public List<org.apache.wicket.extensions.markup.html.tabs.ITab> getModelObject()
      Specified by:
      getModelObject in interface org.apache.wicket.IGenericComponent<List<org.apache.wicket.extensions.markup.html.tabs.ITab>,com.googlecode.wicket.jquery.core.JQueryGenericPanel<List<org.apache.wicket.extensions.markup.html.tabs.ITab>>>
    • setActiveTab

      public TabbedPanel setActiveTab(int index)
      Activates the selected tab
      Parameters:
      index - the tab's index to activate
      Returns:
      this, for chaining
    • setActiveTab

      public void setActiveTab(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Activates the selected tab

      Warning: invoking this method results to a dual client-server round-trip. Use this method if you cannot use setActiveTab(int) followed by target.add(myTabbedPannel)
      Parameters:
      index - the tab's index to activate
      handler - the IPartialPageRequestHandler
    • enable

      public void enable(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Enables all tabs
      Parameters:
      handler - the IPartialPageRequestHandler
    • enable

      public void enable(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Enables a tab, identified by its index
      Parameters:
      index - the tab's index to enable
      handler - the IPartialPageRequestHandler
    • disable

      public void disable(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Disables all tabs
      Parameters:
      handler - the IPartialPageRequestHandler
    • disable

      public void disable(int index, org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Disables a tab, identified by its index. The selected tab cannot be disabled.
      Parameters:
      index - the tab's index to disable
      handler - the IPartialPageRequestHandler
    • getLastTabIndex

      public int getLastTabIndex()
      Gets the last visible tab index
      Returns:
      the tab index, or -1 if none
    • isCreateEventEnabled

      public boolean isCreateEventEnabled()
      Description copied from interface: ITabsListener
      Indicates whether the 'create' event is enabled.
      If true, the ITabsListener.onActivate(AjaxRequestTarget, int, ITab) event will be triggered on 'create'
      Specified by:
      isCreateEventEnabled in interface ITabsListener
      Returns:
      true by default
    • isActivateEventEnabled

      public boolean isActivateEventEnabled()
      Description copied from interface: ITabsListener
      Indicates whether the 'activate' event is enabled.
      If true, the ITabsListener.onActivate(AjaxRequestTarget, int, ITab) event will be triggered on 'activate'
      Specified by:
      isActivateEventEnabled in interface ITabsListener
      Returns:
      true by default
    • isActivatingEventEnabled

      public boolean isActivatingEventEnabled()
      Description copied from interface: ITabsListener
      Indicates whether the 'beforeActivate' event is enabled.
      If true, the ITabsListener.onActivating(AjaxRequestTarget, int, ITab) event will be triggered.
      Specified by:
      isActivatingEventEnabled in interface ITabsListener
      Returns:
      false by default
    • add

      public boolean add(org.apache.wicket.extensions.markup.html.tabs.ITab tab)
      Helper method. Adds an ITab to the list of tabs.
      Parameters:
      tab - the ITab to be added
      Returns:
      true (as specified by Collection.add)
    • reload

      public void reload(org.apache.wicket.core.request.handler.IPartialPageRequestHandler handler)
      Reloads the TabbedPanel

      Note: This method should be used instead of target.add(tabbedPanel) if the underlying model is-a TabListModel
      Parameters:
      handler - the IPartialPageRequestHandler
    • onInitialize

      protected void onInitialize()
      Overrides:
      onInitialize in class org.apache.wicket.MarkupContainer
    • onActivate

      public void onActivate(org.apache.wicket.ajax.AjaxRequestTarget target, int index, org.apache.wicket.extensions.markup.html.tabs.ITab tab)
      Description copied from interface: ITabsListener
      Triggered when a tab has been activated ('create' and 'activate' event).
      Specified by:
      onActivate in interface ITabsListener
      Parameters:
      target - the AjaxRequestTarget
      index - the tab index that triggered this event
      tab - the ITab that corresponds to the index
    • onActivating

      public void onActivating(org.apache.wicket.ajax.AjaxRequestTarget target, int index, org.apache.wicket.extensions.markup.html.tabs.ITab tab)
      Description copied from interface: ITabsListener
      Triggered when a tab is being activated ('beforeActivate' event).
      Specified by:
      onActivating in interface ITabsListener
      Parameters:
      target - the AjaxRequestTarget
      index - the previously selected tab index
      tab - the ITab that corresponds to the index
    • newTitleLabel

      protected org.apache.wicket.Component newTitleLabel(String id, org.apache.wicket.model.IModel<String> title)
      Gets a new Label for the tab's title
      Parameters:
      id - the markup id
      title - the tab's title model
      Returns:
      a new Label
    • newTabContainer

      protected org.apache.wicket.markup.html.WebMarkupContainer newTabContainer(String id, String tabId, org.apache.wicket.extensions.markup.html.tabs.ITab tab, int index)
      Gets a new tab container that contains the tab's title
      Warning: override with care!
      Parameters:
      id - the container's markup-id
      tabId - the tab html-id
      tab - the ITab
      index - the tab index
      Returns:
      a new WebMarkupContainer
    • newWidgetBehavior

      public TabsBehavior newWidgetBehavior(String selector)
      Specified by:
      newWidgetBehavior in interface com.googlecode.wicket.jquery.core.IJQueryWidget