org.opencms.workplace.list
Class CmsHtmlList

java.lang.Object
  extended by org.opencms.workplace.list.CmsHtmlList

public class CmsHtmlList
extends java.lang.Object

The main class of the html list widget.

Since:
6.0.0
Version:
$Revision: 1.36 $
Author:
Michael Moossen

Field Summary
static java.lang.String ICON_LEFT
          Standard list button location.
static java.lang.String ICON_RIGHT
          Standard list button location.
static java.lang.String ITEM_SEPARATOR
          Constant for item separator char used for coding/encoding multiselection.
static java.lang.String NO_SELECTION_HELP_VAR
          Var name for error message if no item has been selected.
static java.lang.String NO_SELECTION_MATCH_HELP_VAR
          Var name for error message if number of selected items does not match.
 
Constructor Summary
CmsHtmlList(java.lang.String id, CmsMessageContainer name, CmsListMetadata metadata)
          Default Constructor.
 
Method Summary
 void clear()
          This method resets the content of the list (no the metadata).
 java.util.List getAllContent()
          Returns all list items in the list, may be not visible and sorted.
 java.util.List getContent()
          Returns the filtered list of list items.
 int getCurrentPage()
          returns the number of the current page.
 java.util.List getCurrentPageItems()
          Returns all items of the current page.
 CmsListOrderEnum getCurrentSortOrder()
          Returns the current used sort order.
 java.lang.String getId()
          Returns the id.
 CmsListItem getItem(java.lang.String id)
          This method returns the item identified by the parameter id.
 int getMaxItemsPerPage()
          Returns the maximum number of items per page.
 CmsListMetadata getMetadata()
          Returns the metadata.
 CmsMessageContainer getName()
          Returns the name of the list.
 int getNumberOfPages()
          Returns the filtered number of pages.
 java.lang.String getSearchFilter()
          Returns the search filter.
 int getSize()
          Return the filtered number of items.
 java.lang.String getSortedColumn()
          Returns the sorted column's name.
 CmsListState getState()
          Returns a filled list state.
 int getTotalNumberOfPages()
          Returns the total number of pages.
 int getTotalSize()
          Return the total number of items.
 A_CmsListDialog getWp()
          Returns the workplace dialog object.
static java.lang.String htmlPageSelector(int nrPages, int itemsPage, int nrItems, int curPage, java.util.Locale locale)
          Generates the list of html option elements for a html select control to select a page of a list.
 boolean isBoxed()
          Returns the isBoxed flag.
 boolean isPrintable()
          Returns the printable flag.
 boolean isShowTitle()
          Returns if the list title is shown.
 java.lang.String listCsv()
          Generates the csv output for the list.
 java.lang.String listHtml()
          Generates the html code for the list.
 java.lang.String listJs()
          Generate the need js code for the list.
 CmsListItem newItem(java.lang.String id)
          Returns a new list item for this list.
 java.lang.String printableHtml()
          Returns html code for printing the list.
 void setBoxed(boolean isBoxed)
          Sets the isBoxed flag.
 void setContent(java.util.Collection listItems)
          Sets the list item to display in the list.
 void setCurrentPage(int currentPage)
          Sets the current page.
 void setMaxItemsPerPage(int maxItemsPerPage)
          Sets the maximum number of items per page.
 void setName(CmsMessageContainer name)
          Sets the name of the list.
 void setSearchFilter(java.lang.String searchFilter)
          Sets the search filter.
 void setShowTitle(boolean showTitle)
          Sets if the list title is shown.
 void setSize(int size)
          Sets the current filtered size, only used if data self managed.
 void setSortedColumn(java.lang.String sortedColumn)
          Sets the sorted column.
 void setState(CmsListState listState)
          Sets the list state.
 void setTotalSize(int totalSize)
          Sets the total Size, only used if data self managed.
 void setWp(A_CmsListDialog wp)
          Sets the workplace dialog object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ICON_LEFT

public static final java.lang.String ICON_LEFT
Standard list button location.

See Also:
Constant Field Values

ICON_RIGHT

public static final java.lang.String ICON_RIGHT
Standard list button location.

See Also:
Constant Field Values

ITEM_SEPARATOR

public static final java.lang.String ITEM_SEPARATOR
Constant for item separator char used for coding/encoding multiselection.

See Also:
Constant Field Values

NO_SELECTION_HELP_VAR

public static final java.lang.String NO_SELECTION_HELP_VAR
Var name for error message if no item has been selected.

See Also:
Constant Field Values

NO_SELECTION_MATCH_HELP_VAR

public static final java.lang.String NO_SELECTION_MATCH_HELP_VAR
Var name for error message if number of selected items does not match.

See Also:
Constant Field Values
Constructor Detail

CmsHtmlList

public CmsHtmlList(java.lang.String id,
                   CmsMessageContainer name,
                   CmsListMetadata metadata)
Default Constructor.

Parameters:
id - unique id of the list, is used as name for controls and js functions and vars
name - the display name
metadata - the list's metadata
Method Detail

htmlPageSelector

public static java.lang.String htmlPageSelector(int nrPages,
                                                int itemsPage,
                                                int nrItems,
                                                int curPage,
                                                java.util.Locale locale)
Generates the list of html option elements for a html select control to select a page of a list.

Parameters:
nrPages - the total number of pages
itemsPage - the maximum number of items per page
nrItems - the total number of items
curPage - the current page
locale - the locale
Returns:
html code

clear

public void clear()
This method resets the content of the list (no the metadata).


getAllContent

public java.util.List getAllContent()
Returns all list items in the list, may be not visible and sorted.

Returns:
all list items

getContent

public java.util.List getContent()
Returns the filtered list of list items.

Equals to getAllContent() if no filter is set.

Returns:
the filtered list of list items

getCurrentPage

public int getCurrentPage()
returns the number of the current page.

Returns:
the number of the current page

getCurrentPageItems

public java.util.List getCurrentPageItems()
Returns all items of the current page.

Returns:
all items of the current page, a list of CmsListItem objects

getCurrentSortOrder

public CmsListOrderEnum getCurrentSortOrder()
Returns the current used sort order.

Returns:
the current used sort order

getId

public java.lang.String getId()
Returns the id.

Returns:
the id

getItem

public CmsListItem getItem(java.lang.String id)
This method returns the item identified by the parameter id.

Only current visible item can be retrieved using this method.

Parameters:
id - the id of the item to look for
Returns:
the requested item or null if not found

getMaxItemsPerPage

public int getMaxItemsPerPage()
Returns the maximum number of items per page.

Returns:
the maximum number of items per page

getMetadata

public CmsListMetadata getMetadata()
Returns the metadata.

Returns:
the metadata

getName

public CmsMessageContainer getName()
Returns the name of the list.

Returns:
the list's name

getNumberOfPages

public int getNumberOfPages()
Returns the filtered number of pages.

Equals to getTotalNumberOfPages() if no filter is set.

Returns:
the filtered of pages

getSearchFilter

public java.lang.String getSearchFilter()
Returns the search filter.

Returns:
the search filter

getSize

public int getSize()
Return the filtered number of items.

Equals to getTotalSize() if no filter is set.

Returns:
the filtered number of items

getSortedColumn

public java.lang.String getSortedColumn()
Returns the sorted column's name.

Returns:
the sorted column's name

getState

public CmsListState getState()
Returns a filled list state.

Returns:
the state of the list

getTotalNumberOfPages

public int getTotalNumberOfPages()
Returns the total number of pages.

Returns:
the total number of pages

getTotalSize

public int getTotalSize()
Return the total number of items.

Returns:
the total number of items

getWp

public A_CmsListDialog getWp()
Returns the workplace dialog object.

Returns:
the workplace dialog object

isBoxed

public boolean isBoxed()
Returns the isBoxed flag.

If this flag is set the list will be surrounded by a box.

Returns:
the isBoxed flag

isPrintable

public boolean isPrintable()
Returns the printable flag.

Returns:
the printable flag

isShowTitle

public boolean isShowTitle()
Returns if the list title is shown.

Returns:
true if the list title is shown, otherwise false

listCsv

public java.lang.String listCsv()
Generates the csv output for the list.

Returns:
csv output

listHtml

public java.lang.String listHtml()
Generates the html code for the list.

Returns:
html code

listJs

public java.lang.String listJs()
Generate the need js code for the list.

Returns:
js code

newItem

public CmsListItem newItem(java.lang.String id)
Returns a new list item for this list.

Parameters:
id - the id of the item has to be unique
Returns:
a new list item

printableHtml

public java.lang.String printableHtml()
Returns html code for printing the list.

Returns:
html code

setBoxed

public void setBoxed(boolean isBoxed)
Sets the isBoxed flag.

If this flag is set, the list will be surrounded by a box.

Parameters:
isBoxed - the isBoxed flag to set

setContent

public void setContent(java.util.Collection listItems)
Sets the list item to display in the list.

Parameters:
listItems - a collection of CmsListItem objects

setCurrentPage

public void setCurrentPage(int currentPage)
                    throws CmsIllegalArgumentException
Sets the current page.

Parameters:
currentPage - the current page to set
Throws:
CmsIllegalArgumentException - if the argument is invalid

setMaxItemsPerPage

public void setMaxItemsPerPage(int maxItemsPerPage)
Sets the maximum number of items per page.

Parameters:
maxItemsPerPage - the maximum number of items per page to set

setName

public void setName(CmsMessageContainer name)
Sets the name of the list.

Parameters:
name - the name of the list

setSearchFilter

public void setSearchFilter(java.lang.String searchFilter)
Sets the search filter.

Parameters:
searchFilter - the search filter to set

setShowTitle

public void setShowTitle(boolean showTitle)
Sets if the list title is shown.

Parameters:
showTitle - true if the list title is shown, otherwise false

setSize

public void setSize(int size)
Sets the current filtered size, only used if data self managed.

Parameters:
size - the size to set

setSortedColumn

public void setSortedColumn(java.lang.String sortedColumn)
                     throws CmsIllegalArgumentException
Sets the sorted column.

Parameters:
sortedColumn - the sorted column to set
Throws:
CmsIllegalArgumentException - if the sortedColumn argument is invalid

setState

public void setState(CmsListState listState)
Sets the list state.

This may involve sorting, filtering and paging.

Parameters:
listState - the state to be set

setTotalSize

public void setTotalSize(int totalSize)
Sets the total Size, only used if data self managed.

Parameters:
totalSize - the total Size to set

setWp

public void setWp(A_CmsListDialog wp)
Sets the workplace dialog object.

Parameters:
wp - the workplace dialog object to set