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: |
| * 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 |
| |
| |
| h2. Getting Started |
| {code} <ice:dataTable var="track" value="#{bean.tracks}"> |
| <ice:column headerText="Album"> |
| <h:outputText value="#{track.album}"/> |
| </ice:column> |
| </ice: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} |
| |
| {panel} |
| *sortBy* - Value expression defining the object this column will sort by. |
| {code:xml|borderStyle=dashed} <ice:column sortBy="#{track.album}"> |
| <h:outputText value="#{track.album}"/> |
| </ice: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}"> |
| <h:outputText value="#{track.album.name}"/> |
| </ice: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}" > |
| <h:outputText value="#{track.album}"/> |
| </ice: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}"> |
| <h:outputText value="#{track.album}"/> |
| </ice:column> |
| {code} |
| {panel} |
| |
| {panel} |
| *filterBy* - Value expression defining the object this column will filter by. |
| {code:xml|borderStyle=dashed} <ice:column filterBy="#{track.album}"> |
| <h:outputText value="#{track.album}"/> |
| </ice: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}"> |
| <h:outputText value="#{track.album}"/> |
| </ice:column> |
| {code} |
| {panel} |
| |
| {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>() {{ |
| 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}"> |
| <h:outputText value="#{track.album}"/> |
| </ice: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"> |
| <h:outputText value="#{track.album}"/> |
| </ice: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"> |
| Track |
| </ice:column> |
| <ice:column rowSpan="2"> |
| Download |
| </ice:column> |
| </ice:row> |
| <ice:row> |
| <ice:column> |
| Artist |
| </ice:column> |
| <ice:column> |
| Album |
| </ice:column> |
| </ice:row> |
| </ice: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"> |
| Track |
| </ice:column> |
| </ice:row> |
| <ice:row> |
| <ice:column> |
| Artist |
| </ice:column> |
| <ice:column> |
| Album |
| </ice:column> |
| </ice:row> |
| </ice:columnGroup> |
| {code} |
| {panel} |
| |
| {panel} |
| *headerText* - A plain text header with less effort than adding a facet. |
| {code:xml|borderStyle=dashed} <ice:column headerText="Album"> |
| <h:outputText value="#{track.album}"/> |
| </ice: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} |
| |
| {panel} |
| | _TableConfigPanel_ - |
| | [_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. Keyboard Support |
| |
| h2. Known Issues |
| |
| h2. Other Resources |
| |
| {anchor:related} |
| h2. Related Components |
| * _[DataTable|DataTable]_ |
| * _[ColumnGroup|ColumnGroup]_ |
| * _[CellEditor|CellEditor]_ |
| * _[Row|Row]_ |
| * _[RowEditor|RowEditor]_ |
| * _[ExpansionToggler|ExpansionToggler]_ |
| * _[TableConfigPanel|TableConfigPanel]_ |
| * _[DataExporter|DataExporter]_ |