private void filterLeaf(OpendapLeaf leaf) { if ( (!useDatasetNameFilter.isSelected() || datasetNameFilter.accept(leaf)) && (!useTimeRangeFilter.isSelected() || timeRangeFilter.accept(leaf)) && (!useRegionFilter.isSelected() || regionFilter.accept(leaf)) && (!useVariableFilter.isSelected() || variableFilter.accept(leaf))) { catalogTree.setLeafVisible(leaf, true); } else { catalogTree.setLeafVisible(leaf, false); } }
final JComponent datasetNameFilterUI = datasetNameFilter.getUI(); final JComponent timeRangeFilterUI = timeRangeFilter.getUI(); final JComponent regionFilterUI = regionFilter.getUI(); final JComponent variableFilterUI = variableFilter.getUI(); GridBagUtils.addToPanel(filterPanel, new TitledPanel(useDatasetNameFilter, datasetNameFilterUI, true, true), gbc, "gridx=0,gridy=0,anchor=NORTHWEST,weightx=1,weighty=0,,fill=BOTH");
datasetNameFilter.addFilterChangeListener(filterChangeListener); timeRangeFilter = new TimeRangeFilter(useTimeRangeFilter); timeRangeFilter.addFilterChangeListener(filterChangeListener); regionFilter = new RegionFilter(useRegionFilter); regionFilter.addFilterChangeListener(filterChangeListener); variableFilter = new VariableFilter(useVariableFilter, catalogTree); variableFilter.addFilterChangeListener(filterChangeListener);