org.overlord.sramp.ui.client.widgets
Class DataTableWithPager<T>

java.lang.Object
  extended by com.google.gwt.user.client.ui.UIObject
      extended by com.google.gwt.user.client.ui.Widget
          extended by com.google.gwt.user.client.ui.Panel
              extended by com.google.gwt.user.client.ui.ComplexPanel
                  extended by com.google.gwt.user.client.ui.FlowPanel
                      extended by org.overlord.sramp.ui.client.widgets.DataTableWithPager<T>
All Implemented Interfaces:
com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.HasWidgets, com.google.gwt.user.client.ui.HasWidgets.ForIsWidget, com.google.gwt.user.client.ui.IndexedPanel, com.google.gwt.user.client.ui.IndexedPanel.ForIsWidget, com.google.gwt.user.client.ui.InsertPanel, com.google.gwt.user.client.ui.InsertPanel.ForIsWidget, com.google.gwt.user.client.ui.IsWidget, Iterable<com.google.gwt.user.client.ui.Widget>

public abstract class DataTableWithPager<T>
extends com.google.gwt.user.client.ui.FlowPanel

A single widget that models a data table with a pager.

Author:
eric.wittmann@redhat.com

Nested Class Summary
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled
 
Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.InsertPanel
com.google.gwt.user.client.ui.InsertPanel.ForIsWidget
 
Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.HasWidgets
com.google.gwt.user.client.ui.HasWidgets.ForIsWidget
 
Field Summary
 
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX
 
Constructor Summary
DataTableWithPager()
          Constructor.
 
Method Summary
protected  void configureTable(DataTable<T> table)
          Called to configure the table.
protected abstract  void createColumns(DataTable<T> table)
          Called to create the table columns.
protected  com.google.gwt.view.client.ProvidesKey<T> createKeyProvider()
          Creates the data table's key provider.
protected abstract  AbstractPagedPlace createPagerPlace(AbstractPagedPlace currentPlace)
          Factory method for creating a place.
 List<T> getCurrentSelection()
          Returns a list of the selected items in the table.
protected abstract  String getDefaultOrderBy()
          Returns the default order by.
 com.google.gwt.view.client.SelectionModel<T> getSelectionModel()
          Gets the configured selection model from the table.
protected  void onSort(String dataStoreName, boolean ascending)
          Called when the user clicks on a column header to sort by it.
 void reset()
          Resets the table to be ready to receive data.
 void setEmptyTableMessage(String message)
           
 void setLoadingMessage(String message)
           
 void setRowData(List<T> rowData, AbstractPagedPlace currentPlace, int defaultPageSize, boolean hasMoreRows)
          Sets the table's row data.
 void setSelectionModel(com.google.gwt.view.client.SelectionModel<T> selectionModel)
          Sets the selection model on the table.
 
Methods inherited from class com.google.gwt.user.client.ui.FlowPanel
add, clear, insert, insert
 
Methods inherited from class com.google.gwt.user.client.ui.ComplexPanel
add, adjustIndex, checkIndexBoundsForAccess, checkIndexBoundsForInsertion, getChildren, getWidget, getWidgetCount, getWidgetIndex, getWidgetIndex, insert, insert, iterator, remove, remove
 
Methods inherited from class com.google.gwt.user.client.ui.Panel
add, adopt, adopt, disown, doAttachChildren, doDetachChildren, orphan, remove
 
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, fireEvent, getHandlerCount, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onBrowserEvent, onDetach, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents
 
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString, unsinkEvents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.google.gwt.user.client.ui.InsertPanel.ForIsWidget
add
 
Methods inherited from interface com.google.gwt.user.client.ui.IndexedPanel.ForIsWidget
getWidgetIndex
 
Methods inherited from interface com.google.gwt.user.client.ui.IndexedPanel
getWidget, getWidgetCount, getWidgetIndex, remove
 

Constructor Detail

DataTableWithPager

public DataTableWithPager()
Constructor.

Method Detail

configureTable

protected void configureTable(DataTable<T> table)
Called to configure the table.

Parameters:
table -

onSort

protected void onSort(String dataStoreName,
                      boolean ascending)
Called when the user clicks on a column header to sort by it.

Parameters:
dataStoreName -
ascending -

createKeyProvider

protected com.google.gwt.view.client.ProvidesKey<T> createKeyProvider()
Creates the data table's key provider.


createColumns

protected abstract void createColumns(DataTable<T> table)
Called to create the table columns.

Parameters:
table -

setLoadingMessage

public void setLoadingMessage(String message)
Parameters:
message -

setEmptyTableMessage

public void setEmptyTableMessage(String message)
Parameters:
message -

setSelectionModel

public void setSelectionModel(com.google.gwt.view.client.SelectionModel<T> selectionModel)
Sets the selection model on the table.

Parameters:
selectionModel -

getSelectionModel

public com.google.gwt.view.client.SelectionModel<T> getSelectionModel()
Gets the configured selection model from the table.


reset

public void reset()
Resets the table to be ready to receive data.


setRowData

public void setRowData(List<T> rowData,
                       AbstractPagedPlace currentPlace,
                       int defaultPageSize,
                       boolean hasMoreRows)
Sets the table's row data.

Parameters:
rowData -
currentPlace -
defaultPageSize -
hasMoreRows -

getDefaultOrderBy

protected abstract String getDefaultOrderBy()
Returns the default order by. This string must match up to the 'data store name' of one of the previously created columns.


createPagerPlace

protected abstract AbstractPagedPlace createPagerPlace(AbstractPagedPlace currentPlace)
Factory method for creating a place.

Parameters:
currentPlace -

getCurrentSelection

public List<T> getCurrentSelection()
Returns a list of the selected items in the table. If nothing is currently selected then an empty list is returned.



Copyright © 2012-2013 JBoss, a division of Red Hat. All Rights Reserved.