Bug 307163 DBCS3.6: Resource Filter UI didn't restore grouped filters
Build Identifier: I20100313-1044 When reopening Resource Filters property editor after adding several filters under either of top-level AND/OR/NOT group, none of children in such top-level group filter is shown while settings are actually persisted in .project. Reproducible: Always Steps to Reproduce: 1. Create a project and add some files and folders. 2. Add resource filters to the project or the folder just created, and filters are grouped by AND/OR/NOT. 3. Ensure filters are active for exiting resources under the project. 4. Reopen "Resource Fileters" property editor 5. Verify the filters added in Step 2 are restored. Problem: None of child filters under top-level AND/OR/NOT group is shown Expected: All nested child filters under top-level AND/OR/NOT group are totally shown. Note that persistent entries for all filters are actually existing in a .project file.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/ResourceFilterGroup.java
excludeButton.addSelectionListener(new SelectionListener() {
			public void widgetDefaultSelected(SelectionEvent e) {
			}
			public void widgetSelected(SelectionEvent e) {
				FilterTypeUtil.setValue(filter, FilterTypeUtil.MODE,
						new Integer(1));
			}
		});
		excludeButton.setSelection(((Integer) FilterTypeUtil.getValue(
				filter, FilterTypeUtil.MODE)).intValue() == 1);
		createInheritableArea(font, modeComposite);
	}
	/**
	 * @param font
	 * @param composite
	 * @return the group
	 */
	private Group createGroup(Font font, Composite composite, String text,
			boolean grabExcessVerticalSpace) {
		GridLayout layout;
		GridData data;
		Group modeComposite = new Group(composite, SWT.NONE);
		modeComposite.setText(text);
		layout = new GridLayout();
		layout.numColumns = 1;
		layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
		layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
		layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
		layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
		modeComposite.setLayout(layout);