Package org.openstreetmap.josm.gui
Class Notification
- java.lang.Object
-
- org.openstreetmap.josm.gui.Notification
-
public class Notification extends Object
A Notification Message similar to a popup window, but without disrupting the user's workflow. Non-modal info panel that vanishes after a certain time. This class only holds the data for a notification,NotificationManager
is responsible for building the message panel and displaying it on screen. example:Notification note = new Notification("Hi there!"); note.setIcon(JOptionPane.INFORMATION_MESSAGE); // optional note.setDuration(Notification.TIME_SHORT); // optional note.show();
-
-
Field Summary
Fields Modifier and Type Field Description private Component
content
static int
DEFAULT_CONTENT_WIDTH
Default width of a notificationprivate int
duration
private String
helpTopic
private Icon
icon
static int
TIME_DEFAULT
Short message of one or two lines (5 s).static int
TIME_LONG
Somewhat longer message (10 s).static int
TIME_SHORT
Very short and very easy to grasp message (3 s).static int
TIME_VERY_LONG
Long text.
-
Constructor Summary
Constructors Constructor Description Notification()
Constructs a newNotification
without content.Notification(String msg)
Constructs a newNotification
with the given textual content.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
Component
getContent()
Gets the content component to use.private Object
getContentTextOrComponent()
int
getDuration()
Gets the time the notification should be displayedString
getHelpTopic()
Gets the help topic for this notificationIcon
getIcon()
Gets the icon that should be displayed next to the notificationint
hashCode()
void
replaceExisting(Notification oldNotification)
Display the notification by replacing the given queued/displaying notificationNotification
setContent(Component content)
Set the content of the message.Notification
setContent(String msg)
Set the notification text.Notification
setDuration(int duration)
Set the time after which the message is hidden.Notification
setHelpTopic(String helpTopic)
Display a help button at the bottom of the notification window.Notification
setIcon(int messageType)
Set an icon to display on the left part of the message window by choosing from the default JOptionPane icons.Notification
setIcon(Icon icon)
Set an icon to display on the left part of the message window.void
show()
Display the notification.String
toString()
-
-
-
Field Detail
-
DEFAULT_CONTENT_WIDTH
public static final int DEFAULT_CONTENT_WIDTH
Default width of a notification- See Also:
- Constant Field Values
-
TIME_SHORT
public static final int TIME_SHORT
Very short and very easy to grasp message (3 s). E.g. "Please select at least one node".
-
TIME_DEFAULT
public static final int TIME_DEFAULT
Short message of one or two lines (5 s).
-
TIME_LONG
public static final int TIME_LONG
Somewhat longer message (10 s).
-
TIME_VERY_LONG
public static final int TIME_VERY_LONG
Long text. (Make sure is still sensible to show as a notification)
-
duration
private int duration
-
-
Constructor Detail
-
Notification
public Notification()
Constructs a newNotification
without content.
-
Notification
public Notification(String msg)
Constructs a newNotification
with the given textual content.- Parameters:
msg
- The text to display
-
-
Method Detail
-
setContent
public Notification setContent(Component content)
Set the content of the message.- Parameters:
content
- any Component to be shown- Returns:
- the current Object, for convenience
- See Also:
setContent(java.lang.String)
-
setContent
public Notification setContent(String msg)
Set the notification text. (Convenience method)- Parameters:
msg
- the message String. Will be wrapped in <html>, so you can use <br> and other markup directly.- Returns:
- the current Object, for convenience
- See Also:
Notification(java.lang.String)
-
setDuration
public Notification setDuration(int duration)
Set the time after which the message is hidden.- Parameters:
duration
- the time (in milliseconds) Preset valuesTIME_SHORT
,TIME_DEFAULT
,TIME_LONG
andTIME_VERY_LONG
can be used.- Returns:
- the current Object, for convenience
-
setIcon
public Notification setIcon(Icon icon)
Set an icon to display on the left part of the message window.- Parameters:
icon
- the icon (null means no icon is displayed)- Returns:
- the current Object, for convenience
-
setIcon
public Notification setIcon(int messageType)
Set an icon to display on the left part of the message window by choosing from the default JOptionPane icons.- Parameters:
messageType
- one of the following: JOptionPane.ERROR_MESSAGE, JOptionPane.INFORMATION_MESSAGE, JOptionPane.WARNING_MESSAGE, JOptionPane.QUESTION_MESSAGE, JOptionPane.PLAIN_MESSAGE- Returns:
- the current Object, for convenience
-
setHelpTopic
public Notification setHelpTopic(String helpTopic)
Display a help button at the bottom of the notification window.- Parameters:
helpTopic
- the help topic- Returns:
- the current Object, for convenience
-
getContent
public Component getContent()
Gets the content component to use.- Returns:
- The content
-
getDuration
public int getDuration()
Gets the time the notification should be displayed- Returns:
- The time to display the notification
-
getIcon
public Icon getIcon()
Gets the icon that should be displayed next to the notification- Returns:
- The icon to display
-
getHelpTopic
public String getHelpTopic()
Gets the help topic for this notification- Returns:
- The help topic
-
show
public void show()
Display the notification.
-
replaceExisting
public void replaceExisting(Notification oldNotification)
Display the notification by replacing the given queued/displaying notification- Parameters:
oldNotification
- the notification to replace- Since:
- 17628
-
getContentTextOrComponent
private Object getContentTextOrComponent()
-
-