public static void showPreferencesDialog(String selectedPanel, EditorKit editorKit) {
PreferencesDialogPanel panel = new PreferencesDialogPanel(editorKit);
final Preferences prefs = PreferencesManager.getInstance().getApplicationPreferences(PreferencesDialogPanel.class);
if (selectedPanel == null){
selectedPanel = prefs.getString(PREFS_HISTORY_PANEL_KEY, null);
}
Component c = panel.scrollerMap.get(selectedPanel);
if (c != null) {
panel.tabbedPane.setSelectedComponent(c);
}
JOptionPane op = new JOptionPane(panel, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
JDialog dlg = op.createDialog(editorKit.getWorkspace(), "Preferences");
dlg.setResizable(true);
dlg.setVisible(true);
Object o = op.getValue();
if (o != null){
int ret = (Integer)o;
if (ret == JOptionPane.OK_OPTION) {
panel.applyPreferences();
}
}
prefs.putString(PREFS_HISTORY_PANEL_KEY, panel.getSelectedPanel());
panel.dispose();
}
}