final TableLayout btbl = new TableLayout(bPanelSize);
final Container buttonPanel = new JPanel(btbl);
_excludePanel.add(buttonPanel, "3, 1, 3, 1");
final AbstractButton addButton = new JButton();
final Action action = new BrowseAction(_parent, "Add...", new ExtensionFileFilter(FindBugsUtil.XML_EXTENSIONS_SET), new BrowseActionCallback() {
@Override
public void addSelection(final File selectedFile) {
final String replacement = IdeaUtilImpl.collapsePathMacro(_parent.getProject(), selectedFile.getAbsolutePath());
//noinspection unchecked
((DefaultListModel) _excludeList.getModel()).addElement(replacement);
_preferences.getExcludeFilters().add(replacement);
_preferences.setModified(true);
}
});
addButton.setAction(action);
buttonPanel.add(addButton, "1, 1, 1, 1");
final AbstractButton removeButton = new JButton("Remove") {
@Override
public boolean isEnabled() {
return super.isEnabled() && _excludeList.getSelectedIndex() > -1;
}
};
removeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(final ActionEvent e) {
final int index = _excludeList.getSelectedIndex();
getModel(_excludeList).remove(index);
_preferences.removeExcludeFilter(index);