in src/main/java/org/apache/log4j/chainsaw/ReceiverConfigurationPanel.java [500:566]
private JPanel buildUseExistingConfigurationPanel() {
existingConfigurationComboBoxModel = new DefaultComboBoxModel<>();
existingConfigurationComboBox = new JComboBox<>(existingConfigurationComboBoxModel);
existingConfigurationComboBox.setOpaque(false);
existingConfigurationComboBox.setToolTipText("Previously loaded configurations can be chosen here");
existingConfigurationComboBox.setEditable(true);
existingConfigurationComboBox.getEditor().getEditorComponent().addFocusListener(
new FocusListener() {
public void focusGained(FocusEvent e) {
selectAll();
}
private void selectAll() {
existingConfigurationComboBox.getEditor().selectAll();
}
public void focusLost(FocusEvent e) {
}
});
browseForAnExistingConfigurationButton = new JButton(new AbstractAction(" Open File... ") {
public void actionPerformed(ActionEvent e) {
try {
URL url = browseConfig();
if (url != null) {
existingConfigurationComboBoxModel.addElement(url.toExternalForm());
existingConfigurationComboBox.getModel().setSelectedItem(
url);
}
} catch (Exception ex) {
logger.error(
"Error browsing for Configuration file", ex);
}
}
});
browseForAnExistingConfigurationButton.setToolTipText(
"Shows a File Open dialog to allow you to find a configuration file");
JPanel panel = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.gridx = 0;
c.gridy = 0;
c.gridwidth = 2;
c.anchor = GridBagConstraints.LINE_START;
c.insets = new Insets(0, 0, 5, 0);
panel.add(browseForAnExistingConfigurationButton, c);
c = new GridBagConstraints();
c.gridx = 0;
c.gridy = 1;
c.insets = new Insets(0, 5, 0, 5);
panel.add(new JLabel(" Configuration file URL "), c);
c = new GridBagConstraints();
c.gridx = 1;
c.gridy = 1;
c.weightx = 0.5;
c.fill = GridBagConstraints.HORIZONTAL;
panel.add(existingConfigurationComboBox, c);
return panel;
}