changes.
| h2. Overview |
|  | |
| The _ace:Column_ renders a HTML td element representing a single column of data in the rows of the iterating parent DataTable. |
| |
 |  | Features of the column and interacting components include: |
| | Features of the column and interacting components include: |
| * Row Editing |
| * Row Panel Expansion |
| * Row Sub-row Expansion |
| * Filtering |
| * Sorting |
| * Column Visibility |
| * Column Stacking |
| * Column Configuration Panel |
| * Edit and Filter Event Listeners |
| * Column, Row Spanning Headers & Footers |
 |  | * Optional Application-bound State |
| ** Filtering |
| ** Sorting |
| | * Optional Application-bound State |
| ** Filtering |
| ** Sorting |
| |
| |
| h2. Getting Started |
 |  | {code} <ice:dataTable var="track" value="#{bean.tracks}"> |
| <ice:column headerText="Album"> |
| | {code} |
| <ace:dataTable var="track" value="#{bean.tracks}"> |
| <ace:column headerText="Album"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| </ice:dataTable> |
| | </ace:column> |
| </ace:dataTable> |
| {code} |
| |
| |
| |
| |
 |  | |
| h2. Attributes |
 |  | {tip:title=TagLib Documentation}This section covers attributes involved in the typical use-cases for this component. For reference, the complete taglib documentation for this component is available [here|http://www.icefaces.org/docs/v3_latest/ace/tld/ace/sliderEntry.html].{tip} |
| |
| | {tip:title=TagLib Documentation}This section covers attributes involved in the typical use-cases for this component. For reference, the complete taglib documentation for this component is available [here|http://www.icefaces.org/docs/v3_latest/ace/tld/ace/sliderEntry.html].{tip} |
| {panel} |
 |  | *sortBy* - Value expression defining the object this column will sort by. |
| {code:xml|borderStyle=dashed} <ice:column sortBy="#{track.album}"> |
| | *sortBy* \- Value expression defining the object this column will sort by. |
| {code:xml|borderStyle=dashed} <ace:column sortBy="#{track.album}"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *sortFunction* - Value expression for a Comparator<Object> that will be used to sort the objects referred to by *sortBy*. If this property is not defined, it is assumed that the objects referred to by *sortBy* implement the Comparable interface. |
| {code:xml|borderStyle=dashed} <ice:column sortBy="#{track.album}" sortFunction="#{bean.albumCustomSortFunction}"> |
| | *sortFunction* \- Value expression for a Comparator<Object> that will be used to sort the objects referred to by *sortBy*. If this property is not defined, it is assumed that the objects referred to by *sortBy* implement the Comparable interface. |
| {code:xml|borderStyle=dashed} <ace:column sortBy="#{track.album}" sortFunction="#{bean.albumCustomSortFunction}"> |
| <h:outputText value="#{track.album.name}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
 |  | {panel} |
| |
| {panel} |
 |  | *sortPriority* - Priority of this column among columns of a multi-column sort, starting at 1. Available for binding in situations of application initated or application persisted sorted states. Having a non-null priority enables sorting for this column when applyFilters() is called on the DataTable. |
| {code:xml|borderStyle=dashed} <ice:column sortBy="#{track.album}" sortPriority="#{bean.albumSortPriority}" > |
| | {panel} |
| *sortPriority* \- Priority of this column among columns of a multi-column sort, starting at 1. Available for binding in situations of application initated or application persisted sorted states. Having a non-null priority enables sorting for this column when applyFilters() is called on the DataTable. |
| {code:xml|borderStyle=dashed} <ace:column sortBy="#{track.album}" sortPriority="#{bean.albumSortPriority}" > |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *sortAscending* - Boolean value indicating if this sorted (as indicated by a set *sortPriority*) column is ascending. |
| {code:xml|borderStyle=dashed} <ice:column sortBy="#{track.album}" sortAscending="#{bean.albumSortAscending}"> |
| | *sortAscending* \- Boolean value indicating if this sorted (as indicated by a set *sortPriority*) column is ascending. |
| {code:xml|borderStyle=dashed} <ace:column sortBy="#{track.album}" sortAscending="#{bean.albumSortAscending}"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *filterBy* - Value expression defining the object this column will filter by. |
| {code:xml|borderStyle=dashed} <ice:column filterBy="#{track.album}"> |
| | *filterBy* \- Value expression defining the object this column will filter by. |
| {code:xml|borderStyle=dashed} <ace:column filterBy="#{track.album}"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *filterValue* - Value of the filter input field. The input that will be used to filter the objects defined by *filterBy*. |
| {code:xml|borderStyle=dashed} <ice:column filterBy="#{track.album}" filterValue="#{bean.albumFilterInput}"> |
| | *filterValue* \- Value of the filter input field. The input that will be used to filter the objects defined by *filterBy*. |
| {code:xml|borderStyle=dashed} <ace:column filterBy="#{track.album}" filterValue="#{bean.albumFilterInput}"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
 |  | {panel} |
| |
| {panel} |
 |  | *filterOptions* - A collection of SelectItem objects for use as filter choices. |
| | {panel} |
| *filterOptions* \- A collection of SelectItem objects for use as filter choices. |
| Managed Bean: |
 |  | {code:java|borderStyle=dashed} |
| public List<SelectItem> filterOptions = new ArrayList<SelectItem>() {{ |
| | {code:java|borderStyle=dashed} public List<SelectItem> filterOptions = new ArrayList<SelectItem>() {{ |
| add(new SelectItem("Van")); |
| add(new SelectItem("Bus")); |
| add(new SelectItem("Compact")); |
| add(new SelectItem("Semi-Truck")); |
| add(new SelectItem("Pickup")); |
 |  | }}; |
| | }}; |
| {code} |
| Facelet Markup: |
 |  | {code:xml|borderStyle=dashed} <ice:column filterBy="#{track.albumn}" filterOptions="#{bean.filterOptions}"> |
| | {code:xml|borderStyle=dashed} <ace:column filterBy="#{track.albumn}" filterOptions="#{bean.filterOptions}"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *filterMatchMode* - Method of String comparison used to evaluate the filter, types available include: "contains", "exact", "startsWith", "endsWith". Defaults to "startsWith". |
| {code:xml|borderStyle=dashed} <ice:column filterBy="#{track.albumn}" filterMatchMode="exact"> |
| | *filterMatchMode* \- Method of String comparison used to evaluate the filter, types available include: "contains", "exact", "startsWith", "endsWith". Defaults to "startsWith". |
| {code:xml|borderStyle=dashed} <ace:column filterBy="#{track.albumn}" filterMatchMode="exact"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *rowspan* - Defines the number of Row objects this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component. |
| {code:xml|borderStyle=dashed} <ice:columnGroup type="header"> |
| <ice:row> |
| <ice:column colSpan="2"> |
| | *rowspan* \- Defines the number of Row objects this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component. |
| {code:xml|borderStyle=dashed} <ace:columnGroup type="header"> |
| <ace:row> |
| <ace:column colSpan="2"> |
| Track |
 |  | </ice:column> |
| <ice:column rowSpan="2"> |
| | </ace:column> |
| <ace:column rowSpan="2"> |
| Download |
 |  | </ice:column> |
| </ice:row> |
| <ice:row> |
| <ice:column> |
| | </ace:column> |
| </ace:row> |
| <ace:row> |
| <ace:column> |
| Artist |
 |  | </ice:column> |
| <ice:column> |
| | </ace:column> |
| <ace:column> |
| Album |
 |  | </ice:column> |
| </ice:row> |
| </ice:columnGroup> |
| | </ace:column> |
| </ace:row> |
| </ace:columnGroup> |
| {code} |
| {panel} |
 |  | |
| {panel} |
 |  | *colspan* - Defines the number of TD elements this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component. |
| {code:xml|borderStyle=dashed} <ice:columnGroup type="header"> |
| <ice:row> |
| <ice:column colSpan="2"> |
| | *colspan* \- Defines the number of TD elements this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component. |
| {code:xml|borderStyle=dashed} <ace:columnGroup type="header"> |
| <ace:row> |
| <ace:column colSpan="2"> |
| Track |
 |  | </ice:column> |
| </ice:row> |
| <ice:row> |
| <ice:column> |
| | </ace:column> |
| </ace:row> |
| <ace:row> |
| <ace:column> |
| Artist |
 |  | </ice:column> |
| <ice:column> |
| | </ace:column> |
| <ace:column> |
| Album |
 |  | </ice:column> |
| </ice:row> |
| </ice:columnGroup> |
| | </ace:column> |
| </ace:row> |
| </ace:columnGroup> |
| {code} |
 |  | {panel} |
| |
| {panel} |
 |  | *headerText* - A plain text header with less effort than adding a facet. |
| {code:xml|borderStyle=dashed} <ice:column headerText="Album"> |
| | {panel} |
| *headerText* \- A plain text header with less effort than adding a facet. |
| {code:xml|borderStyle=dashed} <ace:column headerText="Album"> |
| <h:outputText value="#{track.album}"/> |
 |  | </ice:column> |
| | </ace:column> |
| {code} |
| {panel} |
 |  | |
| |
 |  | {info:title=Component Documentation}This section covers components signifigant to the conventional row selection / pagination / expandable panel sample above. For further reference on the features listed in the overview, see the [related components section|DataTable#related], the [section related to lazy loading|DataTable#lazy] and the [complete taglib|http://www.icefaces.org/docs/v2_latest/ace/tld/ace/dataTable.html] & [API] documentation for this component.{info} |
| |
| | {info:title=Component Documentation}This section covers components signifigant to the conventional row selection / pagination / expandable panel sample above. For further reference on the features listed in the overview, see the [related components section|DataTable#related], the [section related to lazy loading|DataTable#lazy] and the [complete taglib|http://www.icefaces.org/docs/v2_latest/ace/tld/ace/dataTable.html] & [API] documentation for this component.{info} |
| {panel} |
 |  | [_TableConfigPanel_|TableConfigPanel] - Renders a panel allowing the configuration of Column features, like visibility, filtering, sorting and column order in a single compact control. |
| {panel} |
| | [_TableConfigPanel_|TableConfigPanel] \- Renders a panel allowing the configuration of Column features, like visibility, filtering, sorting and column order in a single compact control. |
| {panel} |
| h2. Known Issues |
| |
 |  | h2. Known Issues |
| |
| {anchor:related} |
 |  | h2. Related Components |
| | |
| h2. Related Components |
| |
| * _[DataTable|DataTable]_ |
| * _[ColumnGroup|ColumnGroup]_ |
 |  | * _[CellEditor|CellEditor]_ |
| | * _[CellEditor|CellEditor]_ |
| * _[Row|Row]_ |
 | | * _[RowEditor|RowEditor]_ |
| | * _[RowEditor|RowEditor]_ |
| * _[ExpansionToggler|ExpansionToggler]_ |
| * _[TableConfigPanel|TableConfigPanel]_ |
| * _[DataExporter|DataExporter]_ |