Bug 169543 FilteredItemsSelectionDialog changes required by the JDT team.
Build ID: I20061214-1445 List of required changes: - Sorting now happens while searching; elements are continuously inserted what leads to a flickering view. It can happen that while you click on an entry, it moves away. In the old open type dialog, sorting was performed in the background and result where only the full result was shown, all sorted. Until then, only the history element were visible. When the full result was shown, you knew the best match immediately. I think the old behavior was superior and suggest to reimplement it. - The view menu should use sentence capitalization: * 'Show status line' -> 'Show Status Line' * 'Show container for duplicates' > 'Show Container for Duplicates' (JDT dialog only) - When the fitter box is empty, all history entries should be shown (currently no entries are shown) - In the old version we simply ignored the search for '*'. The idea is that it is rarely interesting but happens when user start typing for something like '*List', and we don't want to block. - Problem with the TypeNameMatches that do not exist. At the moment this is implemented in getResult, which looks like the wrong place. Best would be if a dialog is shown while the dialog is still open and that the dialog stays open if this happens. getResult can be called multiple times and also in a non-UI thread (both unlikely but possible). - add support for input field selection modes (selection modes of initial patterns) More information:
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/dialogs/FilteredResourcesSelectionDialog.java
FilteredItemsSelectionDialog {
	private static final String DIALOG_SETTINGS = "org.eclipse.ui.dialogs.FilteredResourcesSelectionDialog"; 
	private static final String WORKINGS_SET_SETTINGS = "WorkingSet"; 
	private static final String SHOW_DERIVED = "ShowDerived"; 
	private ShowDerivedResourcesAction showDerivedResourcesAction;
	private ResourceItemLabelProvider resourceItemLabelProvider;
	private ResourceItemDetailsLabelProvider resourceItemDetailsLabelProvider;
	private WorkingSetFilterActionGroup workingSetFilterActionGroup;
	private CustomWorkingSetFilter workingSetFilter = new CustomWorkingSetFilter();
	private String title;
	private IContainer container;
	private int typeMask;
	private boolean isDerived;
	/**
	 * Creates a new instance of the class
	 * 
	 * @param shell
	 *            the parent shell
	 * @param multi
	 *            the multi selection flag
	 * @param container