org.openstreetmap.josm.gui
Class HelpAwareOptionPane

java.lang.Object
  extended by org.openstreetmap.josm.gui.HelpAwareOptionPane

public class HelpAwareOptionPane
extends java.lang.Object


Nested Class Summary
static class HelpAwareOptionPane.ButtonSpec
           
private static class HelpAwareOptionPane.DefaultAction
           
 
Constructor Summary
HelpAwareOptionPane()
           
 
Method Summary
private static javax.swing.JButton createHelpButton(java.lang.String helpTopic)
          Creates the help button
private static java.util.List<javax.swing.JButton> createOptionButtons(HelpAwareOptionPane.ButtonSpec[] options, java.lang.String helpTopic)
          Creates the list buttons to be displayed in the option pane dialog.
static void showMessageDialogInEDT(java.awt.Component parentComponent, java.lang.Object msg, java.lang.String title, int messageType, java.lang.String helpTopic)
          Run it in Event Dispatch Thread.
static int showOptionDialog(java.awt.Component parentComponent, java.lang.Object msg, java.lang.String title, int messageType, javax.swing.Icon icon, HelpAwareOptionPane.ButtonSpec[] options, HelpAwareOptionPane.ButtonSpec defaultOption, java.lang.String helpTopic)
          Displays an option dialog which is aware of a help context.
static int showOptionDialog(java.awt.Component parentComponent, java.lang.Object msg, java.lang.String title, int messageType, java.lang.String helpTopic)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HelpAwareOptionPane

public HelpAwareOptionPane()
Method Detail

createOptionButtons

private static java.util.List<javax.swing.JButton> createOptionButtons(HelpAwareOptionPane.ButtonSpec[] options,
                                                                       java.lang.String helpTopic)
Creates the list buttons to be displayed in the option pane dialog.

Parameters:
options - the option. If null, just creates an OK button and a help button
helpTopic - the help topic. The context sensitive help of all buttons is equal to the context sensitive help of the whole dialog
Returns:
the list of buttons

createHelpButton

private static javax.swing.JButton createHelpButton(java.lang.String helpTopic)
Creates the help button

Parameters:
helpTopic - the help topic
Returns:
the help button

showOptionDialog

public static int showOptionDialog(java.awt.Component parentComponent,
                                   java.lang.Object msg,
                                   java.lang.String title,
                                   int messageType,
                                   javax.swing.Icon icon,
                                   HelpAwareOptionPane.ButtonSpec[] options,
                                   HelpAwareOptionPane.ButtonSpec defaultOption,
                                   java.lang.String helpTopic)
Displays an option dialog which is aware of a help context. If helpTopic isn't null, the dialog includes a "Help" button and launches the help browser if the user presses F1. If the user clicks on the "Help" button the option dialog remains open and JOSM launches the help browser. helpTopic is the trailing part of a JOSM online help URL, i.e. the part after the leading http://josm.openstreetmap.de/wiki/Help. It should start with a leading '/' and it may include an anchor after a '#'. Examples In addition, the option buttons display JOSM icons, similar to ExtendedDialog.

Parameters:
parentComponent - the parent component
msg - the message
title - the title
messageType - the message type (see JOptionPane)
icon - the icon to display. Can be null.
options - the list of options to display. Can be null.
defaultOption - the default option. Can be null.
helpTopic - the help topic. Can be null.
Returns:
the index of the selected option or JOptionPane.CLOSED_OPTION

showOptionDialog

public static int showOptionDialog(java.awt.Component parentComponent,
                                   java.lang.Object msg,
                                   java.lang.String title,
                                   int messageType,
                                   java.lang.String helpTopic)
Parameters:
parentComponent -
msg -
title -
messageType -
helpTopic -
Returns:
See Also:
showOptionDialog(Component, Object, String, int, Icon, ButtonSpec[], ButtonSpec, String)

showMessageDialogInEDT

public static void showMessageDialogInEDT(java.awt.Component parentComponent,
                                          java.lang.Object msg,
                                          java.lang.String title,
                                          int messageType,
                                          java.lang.String helpTopic)
Run it in Event Dispatch Thread. This version does not return anything, so it is more like showMessageDialog. It can be used, when you need to show a message dialog from a worker thread, e.g. from PleaseWaitRunnable



JOSM