org.apache.wicket.markup.html.navigation.paging
Class PagingNavigator

java.lang.Object
  extended by org.apache.wicket.Component
      extended by org.apache.wicket.MarkupContainer
          extended by org.apache.wicket.markup.html.WebMarkupContainer
              extended by org.apache.wicket.markup.html.panel.Panel
                  extended by org.apache.wicket.markup.html.navigation.paging.PagingNavigator
All Implemented Interfaces:
Serializable, Iterable<Component>, IEventSink, IEventSource, IConverterLocator, IHeaderContributor, IRequestableComponent, IHierarchical<Component>, IClusterable
Direct Known Subclasses:
AjaxPagingNavigator

public class PagingNavigator
extends Panel

A Wicket panel component to draw and maintain a complete page navigator, meant to be easily added to any PageableListView. A navigation which contains links to the first and last page, the current page +- some increment and which supports paged navigation bars (@see PageableListViewNavigationWithMargin).

Author:
Juergen Donnerstag
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.wicket.markup.html.panel.Panel
PANEL
 
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER
 
Constructor Summary
PagingNavigator(String id, IPageable pageable)
          Constructor.
PagingNavigator(String id, IPageable pageable, IPagingLabelProvider labelProvider)
          Constructor.
 
Method Summary
 IPageable getPageable()
          IPageable this navigator is linked with
 PagingNavigation getPagingNavigation()
          Gets the pageable navigation component for configuration purposes.
protected  PagingNavigation newNavigation(String id, IPageable pageable, IPagingLabelProvider labelProvider)
          Create a new PagingNavigation.
protected  AbstractLink newPagingNavigationIncrementLink(String id, IPageable pageable, int increment)
          Create a new increment link.
protected  AbstractLink newPagingNavigationLink(String id, IPageable pageable, int pageNumber)
          Create a new pagenumber link.
protected  void onInitialize()
          This method is meant to be used as an alternative to initialize components.
 
Methods inherited from class org.apache.wicket.markup.html.panel.Panel
newMarkupSourcingStrategy
 
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, clearOriginalDestination, 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, onBeforeRender, onComponentTag, onConfigure, onDetach, onEvent, 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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PagingNavigator

public PagingNavigator(String id,
                       IPageable pageable)
Constructor.

Parameters:
id - See Component
pageable - The pageable component the page links are referring to.

PagingNavigator

public PagingNavigator(String id,
                       IPageable pageable,
                       IPagingLabelProvider labelProvider)
Constructor.

Parameters:
id - See Component
pageable - The pageable component the page links are referring to.
labelProvider - The label provider for the link text.
Method Detail

getPageable

public final IPageable getPageable()
IPageable this navigator is linked with

Returns:
IPageable instance

onInitialize

protected void onInitialize()
Description copied from class: Component
This method is meant to be used as an alternative to initialize components. Usually the component's constructor is used for this task, but sometimes a component cannot be initialized in isolation, it may need to access its parent component or its markup in order to fully initialize. This method is invoked once per component's lifecycle when a path exists from this component to the Page thus providing the component with an atomic callback when the component's environment is built out.

Overrides must call super#Component.onInitialize(). Usually this should be the first thing an override does, much like a constructor.

Parent containers are guaranteed to be initialized before their children

It is safe to use Component.getPage() in this method

NOTE:The timing of this call is not precise, the contract is that it is called sometime before Component.onBeforeRender().

Overrides:
onInitialize in class Component

newPagingNavigationIncrementLink

protected AbstractLink newPagingNavigationIncrementLink(String id,
                                                        IPageable pageable,
                                                        int increment)
Create a new increment link. May be subclassed to make use of specialized links, e.g. Ajaxian links.

Parameters:
id - the link id
pageable - the pageable to control
increment - the increment
Returns:
the increment link

newPagingNavigationLink

protected AbstractLink newPagingNavigationLink(String id,
                                               IPageable pageable,
                                               int pageNumber)
Create a new pagenumber link. May be subclassed to make use of specialized links, e.g. Ajaxian links.

Parameters:
id - the link id
pageable - the pageable to control
pageNumber - the page to jump to
Returns:
the pagenumber link

newNavigation

protected PagingNavigation newNavigation(String id,
                                         IPageable pageable,
                                         IPagingLabelProvider labelProvider)
Create a new PagingNavigation. May be subclassed to make us of specialized PagingNavigation.

Parameters:
id - The id of the navigation component
pageable - the pageable component
labelProvider - The label provider for the link text.
Returns:
the navigation object

getPagingNavigation

public final PagingNavigation getPagingNavigation()
Gets the pageable navigation component for configuration purposes.

Returns:
the associated pageable navigation.


Copyright © 2006-2013 Apache Software Foundation. All Rights Reserved.