org.apache.wicket.ajax.markup.html.navigation.paging
Class AjaxPagingNavigator

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.WebMarkupContainerWithAssociatedMarkup
                  extended by org.apache.wicket.markup.html.panel.Panel
                      extended by org.apache.wicket.markup.html.navigation.paging.PagingNavigator
                          extended by org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator
All Implemented Interfaces:
Serializable, IClusterable, IConverterLocator, IHeaderPartContainerProvider

public class AjaxPagingNavigator
extends PagingNavigator

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).

NOTE To use the AjaxPagingNavigator, you have to put your ListView in a WebMarkupContainer, otherwise it is not possible to update the contents of the listview using Ajax.

Since:
1.2
Author:
Martijn Dashorst
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.wicket.Component
Component.ComponentModelChange, Component.EnabledChange, Component.IVisitor<T extends Component>, Component.VisibilityChange
 
Field Summary
 
Fields inherited from class org.apache.wicket.markup.html.navigation.paging.PagingNavigator
NAVIGATION_ID
 
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_CONFIGURED, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER
 
Constructor Summary
AjaxPagingNavigator(String id, IPageable pageable)
          Constructor.
AjaxPagingNavigator(String id, IPageable pageable, IPagingLabelProvider labelProvider)
          Constructor.
 
Method Summary
protected  PagingNavigation newNavigation(IPageable pageable, IPagingLabelProvider labelProvider)
          Create a new PagingNavigation.
protected  Link<?> newPagingNavigationIncrementLink(String id, IPageable pageable, int increment)
          Create a new increment link.
protected  Link<?> newPagingNavigationLink(String id, IPageable pageable, int pageNumber)
          Create a new pagenumber link.
protected  void onAjaxEvent(AjaxRequestTarget target)
          Override this method to specify the markup container where your IPageable is part of.
 
Methods inherited from class org.apache.wicket.markup.html.navigation.paging.PagingNavigator
getPageable, getPagingNavigation, onBeforeRender
 
Methods inherited from class org.apache.wicket.markup.html.panel.Panel
onComponentTag, onComponentTagBody, renderHead
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup
newHeaderPartContainer, renderHeadFromAssociatedMarkupFile
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getMarkupType, getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onAfterRenderChildren, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, renderNext, replace, setDefaultModel, setMarkupStream, size, swap, toString, toString, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachBehaviors, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviors, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdImpl, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalAttach, internalDetach, internalOnAttach, internalOnDetach, internalOnModelChanged, isActionAuthorized, isAncestorOf, isAttached, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, onAfterRender, onAttach, onBeginRequest, onConfigure, onDetach, onEndRequest, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AjaxPagingNavigator

public AjaxPagingNavigator(String id,
                           IPageable pageable)
Constructor.

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

AjaxPagingNavigator

public AjaxPagingNavigator(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

newPagingNavigationIncrementLink

protected Link<?> 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.

Overrides:
newPagingNavigationIncrementLink in class PagingNavigator
Parameters:
id - the link id
pageable - the pageable to control
increment - the increment
Returns:
the increment link

newPagingNavigationLink

protected Link<?> 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.

Overrides:
newPagingNavigationLink in class PagingNavigator
Parameters:
id - the link id
pageable - the pageable to control
pageNumber - the page to jump to
Returns:
the pagenumber link

newNavigation

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

Overrides:
newNavigation in class PagingNavigator
Parameters:
pageable - the pageable component
labelProvider - The label provider for the link text.
Returns:
the navigation object

onAjaxEvent

protected void onAjaxEvent(AjaxRequestTarget target)
Override this method to specify the markup container where your IPageable is part of. This implementation is a default implementation that tries to find a parent markup container and update that container. This is necessary as ListViews can't be updated themselves.

Parameters:
target - the request target to add the components that need to be updated in the ajax event.


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.