Bug 201664 [Markers] Problems view's "Show items of type" filter does not work correctly
The Problems view's "Show items of type" filter does not work correctly: 1. Open the Problems view. 2. Click the "Configure the filters to apply to this view" tool. 3. Under "Show items of type", click the "Deselect All" button. 4. Click the "OK" button to accept the changes and close the dialog. 5. Click the "Configure the filters to apply to this view" tool. 6. Under "Show items of type", click the "Select All" button. 7. Click the "OK" button to accept the changes and close the dialog. 8. Click the "Configure the filters to apply to this view" tool. 9. Notice that not all the items are checked. The following are NOT checked: [] Java Build Path Problems [] Build Path Problems [] JRE System Library Problems []Java Problems []Java Problem [] PDE Problems []PDE Problem
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/DialogMarkerFilter.java
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeColumn;
import org.eclipse.ui.IWorkingSet;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.IWorkingSetSelectionDialog;
/**
 * Dialog which allows user to modify all settings of an
 * org.eclipse.ui.views.MarkerFilter object. Not intended to be subclassed or
 * instantiated by clients.
 */
public abstract class DialogMarkerFilter extends TrayDialog {
	static final int SELECT_ALL_FILTERS_ID = IDialogConstants.CLIENT_ID + 4;
	static final int DESELECT_ALL_FILTERS_ID = IDialogConstants.CLIENT_ID + 5;
	/**
	 * button IDs
	 */
	static final int RESET_ID = IDialogConstants.CLIENT_ID;
	static final int SELECT_WORKING_SET_ID = IDialogConstants.CLIENT_ID + 1;
	static final int SELECT_ALL_ID = IDialogConstants.CLIENT_ID + 2;
	static final int DESELECT_ALL_ID = IDialogConstants.CLIENT_ID + 3;
	private class TypesLabelProvider extends LabelProvider implements