Community
Participate
Working Groups
Improve the usability of org.eclipse.ui.dialogs.ListSelectionDialog (which is used e.g. in the "Save Resources" dialog: see bug 572939) and extend its API in the following ways: (a) Enabling/Disabling of the "Select All" and the "Deselect All" buttons Actual: Both buttons are always enabled. Expected: - When all elements are selected, the "Select All" button should be disabled, otherwise enabled. - When no elements are selected, the "Deselect All" button should be disabled, otherwise enabled. (b) Shorten button labels: "Select All" => "All" and "Deselect All" => "None" Shortening labels is a tradeoff between better readability (shorter and more distinguishable) and that button labels should be verbs. The shortening leads to the following new mnemonics: - Alt+S for "Select All" => Alt+A for "All" - Alt+D for "Deselect All" => Alt+N for "None" (c) Extend API The class is marked as "@noextend This class is not intended to be subclassed by clients.", but internally, it is extended several times for different purposes. The goal is that subclassing should no longer be necessary for customizations, to achieve more consistency and avoid duplicate code, and to give clients the same capabilities as the dialogs used internally. The extended API should provide following additional possibilities: - Dialog title: to avoid that it will be missed, even the title can also be set via setTitle() - OK button label: - When nothing is selected: For example, "Launch without Saving" - When one or more elements are selected: With {0} as placeholder for the current selected elements and with {1} for the total number of elements; for example, "Save {0} of {1} and Launch" - Whether the dialog can be canceled (via Cancel button or by closing the dialog window) - Whether to use SWT#SHEET (modal dialog that is attached to a parent window) - Optional checkbox: - Label - Default value The existing constructor should be marked as deprecated in favor of the new API.
New Gerrit change created: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/179930
Gerrit change https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/179930 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=edd61880f7b9eafeb2a1d4b8693049687a646ab3
Thanks Holger for this contribution and Marcus for the review. Holger, please add to N&N. Please also create bug for using this new API in platform code and update the Gerrit for Bug 572939.
New Gerrit change created: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/183549
(In reply to Eclipse Genie from comment #4) > New Gerrit change created: > https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/183549 Reopening. Lars, please review.
Gerrit change https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/183549 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=00a6d0f37629bd54561a487668d6658bcad318e4
https://download.eclipse.org/eclipse/downloads/drops4/I20210730-1800/compilelogs/platform.doc.isv.javadoc.txt ../../../eclipse.platform.ui/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/dialogs/ListSelectionDialog.java:482: error: reference not found * @see #ListSelectionDialog(Shell, Object, IStructuredContentProvider, ^ 1 error
New Gerrit change created: https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/183564
Gerrit change https://git.eclipse.org/r/c/platform/eclipse.platform.ui/+/183564 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=91249f432c070c87710d88f65ca270e6401692cb