}
});
viewMenu.add(rbMenuItem);
}
viewMenu.addSeparator();
final Filter suppressionFilter = MainFrame.getInstance().getProject().getSuppressionFilter();
Collection<Matcher> filters = suppressionFilter.getChildren();
JMenuItem filterMenu = new JMenuItem(filters.isEmpty() ? "Add Filters..." : "Filters...");
filterMenu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
PreferencesFrame preferenceFrame = PreferencesFrame.getInstance();
preferenceFrame.showFilterPane();
preferenceFrame.setLocationRelativeTo(mainFrame);
preferenceFrame.setVisible(true);
}
});
viewMenu.add(filterMenu);
for(final Matcher m : filters) {
JCheckBoxMenuItem f = new JCheckBoxMenuItem(m.toString(), suppressionFilter.isEnabled(m));
viewMenu.add(f);
f.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
boolean enabled = e.getStateChange() == ItemEvent.SELECTED;
suppressionFilter.setEnabled(m, enabled);
FilterActivity.notifyListeners(enabled ? Action.FILTERING : Action.UNFILTERING, null);
}
});