org.apache.wicket.markup.html.list
Class PageableListView<T>

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.repeater.AbstractRepeater
                  extended by org.apache.wicket.markup.html.list.ListView<T>
                      extended by org.apache.wicket.markup.html.list.PageableListView<T>
Type Parameters:
T - Model object type
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable<Component>, IEventSink, IEventSource, IClusterable, IConverterLocator, IHeaderContributor, IPageable, IPageableItems, IRequestableComponent, IHierarchical<Component>

public abstract class PageableListView<T>
extends ListView<T>
implements IPageableItems

PageableListView is similar to ListView but provides in addition pageable views. A PageableListView holds pageable rows of information. The rows can be re-ordered and deleted, either one at a time or many at a time.

Author:
Jonathan Locke
See Also:
Serialized Form

Field Summary
 
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
PageableListView(java.lang.String id, IModel<? extends java.util.List<? extends T>> model, int itemsPerPage)
          Constructor
PageableListView(java.lang.String id, java.util.List<? extends T> list, int itemsPerPage)
          Creates a pageable list view having the given number of rows per page that uses the provided object as a simple model.
 
Method Summary
 int getCurrentPage()
          Gets the index of the current page being displayed by this list view.
 int getFirstItemOffset()
           
 int getItemCount()
          Gets the total number of items this object has.
 int getItemsPerPage()
          Gets the maximum number of rows on each page.
 int getPageCount()
          Gets the number of pages in this list view.
 int getViewSize()
          Based on the model object's list size, firstIndex and view size, determine what the view size really will be.
 void setCurrentPage(int currentPage)
          Sets the current page that this list view should show.
 void setItemsPerPage(int itemsPerPage)
          Sets the maximum number of rows on each page.
 ListView<T> setStartIndex(int startIndex)
          Prevent users from accidentally using it.
 ListView<T> setViewSize(int size)
          Prevent users from accidentally using it.
 
Methods inherited from class org.apache.wicket.markup.html.list.ListView
getList, getListItemModel, getMarkup, getModel, getModelObject, getReuseItems, getStartIndex, moveDownLink, moveUpLink, newItem, onBeginPopulateItem, onPopulate, populateItem, removeLink, renderChild, renderItem, renderIterator, setList, setModel, setModelObject, setReuseItems
 
Methods inherited from class org.apache.wicket.markup.repeater.AbstractRepeater
onBeforeRender, onRender
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, contains, get, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkupType, hasAssociatedMarkup, internalAdd, internalInitialize, iterator, iterator, onAfterRenderChildren, onComponentTagBody, onMarkupAttached, 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, 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, getFeedbackMessage, 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, locateMarkupStream, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onComponentTag, onConfigure, onDetach, onEvent, onInitialize, 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, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PageableListView

public PageableListView(java.lang.String id,
                        IModel<? extends java.util.List<? extends T>> model,
                        int itemsPerPage)
Constructor

Parameters:
id - See Component
model - See Component
itemsPerPage - Number of rows to show on a page

PageableListView

public PageableListView(java.lang.String id,
                        java.util.List<? extends T> list,
                        int itemsPerPage)
Creates a pageable list view having the given number of rows per page that uses the provided object as a simple model.

Parameters:
id - See Component
list - See Component
itemsPerPage - Number of rows to show on a page
See Also:
ListView.ListView(String, List)
Method Detail

getCurrentPage

public final int getCurrentPage()
Gets the index of the current page being displayed by this list view.

Specified by:
getCurrentPage in interface IPageable
Returns:
Returns the currentPage.

getPageCount

public final int getPageCount()
Gets the number of pages in this list view.

Specified by:
getPageCount in interface IPageable
Returns:
The number of pages in this list view

getItemsPerPage

public final int getItemsPerPage()
Gets the maximum number of rows on each page.

Specified by:
getItemsPerPage in interface IPageableItems
Returns:
the maximum number of rows on each page.

setItemsPerPage

public final void setItemsPerPage(int itemsPerPage)
Sets the maximum number of rows on each page.

Parameters:
itemsPerPage - the maximum number of rows on each page.

getFirstItemOffset

public int getFirstItemOffset()
Returns:
offset of first item

getItemCount

public int getItemCount()
Description copied from interface: IPageableItems
Gets the total number of items this object has.

Specified by:
getItemCount in interface IPageableItems
Returns:
The total number of items this object has.
See Also:
IPageableItems.getItemCount()

getViewSize

public int getViewSize()
Description copied from class: ListView
Based on the model object's list size, firstIndex and view size, determine what the view size really will be. E.g. default for viewSize is Integer.MAX_VALUE, if not set via setViewSize(). If the underlying list has 10 elements, the value returned by getViewSize() will be 10 if startIndex = 0.

Overrides:
getViewSize in class ListView<T>
Returns:
The number of items to be populated and rendered.
See Also:
ListView.getViewSize()

setCurrentPage

public final void setCurrentPage(int currentPage)
Sets the current page that this list view should show.

Specified by:
setCurrentPage in interface IPageable
Parameters:
currentPage - The currentPage to set.

setStartIndex

public ListView<T> setStartIndex(int startIndex)
                          throws java.lang.UnsupportedOperationException
Prevent users from accidentally using it.

Overrides:
setStartIndex in class ListView<T>
Parameters:
startIndex - First index of model object's list to display
Returns:
This
Throws:
java.lang.UnsupportedOperationException - always
See Also:
ListView.setStartIndex(int)

setViewSize

public ListView<T> setViewSize(int size)
                        throws java.lang.UnsupportedOperationException
Prevent users from accidentally using it.

Overrides:
setViewSize in class ListView<T>
Parameters:
size - the view size
Returns:
This
Throws:
java.lang.UnsupportedOperationException - always
See Also:
ListView.setStartIndex(int)


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