public AddEditExclusionDialog(Project project) {
super(project, false);
this.project = project;
setTitle("Add SonarLint File Exclusion");
init();
FileChooserDescriptor fileChooser = new FileChooserDescriptor(true, false, false,
true, false, false);
fileChooser.setRoots(project.getBaseDir());
fileTextField.addBrowseFolderListener("Select File to Exclude",
"Select the file which will be excluded from SonarLint analysis",
project, fileChooser);
FileChooserDescriptor directoryChooser = FileChooserDescriptorFactory.createSingleFolderDescriptor();
directoryChooser.setRoots(project.getBaseDir());
directoryTextField.addBrowseFolderListener("Select Directory to Exclude",
"Select the directory which will be excluded from SonarLint analysis",
project, directoryChooser);
DocumentListener docListener = new DocumentAdapter() {
protected void textChanged(final DocumentEvent e) {
updateOk();
}
};
fileTextField.getTextField().getDocument().addDocumentListener(docListener);
directoryTextField.getTextField().getDocument().addDocumentListener(docListener);
globTextField.getDocument().addDocumentListener(docListener);
ActionListener listener = e -> updateControls();
directoryRadioButton.addActionListener(listener);
globRadioButton.addActionListener(listener);
fileRadioButton.addActionListener(listener);
updateControls();
}