Details
-
Type:
Improvement
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 4.0.BETA, EE-3.3.0.GA_P02
-
Fix Version/s: 4.3
-
Component/s: ACE-Components
-
Labels:None
-
Environment:ACE DataTable, header ColumnGroup, Column
Description
There are cases with ICE-9471 where there is no direct way to infer which header column corresponds to a specific body column, from which to inherit properties, and we should add a property to the body column to explicitly declare its corresponding header column.
Issue Links
- blocks
-
ICE-9471 ace:tableConfigPanel - Add built in support for ace:columnGroup
-
- Closed
-
The complete nature of the problem is discussed in "Phase 2 Plan.rtf" and illustrated in "Phase 2 cases.jpg".
On the branch, in revision 39065, I committed changes to the showcase application that improve its use as a demo of lazy loading, and how that would integrate with sorting and filtering. That would benefit from being merged to trunk. It also gives everything necessary for taking the attached "dataTableLazyLoading.xhtml" and putting that into:
icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/dataTable/dataTableLazyLoading.xhtml
In "dataTableLazyLoading.xhtml.rtf" there is the main code from "dataTableLazyLoading.xhtml" that uses highlighting to show the 4 key parts of code that illustrate the mis-correspondence issue [where the header column for "Chassis" using grouping but the body column for Name mis-inherits the grouping], and how to use the new ace:dataTable columnsInheritProperties="false" to half fix it. It's not a full fix, because with mis-corresponded columns, one can't use the tableConfigPanel to re-order columns without corrupting the view. Only the for property fix would completely fix everything.