public SettingsEditorPanel(ITemplatePersistentConfiguration configuration) { myConfiguration = configuration; myEditor = (SettingsEditorEx<ITemplatePersistentConfiguration>) myConfiguration.getEditorEx(); myListener = new SettingsEditorListener() { @Override public void stateChanged(SettingsEditor editor) { setModified(true); } }; myEditor.addSettingsEditorListener(myListener); myMainPanel = new JPanel(new BorderLayout()); myErrorLabel = new JLabel(); myErrorLabel.setForeground(Color.red); myMainPanel.add(myEditor.getComponent(), BorderLayout.NORTH); myMainPanel.add(myErrorLabel, BorderLayout.SOUTH); updateUi(); }