--
PedroRio - 20 Apr 2010
A
GridPanel is a XVW component that's used to display (in a tabular form) a list of items (provided by a data source). It provides built-in mechanisms to sort, group the data, etc. The items in a
GridPanel are paginated by default (50 items per page)
Items in the table can be selected and clicked which can in turn trigger specific actions (such as opening a new window when double clicking a given row in the table)
A
GridPanel should be used inside a Panel component.
XML Definition
A
GridPanel is declared as following:
<xvw:gridPanel
datasource="#{viewBean.dataSource}"
...
otherAttributes
...
>
</xvw:gridPanel>
Component from which the Grid Panel Extends
Components that Extend Grid Panel
GridPanel Properties
Property |
Description |
Requirement |
Default Value |
Type |
Example |
dataSource |
The list of items for the GridPanel |
required |
- |
netgest.bo.xwc.components.connectors.DataListConnector |
This property must be binded to the Bean and must return an implementation of the DataList connector. There are aready two default implementations. The XEOObjectListConnector and the XEOBridgeListConnector. |
autoExpandColumn |
The column that will auto expand to fill available space |
optional |
- |
String / EL |
autoExpandColumn='NAME_OF_COLUMN_IN_GRID_PANEL' |
pageSize |
The number of items that are listed in the table (next items are shown in a differente page) |
optional |
50 |
Integer |
pageSize='10' -> 10 items per page |
rowSelectionMode |
Determines how a user can select the rows in the grid panel. Default (ROW) allows the user to select a single row; (MULTI_ROW) allows the user to select multiple row and CELL disables row selection. Users select multiple lines with the Ctrl button |
optional |
ROW |
Enum (ROW, MULTI_ROW, CELL) |
rowSelectionMode='CELL' |
rowDblClickTarget |
The target for the action invoked when a row is double clicked |
optional |
tab |
Enum (self, tab, download, window) |
|
groupBy |
Groups the results by a given column |
optional |
- |
The name of a column of the GridPanel |
groupBy='NAME_OF_COLUMN_IN_GRID_PANEL' |
enableGroupBy |
Whether or not the results in this GridPanel can be grouped (only single column groups can be made at this point) |
optional |
false |
Boolean |
enableGroupBy='true' |
|
|
|
|
|
|
Possible Child Components:
- ColumnAttribute (to choose which columns should appear in the table)
- GridNavBar (to choose if a given number of options should be present in the bottom navigational bar of the GridPanel)
- ToolBar (Each GridPanel has a default toolbar wich can be overriden)
Property DataSource:
XEOObjectListConnector: The
XEOObjectListConnector receives a boObjectList as an argument of the contructor and can be used to incorporate any list of boObjects in the
GridPanel
XEOBridgeListConnector: The
XEOBridgeListConnector receives a bridgeHandler as an argument of the constructor and can be used to display a bridge of objects in the
GridPanel.
Example: Imagine that we want to display all instances of the system model "Ebo_Perf" in a given
GridPanel, the dataSource property of the Bean could be a method like this:
public DataListConnector getDataSource()
{
String boql = 'select Ebo_Perf';
boObjectList listOfUsers = boObjectList.list(getEboContext(), boql);
return new XEOObjectListConnector(listOfUsers);
}
To Continue: