Bug 126155 [Markers] Issues of multi quick fix dialog
I20060131-1200 Here are a few things to improve in the multi quickfix dialog (problems view -> Quick fix on a missing SUID problem) - Description of the dialog ("Select the fix for...") should put the problem message in quotes to make it more readable. - What about an icon in the title area? We have not other dialogs like this which do not show an icon in the title area. - Either use "resolution" or "fix" as term for the offered proposal. I'd suggest to use fix (e.g. in "Select a resolution:") - Perhaps "Add Matching Problems" is not that clear. It is more something like searching for similar problems which can be fixed the same way, e.g. "Find similar problems" - The progress message which appears when clicking on "Add Matching Problems" ("Calculating Possible Resolutions working on...") should better rephrased to "Searching for similar problems..." - After having clicked on "Add Matching Problems", this button gets disabled. As soon as the selection is changed, it is reenabled again. I suggest to enable this button once for a specific fix to let the user find similar problems, and cache the results.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/MarkerResolutionDialog.java
addMatching = new Button(buttonComposite, SWT.PUSH);
		addMatching.setText(MarkerMessages.MarkerResolutionDialog_AddOthers);
		addMatching
				.setLayoutData(new GridData(SWT.FILL, SWT.NONE, false, false));
		addMatching.setEnabled(getMatchingButtonEnablement());
		addMatching.addSelectionListener(new SelectionAdapter() {
			/*
			 * (non-Javadoc)
			 * 
			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
			 */
			public void widgetSelected(SelectionEvent arg0) {
				WorkbenchMarkerResolution selected = getSelectedWorkbenchResolution();
				if (selected == null) {
					return;
				}
				if (addMatchingMarkers(selected)) {
					addMatching.setEnabled(false);
				}
			}
		});
		return buttonComposite;
	}
	/**
	 * Return the single selected WorkbenchMarkerResolution if there is one.
	 * 
	 * @return WorkbenchMarkerResolution or <code>null</code> if there is no
	 *         selection or the selection is not a WorkbenchMarkerResolution.
	 */
	private WorkbenchMarkerResolution getSelectedWorkbenchResolution() {