|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.vaadin.server.AbstractClientConnector
com.vaadin.ui.AbstractComponent
com.vaadin.ui.Grid
public class Grid
A grid component for displaying tabular data.
Grid is always bound to a Container.Indexed
, but is not a
Container
of any kind in of itself. The contents of the given
Container is displayed with the help of Renderers
.
Each column has its own Renderer
that displays data into something
that can be displayed in the browser. That data is first converted with a
Converter
into something
that the Renderer can process. This can also be an implicit step - if a
column has a simple data type, like a String, no explicit assignment is
needed.
Usually a renderer takes some kind of object, and converts it into a HTML-formatted string.
Grid grid = new Grid(myContainer);
Column column = grid.getColumn(STRING_DATE_PROPERTY);
column.setConverter(new StringToDateConverter());
column.setRenderer(new MyColorfulDateRenderer());
The data is accessed as it is needed by Grid and not any sooner. In other words, if the given Container is huge, but only the first few rows are displayed to the user, only those (and a few more, for caching purposes) are accessed.
Grid supports three selection modes
(single,
multi, none), and comes bundled with one
model
for each of the modes. The distinction
between a selection mode and selection model is as follows: a mode
essentially says whether you can have one, many or no rows selected. The
model, however, has the behavioral details of each. A single selection model
may require that the user deselects one row before selecting another one. A
variant of a multiselect might have a configurable maximum of rows that may
be selected. And so on.
Grid grid = new Grid(myContainer);
// uses the bundled SingleSelectionModel class
grid.setSelectionMode(SelectionMode.SINGLE);
// changes the behavior to a custom selection model
grid.setSelectionModel(new MyTwoSelectionModel());
Nested Class Summary | |
---|---|
static class |
Grid.AbstractRenderer<T>
An abstract base class for server-side Grid renderers. |
static class |
Grid.AbstractSelectionModel
A base class for SelectionModels that contains some of the logic that is reusable. |
static class |
Grid.CellReference
A data class which contains information which identifies a cell in a Grid . |
static interface |
Grid.CellStyleGenerator
Callback interface for generating custom style names for cells |
static class |
Grid.Column
A column in the grid. |
static class |
Grid.CommitErrorEvent
An event which is fired when saving the editor fails |
class |
Grid.DefaultEditorErrorHandler
Default error handler for the editor |
static interface |
Grid.EditorErrorHandler
Error handler for the editor |
static class |
Grid.EditorFieldFactory
Field factory used by default in the editor. |
protected static class |
Grid.Footer
Represents the footer section of a Grid. |
static class |
Grid.FooterCell
Represents a footer cell in Grid. |
static class |
Grid.FooterRow
Represents a footer row in Grid. |
protected static class |
Grid.Header
Represents the header section of a Grid. |
static class |
Grid.HeaderCell
Represents a header cell in Grid. |
static class |
Grid.HeaderRow
Represents a header row in Grid. |
static class |
Grid.MultiSelectionModel
A default implementation of a Grid.SelectionModel.Multi |
static class |
Grid.NoSelectionModel
A default implementation for a Grid.SelectionModel.None |
static class |
Grid.RowReference
A data class which contains information which identifies a row in a Grid . |
static interface |
Grid.RowStyleGenerator
Callback interface for generating custom style names for data rows |
static class |
Grid.SelectionMode
Selection modes representing built-in SelectionModels that come bundled with Grid . |
static interface |
Grid.SelectionModel
The server-side interface that controls Grid's selection state. |
static class |
Grid.SingleSelectionModel
A default implementation of a Grid.SelectionModel.Single |
protected static class |
Grid.StaticSection<ROWTYPE extends com.vaadin.ui.Grid.StaticSection.StaticRow<?>>
Abstract base class for Grid header and footer sections. |
Nested classes/interfaces inherited from interface com.vaadin.ui.HasComponents |
---|
HasComponents.ComponentAttachDetachNotifier, HasComponents.ComponentAttachEvent, HasComponents.ComponentAttachListener, HasComponents.ComponentDetachEvent, HasComponents.ComponentDetachListener |
Nested classes/interfaces inherited from interface com.vaadin.ui.Component |
---|
Component.ErrorEvent, Component.Event, Component.Focusable, Component.Listener |
Nested classes/interfaces inherited from interface com.vaadin.server.ClientConnector |
---|
ClientConnector.AttachEvent, ClientConnector.AttachListener, ClientConnector.ConnectorErrorEvent, ClientConnector.DetachEvent, ClientConnector.DetachListener |
Nested classes/interfaces inherited from interface com.vaadin.server.Sizeable |
---|
Sizeable.Unit |
Field Summary |
---|
Fields inherited from class com.vaadin.ui.AbstractComponent |
---|
DESIGN_ATTR_PLAIN_TEXT |
Fields inherited from interface com.vaadin.server.Sizeable |
---|
SIZE_UNDEFINED, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS |
Constructor Summary | |
---|---|
Grid()
Creates a new Grid with a new IndexedContainer as the data
source. |
|
Grid(Container.Indexed dataSource)
Creates a new Grid using the given data source. |
|
Grid(java.lang.String caption)
Creates a new Grid with the given caption and a new IndexedContainer data source. |
|
Grid(java.lang.String caption,
Container.Indexed dataSource)
Creates a new Grid with the given caption and data source. |
Method Summary | |
---|---|
Grid.Column |
addColumn(java.lang.Object propertyId)
Adds a new Column to Grid. |
Grid.Column |
addColumn(java.lang.Object propertyId,
java.lang.Class<?> type)
Adds a new Column to Grid. |
protected void |
addColumnProperty(java.lang.Object propertyId,
java.lang.Class<?> type,
java.lang.Object defaultValue)
|
Grid.FooterRow |
addFooterRowAt(int index)
Inserts a new row at the given position to the footer section. |
Grid.HeaderRow |
addHeaderRowAt(int index)
Inserts a new row at the given position to the header section. |
void |
addItemClickListener(ItemClickEvent.ItemClickListener listener)
Register a listener to handle ItemClickEvent s. |
void |
addListener(ItemClickEvent.ItemClickListener listener)
Deprecated. |
java.lang.Object |
addRow(java.lang.Object... values)
Adds a row to the underlying container. |
void |
addSelectionListener(SelectionEvent.SelectionListener listener)
Registers a new selection listener |
void |
addSortListener(SortEvent.SortListener listener)
Adds a sort order change listener that gets notified when the sort order changes. |
Grid.FooterRow |
appendFooterRow()
Adds a new row at the bottom of the footer section. |
Grid.HeaderRow |
appendHeaderRow()
Adds a new row at the bottom of the header section. |
void |
beforeClientResponse(boolean initial)
Called before the shared state and RPC invocations are sent to the client. |
void |
cancelEditor()
Cancels the currently active edit if any. |
void |
clearSortOrder()
Clear the current sort order, and re-sort the grid. |
boolean |
deselect(java.lang.Object itemId)
Marks an item as unselected. |
protected void |
doCancelEditor()
|
protected void |
doEditItem()
|
void |
editItem(java.lang.Object itemId)
Opens the editor interface for the provided item. |
void |
fireSelectionEvent(java.util.Collection<java.lang.Object> oldSelection,
java.util.Collection<java.lang.Object> newSelection)
Fires a selection change event. |
Grid.CellStyleGenerator |
getCellStyleGenerator()
Gets the style generator that is used for generating styles for cells |
Grid.Column |
getColumn(java.lang.Object propertyId)
Returns a column based on the property id |
java.util.List<Grid.Column> |
getColumns()
Returns a copy of currently configures columns in their current visual order in this Grid. |
Container.Indexed |
getContainerDataSource()
Returns the grid data source. |
Grid.HeaderRow |
getDefaultHeaderRow()
Returns the current default row of the header section. |
java.lang.Object |
getEditedItemId()
Gets the id of the item that is currently being edited. |
java.lang.String |
getEditorCancelCaption()
Gets the current caption of the cancel button in the Grid editor. |
Grid.EditorErrorHandler |
getEditorErrorHandler()
Gets the error handler used for the editor |
FieldGroupFieldFactory |
getEditorFieldFactory()
Gets the field factory for the FieldGroup . |
FieldGroup |
getEditorFieldGroup()
Gets the field group that is backing the item editor of this grid. |
java.lang.String |
getEditorSaveCaption()
Gets the current caption of the save button in the Grid editor. |
protected Grid.Footer |
getFooter()
Returns the footer section of this grid. |
Grid.FooterRow |
getFooterRow(int rowIndex)
Gets the footer row at given index. |
int |
getFooterRowCount()
Gets the row count for the footer. |
int |
getFrozenColumnCount()
Gets the number of frozen columns in this grid. |
protected Grid.Header |
getHeader()
Returns the header section of this grid. |
Grid.HeaderRow |
getHeaderRow(int rowIndex)
Gets the header row at given index. |
int |
getHeaderRowCount()
Gets the row count for the header section. |
double |
getHeightByRows()
Gets the amount of rows in Grid's body that are shown, while getHeightMode() is HeightMode.ROW . |
com.vaadin.shared.ui.grid.HeightMode |
getHeightMode()
Returns the current HeightMode the Grid is in. |
Grid.RowStyleGenerator |
getRowStyleGenerator()
Gets the style generator that is used for generating styles for rows |
java.lang.Object |
getSelectedRow()
Gets the item id of the currently selected item. |
java.util.Collection<java.lang.Object> |
getSelectedRows()
Returns a collection of all the currently selected itemIds. |
Grid.SelectionModel |
getSelectionModel()
Returns the currently used Grid.SelectionModel . |
java.util.List<SortOrder> |
getSortOrder()
Get the current sort order list. |
protected com.vaadin.shared.ui.grid.GridState |
getState()
Returns the shared state bean with information to be sent from the server to the client. |
protected com.vaadin.shared.ui.grid.GridState |
getState(boolean markAsDirty)
Returns the shared state for this connector. |
boolean |
isEditorActive()
Returns whether an item is currently being edited in the editor. |
boolean |
isEditorEnabled()
Checks whether the item editor UI is enabled for this grid. |
boolean |
isFooterVisible()
Returns the visibility of the footer section. |
boolean |
isHeaderVisible()
Returns the visibility of the header section. |
boolean |
isRendered(Component childComponent)
Checks if the child component should be rendered (sent to the client side). |
boolean |
isSelected(java.lang.Object itemId)
Checks whether an item is selected or not. |
java.util.Iterator<Component> |
iterator()
Gets an iterator to the collection of contained components. |
Grid.FooterRow |
prependFooterRow()
Adds a new row at the top of the footer section. |
Grid.HeaderRow |
prependHeaderRow()
Adds a new row at the top of the header section. |
void |
recalculateColumnWidths()
Requests that the column widths should be recalculated. |
void |
removeAllColumns()
Removes all columns from this Grid. |
void |
removeColumn(java.lang.Object propertyId)
Removes a column from Grid based on a property id. |
void |
removeFooterRow(Grid.FooterRow row)
Removes the given row from the footer section. |
void |
removeFooterRow(int rowIndex)
Removes the row at the given position from the footer section. |
void |
removeHeaderRow(Grid.HeaderRow row)
Removes the given row from the header section. |
void |
removeHeaderRow(int rowIndex)
Removes the row at the given position from the header section. |
void |
removeItemClickListener(ItemClickEvent.ItemClickListener listener)
Removes an ItemClickListener. |
void |
removeListener(ItemClickEvent.ItemClickListener listener)
Deprecated. |
void |
removeSelectionListener(SelectionEvent.SelectionListener listener)
Removes a previously registered selection change listener |
void |
removeSortListener(SortEvent.SortListener listener)
Removes a sort order change listener previously added using #addSortListener(SortListener) . |
void |
saveEditor()
Saves all changes done to the bound fields. |
void |
scrollTo(java.lang.Object itemId)
Scrolls to a certain item, using ScrollDestination.ANY . |
void |
scrollTo(java.lang.Object itemId,
com.vaadin.shared.ui.grid.ScrollDestination destination)
Scrolls to a certain item, using user-specified scroll destination. |
void |
scrollToEnd()
Scrolls to the end of the last data row. |
void |
scrollToStart()
Scrolls to the beginning of the first data row. |
boolean |
select(java.lang.Object itemId)
Marks an item as selected. |
void |
setCellStyleGenerator(Grid.CellStyleGenerator cellStyleGenerator)
Sets the style generator that is used for generating styles for cells |
void |
setColumnOrder(java.lang.Object... propertyIds)
Sets a new column order for the grid. |
void |
setContainerDataSource(Container.Indexed container)
Sets the grid data source. |
void |
setDefaultHeaderRow(Grid.HeaderRow row)
Sets the default row of the header. |
void |
setEditorCancelCaption(java.lang.String cancelCaption)
Sets the caption on the cancel button in the Grid editor. |
void |
setEditorEnabled(boolean isEnabled)
Sets whether or not the item editor UI is enabled for this grid. |
void |
setEditorErrorHandler(Grid.EditorErrorHandler editorErrorHandler)
Sets the error handler for the editor. |
void |
setEditorFieldFactory(FieldGroupFieldFactory fieldFactory)
Sets the field factory for the FieldGroup . |
void |
setEditorFieldGroup(FieldGroup fieldGroup)
Sets the field group that is backing the item editor of this grid. |
void |
setEditorSaveCaption(java.lang.String saveCaption)
Sets the caption on the save button in the Grid editor. |
void |
setFooterVisible(boolean visible)
Sets the visibility of the footer section. |
void |
setFrozenColumnCount(int numberOfColumns)
Sets the number of frozen columns in this grid. |
void |
setHeaderVisible(boolean visible)
Sets the visibility of the header section. |
void |
setHeight(float height,
Sizeable.Unit unit)
Sets the height of the object. |
void |
setHeightByRows(double rows)
Sets the number of rows that should be visible in Grid's body, while getHeightMode() is HeightMode.ROW . |
void |
setHeightMode(com.vaadin.shared.ui.grid.HeightMode heightMode)
Defines the mode in which the Grid widget's height is calculated. |
void |
setRowStyleGenerator(Grid.RowStyleGenerator rowStyleGenerator)
Sets the style generator that is used for generating styles for rows |
Grid.SelectionModel |
setSelectionMode(Grid.SelectionMode selectionMode)
Sets the Grid's selection mode. |
void |
setSelectionModel(Grid.SelectionModel selectionModel)
Takes a new Grid.SelectionModel into use. |
void |
setSortOrder(java.util.List<SortOrder> order)
Sets the sort order to use. |
void |
sort(java.lang.Object propertyId)
Sort this Grid in ascending order by a specified property. |
void |
sort(java.lang.Object propertyId,
com.vaadin.shared.data.sort.SortDirection direction)
Sort this Grid in user-specified SortOrder by a property. |
void |
sort(Sort s)
Sets the current sort order using the fluid Sort API. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.vaadin.ui.Component |
---|
addListener, addStyleName, attach, getCaption, getDescription, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getUI, isEnabled, isReadOnly, isVisible, readDesign, removeListener, removeStyleName, setCaption, setEnabled, setIcon, setId, setParent, setPrimaryStyleName, setReadOnly, setStyleName, setVisible, writeDesign |
Methods inherited from interface com.vaadin.server.ClientConnector |
---|
addAttachListener, addDetachListener, detach, encodeState, getErrorHandler, getExtensions, getRpcManager, getStateType, handleConnectorRequest, isAttached, isConnectorEnabled, markAsDirty, markAsDirtyRecursive, removeAttachListener, removeDetachListener, removeExtension, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler |
Methods inherited from interface com.vaadin.shared.Connector |
---|
getConnectorId |
Methods inherited from interface com.vaadin.server.Sizeable |
---|
getHeight, getHeightUnits, getWidth, getWidthUnits, setHeight, setHeightUndefined, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthUndefined |
Constructor Detail |
---|
public Grid()
IndexedContainer
as the data
source.
public Grid(Container.Indexed dataSource)
dataSource
- the indexed container to use as a data sourcepublic Grid(java.lang.String caption)
IndexedContainer
data source.
caption
- the caption of the gridpublic Grid(java.lang.String caption, Container.Indexed dataSource)
IndexedContainer
will be used.
caption
- the caption of the griddataSource
- the indexed container to use as a data sourceMethod Detail |
---|
public void beforeClientResponse(boolean initial)
ClientConnector
This method must not alter the component hierarchy in any way. Calling
ClientConnector.markAsDirty()
from this method will have no effect.
beforeClientResponse
in interface ClientConnector
beforeClientResponse
in class AbstractComponent
initial
- true
if the client-side connector will be created
and initialized after this method has been invoked.
false
if there is already an initialized
client-side connector.public void setContainerDataSource(Container.Indexed container)
container
- The container data source. Cannot be null.
java.lang.IllegalArgumentException
- if the data source is nullpublic Container.Indexed getContainerDataSource()
public Grid.Column getColumn(java.lang.Object propertyId)
propertyId
- the property id of the column
null
if not foundpublic java.util.List<Grid.Column> getColumns()
public Grid.Column addColumn(java.lang.Object propertyId) throws java.lang.IllegalStateException
Note that adding a new property is only done for the default container that Grid sets up with the default constructor.
propertyId
- the property id of the new column
java.lang.IllegalStateException
- if column for given property already exists in this gridpublic Grid.Column addColumn(java.lang.Object propertyId, java.lang.Class<?> type)
Default value for the new property is 0 if type is Integer, Double and Float. If type is String, default value is an empty string. For all other types the default value is null.
Note that adding a new property is only done for the default container that Grid sets up with the default constructor.
propertyId
- the property id of the new columntype
- the data type for the new property
java.lang.IllegalStateException
- if column for given property already exists in this grid or
property already exists in the container with wrong typeprotected void addColumnProperty(java.lang.Object propertyId, java.lang.Class<?> type, java.lang.Object defaultValue) throws java.lang.IllegalStateException
java.lang.IllegalStateException
public void removeAllColumns()
protected com.vaadin.shared.ui.grid.GridState getState()
AbstractComponent
getState
in class AbstractComponent
protected com.vaadin.shared.ui.grid.GridState getState(boolean markAsDirty)
AbstractClientConnector
getState
in class AbstractComponent
markAsDirty
- true if the connector should automatically be marked dirty,
false otherwise
AbstractClientConnector.getState()
public void removeColumn(java.lang.Object propertyId) throws java.lang.IllegalArgumentException
propertyId
- The property id of column to be removed
java.lang.IllegalArgumentException
- if there is no column for given property id in this gridpublic void setColumnOrder(java.lang.Object... propertyIds)
propertyIds
- properties in the order columns should bepublic void setFrozenColumnCount(int numberOfColumns)
The default value is 0.
numberOfColumns
- the number of columns that should be frozen
java.lang.IllegalArgumentException
- if the column count is < 0 or > the number of visible columnspublic int getFrozenColumnCount()
setFrozenColumnCount(int)
public void scrollTo(java.lang.Object itemId) throws java.lang.IllegalArgumentException
ScrollDestination.ANY
.
itemId
- id of item to scroll to.
java.lang.IllegalArgumentException
- if the provided id is not recognized by the data source.public void scrollTo(java.lang.Object itemId, com.vaadin.shared.ui.grid.ScrollDestination destination) throws java.lang.IllegalArgumentException
itemId
- id of item to scroll to.destination
- value specifying desired position of scrolled-to row.
java.lang.IllegalArgumentException
- if the provided id is not recognized by the data source.public void scrollToStart()
public void scrollToEnd()
public void setHeightByRows(double rows)
getHeightMode()
is HeightMode.ROW
.
If Grid is currently not in HeightMode.ROW
, the given value is
remembered, and applied once the mode is applied.
rows
- The height in terms of number of rows displayed in Grid's
body. If Grid doesn't contain enough rows, white space is
displayed instead. If null
is given, then Grid's
height is undefined
java.lang.IllegalArgumentException
- if rows
is zero or less
java.lang.IllegalArgumentException
- if rows
is infinite
java.lang.IllegalArgumentException
- if rows
is NaN
public double getHeightByRows()
getHeightMode()
is HeightMode.ROW
.
setHeightByRows(double)
public void setHeight(float height, Sizeable.Unit unit)
Note: This method will change the widget's size in the browser
only if getHeightMode()
returns HeightMode.CSS
.
setHeight
in interface Sizeable
setHeight
in class AbstractComponent
height
- the height of the object.unit
- the unit used for the width.setHeightMode(HeightMode)
public void setHeightMode(com.vaadin.shared.ui.grid.HeightMode heightMode)
If HeightMode.CSS
is given, Grid will respect the values given
via a setHeight
-method, and behave as a traditional Component.
If HeightMode.ROW
is given, Grid will make sure that the body
will display as many rows as getHeightByRows()
defines.
Note: If headers/footers are inserted or removed, the widget
will resize itself to still display the required amount of rows in its
body. It also takes the horizontal scrollbar into account.
heightMode
- the mode in to which Grid should be setpublic com.vaadin.shared.ui.grid.HeightMode getHeightMode()
HeightMode
the Grid is in.
Defaults to HeightMode.CSS
.
public void setSelectionModel(Grid.SelectionModel selectionModel) throws java.lang.IllegalArgumentException
Grid.SelectionModel
into use.
The SelectionModel that is previously in use will have all its items deselected.
If the given SelectionModel is already in use, this method does nothing.
selectionModel
- the new SelectionModel to use
java.lang.IllegalArgumentException
- if selectionModel
is null
public Grid.SelectionModel getSelectionModel()
Grid.SelectionModel
.
public Grid.SelectionModel setSelectionMode(Grid.SelectionMode selectionMode) throws java.lang.IllegalArgumentException
Grid supports three selection modes: multiselect, single select and no selection, and this is a convenience method for choosing between one of them.
Technically, this method is a shortcut that can be used instead of
calling setSelectionModel
with a specific SelectionModel
instance. Grid comes with three built-in SelectionModel classes, and the
Grid.SelectionMode
enum represents each of them.
Essentially, the two following method calls are equivalent:
grid.setSelectionMode(SelectionMode.MULTI);
grid.setSelectionModel(new MultiSelectionMode());
selectionMode
- the selection mode to switch to
Grid.SelectionModel
instance that was taken into use
java.lang.IllegalArgumentException
- if selectionMode
is null
Grid.SelectionModel
public boolean isSelected(java.lang.Object itemId)
itemId
- the item id to check for
true
iff the item is selectedpublic java.util.Collection<java.lang.Object> getSelectedRows()
This method is a shorthand that delegates to the
selection model
.
public java.lang.Object getSelectedRow() throws java.lang.IllegalStateException
This method is a shorthand that delegates to the
selection model
. Only
Grid.SelectionModel.Single
is supported.
null
if nothing is selected
java.lang.IllegalStateException
- if the selection model does not implement
SelectionModel.Single
public boolean select(java.lang.Object itemId) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
This method is a shorthand that delegates to the
selection model
. Only
Grid.SelectionModel.Single
and Grid.SelectionModel.Multi
are
supported.
itemIds
- the itemId to mark as selected
true
if the selection state changed,
false
if the itemId already was selected
java.lang.IllegalArgumentException
- if the itemId
doesn't exist in the currently active
Container
java.lang.IllegalStateException
- if the selection was illegal. One such reason might be that
the implementation already had an item selected, and that
needs to be explicitly deselected before re-selecting
something.
java.lang.IllegalStateException
- if the selection model does not implement
SelectionModel.Single
or SelectionModel.Multi
public boolean deselect(java.lang.Object itemId) throws java.lang.IllegalStateException
This method is a shorthand that delegates to the
selection model
. Only
Grid.SelectionModel.Single
and Grid.SelectionModel.Multi
are
supported.
itemId
- the itemId to remove from being selected
true
if the selection state changed,
false
if the itemId was already selected
java.lang.IllegalArgumentException
- if the itemId
doesn't exist in the currently active
Container
java.lang.IllegalStateException
- if the deselection was illegal. One such reason might be that
the implementation requires one or more items to be selected
at all times.
java.lang.IllegalStateException
- if the selection model does not implement
SelectionModel.Single
or {code SelectionModel.Multi}public void fireSelectionEvent(java.util.Collection<java.lang.Object> oldSelection, java.util.Collection<java.lang.Object> newSelection)
Note: This is not a method that should be called by
application logic. This method is publicly accessible only so that
SelectionModels
would be able to inform Grid of
these events.
addedSelections
- the selections that were added by this eventremovedSelections
- the selections that were removed by this eventpublic void addSelectionListener(SelectionEvent.SelectionListener listener)
SelectionEvent.SelectionNotifier
addSelectionListener
in interface SelectionEvent.SelectionNotifier
listener
- the listener to registerpublic void removeSelectionListener(SelectionEvent.SelectionListener listener)
SelectionEvent.SelectionNotifier
removeSelectionListener
in interface SelectionEvent.SelectionNotifier
listener
- the listener to removepublic void sort(Sort s)
Sort
for more information.
Note: Sorting by a property that has no column in Grid will hide all possible sorting indicators.
s
- a sort instance
java.lang.IllegalStateException
- if container is not sortable (does not implement
Container.Sortable)
java.lang.IllegalArgumentException
- if trying to sort by non-existing propertypublic void sort(java.lang.Object propertyId)
Note: Sorting by a property that has no column in Grid will hide all possible sorting indicators.
propertyId
- a property ID
java.lang.IllegalStateException
- if container is not sortable (does not implement
Container.Sortable)
java.lang.IllegalArgumentException
- if trying to sort by non-existing propertypublic void sort(java.lang.Object propertyId, com.vaadin.shared.data.sort.SortDirection direction)
SortOrder
by a property.
Note: Sorting by a property that has no column in Grid will hide all possible sorting indicators.
propertyId
- a property IDdirection
- a sort order value (ascending/descending)
java.lang.IllegalStateException
- if container is not sortable (does not implement
Container.Sortable)
java.lang.IllegalArgumentException
- if trying to sort by non-existing propertypublic void clearSortOrder()
public void setSortOrder(java.util.List<SortOrder> order)
Note: Sorting by a property that has no column in Grid will hide all possible sorting indicators.
order
- a sort order list.
java.lang.IllegalStateException
- if container is not sortable (does not implement
Container.Sortable)
java.lang.IllegalArgumentException
- if order is null or trying to sort by non-existing propertypublic java.util.List<SortOrder> getSortOrder()
public void addSortListener(SortEvent.SortListener listener)
addSortListener
in interface SortEvent.SortNotifier
listener
- the sort order change listener to addpublic void removeSortListener(SortEvent.SortListener listener)
#addSortListener(SortListener)
.
removeSortListener
in interface SortEvent.SortNotifier
listener
- the sort order change listener to removeprotected Grid.Header getHeader()
public Grid.HeaderRow getHeaderRow(int rowIndex)
rowIndex
- 0 based index for row. Counted from top to bottom
java.lang.IllegalArgumentException
- if no row exists at given indexpublic Grid.HeaderRow addHeaderRowAt(int index)
index
- the position at which to insert the row
java.lang.IllegalArgumentException
- if the index is less than 0 or greater than row countappendHeaderRow()
,
prependHeaderRow()
,
removeHeaderRow(HeaderRow)
,
removeHeaderRow(int)
public Grid.HeaderRow appendHeaderRow()
prependHeaderRow()
,
addHeaderRowAt(int)
,
removeHeaderRow(HeaderRow)
,
removeHeaderRow(int)
public Grid.HeaderRow getDefaultHeaderRow()
public int getHeaderRowCount()
public Grid.HeaderRow prependHeaderRow()
appendHeaderRow()
,
addHeaderRowAt(int)
,
removeHeaderRow(HeaderRow)
,
removeHeaderRow(int)
public void removeHeaderRow(Grid.HeaderRow row)
row
- the row to be removed
java.lang.IllegalArgumentException
- if the row does not exist in this sectionremoveHeaderRow(int)
,
addHeaderRowAt(int)
,
appendHeaderRow()
,
prependHeaderRow()
public void removeHeaderRow(int rowIndex)
index
- the position of the row
java.lang.IllegalArgumentException
- if no row exists at given indexremoveHeaderRow(HeaderRow)
,
addHeaderRowAt(int)
,
appendHeaderRow()
,
prependHeaderRow()
public void setDefaultHeaderRow(Grid.HeaderRow row)
row
- the new default row, or null for no default row
java.lang.IllegalArgumentException
- header does not contain the rowpublic void setHeaderVisible(boolean visible)
visible
- true to show header section, false to hidepublic boolean isHeaderVisible()
protected Grid.Footer getFooter()
public Grid.FooterRow getFooterRow(int rowIndex)
rowIndex
- 0 based index for row. Counted from top to bottom
java.lang.IllegalArgumentException
- if no row exists at given indexpublic Grid.FooterRow addFooterRowAt(int index)
index
- the position at which to insert the row
java.lang.IllegalArgumentException
- if the index is less than 0 or greater than row countappendFooterRow()
,
prependFooterRow()
,
removeFooterRow(FooterRow)
,
removeFooterRow(int)
public Grid.FooterRow appendFooterRow()
prependFooterRow()
,
addFooterRowAt(int)
,
removeFooterRow(FooterRow)
,
removeFooterRow(int)
public int getFooterRowCount()
public Grid.FooterRow prependFooterRow()
appendFooterRow()
,
addFooterRowAt(int)
,
removeFooterRow(FooterRow)
,
removeFooterRow(int)
public void removeFooterRow(Grid.FooterRow row)
row
- the row to be removed
java.lang.IllegalArgumentException
- if the row does not exist in this sectionremoveFooterRow(int)
,
addFooterRowAt(int)
,
appendFooterRow()
,
prependFooterRow()
public void removeFooterRow(int rowIndex)
index
- the position of the row
java.lang.IllegalArgumentException
- if no row exists at given indexremoveFooterRow(FooterRow)
,
addFooterRowAt(int)
,
appendFooterRow()
,
prependFooterRow()
public void setFooterVisible(boolean visible)
visible
- true to show footer section, false to hidepublic boolean isFooterVisible()
public java.util.Iterator<Component> iterator()
HasComponents
iterator
in interface HasComponents
iterator
in interface java.lang.Iterable<Component>
public boolean isRendered(Component childComponent)
SelectiveRenderer
This method can only prevent updates from reaching the client, not force child components to reach the client. If the child is set to visible, returning false will prevent the child from being sent to the client. If a child is set to invisible, this method has no effect.
isRendered
in interface SelectiveRenderer
childComponent
- The child component to check
public void setCellStyleGenerator(Grid.CellStyleGenerator cellStyleGenerator)
cellStyleGenerator
- the cell style generator to set, or null
to
remove a previously set generatorpublic Grid.CellStyleGenerator getCellStyleGenerator()
null
if no generator is
setpublic void setRowStyleGenerator(Grid.RowStyleGenerator rowStyleGenerator)
rowStyleGenerator
- the row style generator to set, or null
to remove
a previously set generatorpublic Grid.RowStyleGenerator getRowStyleGenerator()
null
if no generator is
setpublic java.lang.Object addRow(java.lang.Object... values)
Please note that it's generally only safe to use this method during
initialization. After Grid has been initialized and the visible column
order might have been changed, it's better to instead add items directly
to the underlying container and use Item.getItemProperty(Object)
to make sure each value is assigned to the intended property.
values
- the cell values of the new row, in the same order as the
visible column order, not null
.
java.lang.IllegalArgumentException
- if values is null
java.lang.IllegalArgumentException
- if its length does not match the number of visible columns
java.lang.IllegalArgumentException
- if a parameter value is not an instance of the corresponding
property type
java.lang.UnsupportedOperationException
- if the container does not support adding new itemspublic void setEditorEnabled(boolean isEnabled) throws java.lang.IllegalStateException
editItem(Object)
method.
isEnabled
- true
to enable the feature, false
otherwise
java.lang.IllegalStateException
- if an item is currently being editedgetEditedItemId()
public boolean isEditorEnabled()
true
iff the editor is enabled for this gridsetEditorEnabled(boolean)
,
getEditedItemId()
public java.lang.Object getEditedItemId()
null
if no item is being edited at the momentpublic FieldGroup getEditorFieldGroup()
public void setEditorFieldGroup(FieldGroup fieldGroup)
fieldGroup
- the backing field group
java.lang.IllegalStateException
- if the editor is currently activepublic boolean isEditorActive()
public void editItem(java.lang.Object itemId) throws java.lang.IllegalStateException, java.lang.IllegalArgumentException
itemId
- the id of the item to edit
java.lang.IllegalStateException
- if the editor is not enabled or already editing an item
java.lang.IllegalArgumentException
- if the itemId
is not in the backing containersetEditorEnabled(boolean)
protected void doEditItem()
public void saveEditor() throws FieldGroup.CommitException
Note: This is a pass-through call to the backing field group.
FieldGroup.CommitException
- If the commit was abortedFieldGroup.commit()
public void cancelEditor()
protected void doCancelEditor()
public void setEditorFieldFactory(FieldGroupFieldFactory fieldFactory)
FieldGroup
. The field factory is
only used when FieldGroup
creates a new field.
Note: This is a pass-through call to the backing field group.
fieldFactory
- The field factory to usepublic void setEditorErrorHandler(Grid.EditorErrorHandler editorErrorHandler) throws java.lang.IllegalArgumentException
editorErrorHandler
- The editor error handler to use
java.lang.IllegalArgumentException
- if the error handler is nullpublic Grid.EditorErrorHandler getEditorErrorHandler()
AbstractClientConnector.setErrorHandler(com.vaadin.server.ErrorHandler)
public FieldGroupFieldFactory getEditorFieldFactory()
FieldGroup
. The field factory is
only used when FieldGroup
creates a new field.
Note: This is a pass-through call to the backing field group.
public void setEditorSaveCaption(java.lang.String saveCaption) throws java.lang.IllegalArgumentException
saveCaption
- the caption to set
java.lang.IllegalArgumentException
- if saveCaption
is null
public java.lang.String getEditorSaveCaption()
public void setEditorCancelCaption(java.lang.String cancelCaption) throws java.lang.IllegalArgumentException
cancelCaption
- the caption to set
java.lang.IllegalArgumentException
- if cancelCaption
is null
public java.lang.String getEditorCancelCaption()
public void addItemClickListener(ItemClickEvent.ItemClickListener listener)
ItemClickEvent.ItemClickNotifier
ItemClickEvent
s.
addItemClickListener
in interface ItemClickEvent.ItemClickNotifier
listener
- ItemClickListener to be registered@Deprecated public void addListener(ItemClickEvent.ItemClickListener listener)
addListener
in interface ItemClickEvent.ItemClickNotifier
public void removeItemClickListener(ItemClickEvent.ItemClickListener listener)
ItemClickEvent.ItemClickNotifier
removeItemClickListener
in interface ItemClickEvent.ItemClickNotifier
listener
- ItemClickListener to be removed@Deprecated public void removeListener(ItemClickEvent.ItemClickListener listener)
removeListener
in interface ItemClickEvent.ItemClickNotifier
public void recalculateColumnWidths()
In most cases Grid will know when column widths need to be recalculated but this method can be used to force recalculation in situations when grid does not recalculate automatically.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |