Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 408741

Summary: TableField, Organise Columns Form: Changing Visibility not working
Product: z_Archived Reporter: Matthias Zimmermann <zimmermann>
Component: ScoutAssignee: Oli Schmid <oliver.schmid>
Status: CLOSED FIXED QA Contact:
Severity: major    
Priority: P3 CC: ken.lee
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
See Also: https://git.eclipse.org/c/scout/org.eclipse.scout.rt.git/commit/?id=774be75145dacb6de2744b1a6563f142fdcc8efc
Whiteboard:
Bug Depends on:    
Bug Blocks: 396848    

Description Matthias Zimmermann CLA 2013-05-22 15:05:01 EDT
On the table header of the table field Scout provides an 'Organize Column' to specify the order, visibility, sorting ... of the columns.

Since M7 (M6?) it is no longer possible to hide columns for the end user. This wrong behaviour is the same for all UI technologies.
Comment 1 Ken Lee CLA 2013-05-28 13:31:13 EDT
There were changes made in bug 396848 which are responsible for the described behavior. A detailed analysis will follow soon.
Comment 2 Ken Lee CLA 2013-05-29 06:17:36 EDT
Analysis:
In bug 396848 the getValue() method of AbstractColumn was changed to return validated values from a cache (if available) instead of returning the actual value stored in the internal Cell datastructure of an ITableRow. This was done for validation reasons on editable tables.

However, the setValue() method was not changed, i.e. that the value was only stored in a so-called Cell datastructure but was not validated again and therefore wasn't put back into the cache. This results in the cache containing the same old validated value instead of the new one.

Applied to the problem description above that means that the validity cache is filled with the visibility value Boolean.TRUE initially when the OrganizeColumnsForm gets opened (because the column is visible at the beginning). If the column is set to invisible, the cache is not updated and therefore still contains the Boolean.TRUE value for the visibility property, causing the column to be displayed after closing the form.

Solution:
A possible implementation for the validation has been pushed to https://git.eclipse.org/r/#/c/13326/ but definitely needs a review by the initial contributor of the bug 396848.

I set the target milestone to RC3. However, depending on the review we might want to postpone this bugfix to SR1.
Comment 4 Ken Lee CLA 2013-06-05 07:32:33 EDT
@Oliver: Please verify
Comment 5 Matthias Zimmermann CLA 2013-07-08 17:25:38 EDT
Bug closed, shipped with 3.9.0 (Kepler)