forked from eclipse-platform/eclipse.platform.ui
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Limit based table and tree viewer implementation (eclipse-platform#818)
New org.eclipse.jface.viewers.ColumnViewer#setItemsLimit(int) API has been introduced. This API will limit the number of direct children rendered per parent by the viewers by introducing an intermediate IExpandableNode element which will then render a subset of original children and show more elements on demand (user click). This API is introduced to solve UI freezes caused by viewers when they try to render large number of items at a given level. The changes made for the new API should not affect any existing clients, because new behavior has to be explicitly enabled by using new ColumnViewer.setItemsLimit(int) API. For the clients using this new API the change should be mostly backwards compatible. Clients might need to adopt label provider and viewer code to make them safe for receiving IExpandableNode from viewer. Note: clients that extended (not allowed to be extended) TreeViewer should make sure that isExpandable() returns "false" for IExpandableNode. A new workbench preference is introduced to provide a default viewer limit suitable for most of the clients. Current default value for this limit is 10000. Clients that adopt new API can use this preference to configure their viewer by using new WorkbenchViewerSetup.setupViewer(ColumnViewer) API. Project Explorer, Outline, Markers, Problems and Search views has been adopted to the new API and use the new preference to show limited number of items. Package Explorer adoption for JDT follows in a separated commit. Fixes eclipse-platform#818
- Loading branch information
1 parent
e869f85
commit 0ec3d94
Showing
37 changed files
with
2,100 additions
and
32 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.