se.datadosen.component
Class JNotification

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by se.datadosen.component.JNotification
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class JNotification
extends javax.swing.JPanel

Panel that has a colorful background, close button and nice roll-up effect To be used for small informative notifications

Since:
8.9.1
See Also:
Serialized Form

Nested Class Summary
static class JNotification.Type
           
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  JPlainButton abortButton
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JNotification()
           
JNotification(javax.swing.JComponent content)
           
JNotification(javax.swing.JComponent content, JNotification.Type type)
           
JNotification(java.lang.String htmlText)
          Wrap given htmlText in a JHtmlBox and add it as content to this notification
JNotification(java.lang.String htmlText, JNotification.Type type)
           
 
Method Summary
static void forgetAllDismissed()
           
static void forgetAllShown()
           
 javax.swing.JComponent getContent()
           
 int getExpiration()
           
 long getLastDismissed()
           
 long getLastShown()
           
 boolean isBackgroundGradient()
           
 boolean isDismissedBefore()
          Convenience
 boolean isRememberDismissed()
           
 boolean isRememberShown()
          Decide if notification is to remember if and when notification with the currently set content (hashCode based) was last shown
 boolean isShownBefore()
          Convenience
 void jumpDown()
           
 void paint(java.awt.Graphics g)
           
protected  void paintComponent(java.awt.Graphics g)
           
 void rollDown()
          Animate notification so it disappears down.
 void rollUp()
          Animate notification so it appears from below.
 void setBackgroundGradient(boolean gradientBackground)
           
 void setCloseButtonToolTipText(java.lang.String toolTip)
           
 void setContent(javax.swing.JComponent content)
           
 void setExpiration(int secs)
          Set time in seconds for expiration (hiding) of this notification
 void setIcon(javax.swing.Icon icon)
           
 void setLastDismissed(long time)
          Called by JNotification.
 void setLastShown(long time)
          Called by JNotification.
 void setRememberDismissed(boolean rememberDismissed)
          Decide if notification is to remember if and when user clicked the close button of notification with the currently set content (hashCode based)
 void setRememberShown(boolean rememberShown)
           
 void setType(JNotification.Type type)
           
 void setVisible(boolean visible)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

abortButton

protected JPlainButton abortButton
Constructor Detail

JNotification

public JNotification(javax.swing.JComponent content)

JNotification

public JNotification(javax.swing.JComponent content,
                     JNotification.Type type)

JNotification

public JNotification(java.lang.String htmlText)
Wrap given htmlText in a JHtmlBox and add it as content to this notification

Parameters:
htmlText -

JNotification

public JNotification(java.lang.String htmlText,
                     JNotification.Type type)

JNotification

public JNotification()
Method Detail

forgetAllDismissed

public static void forgetAllDismissed()
                               throws java.util.prefs.BackingStoreException
Throws:
java.util.prefs.BackingStoreException

forgetAllShown

public static void forgetAllShown()
                           throws java.util.prefs.BackingStoreException
Throws:
java.util.prefs.BackingStoreException

setType

public void setType(JNotification.Type type)

getExpiration

public int getExpiration()

setExpiration

public void setExpiration(int secs)
Set time in seconds for expiration (hiding) of this notification

Parameters:
secs -

isBackgroundGradient

public boolean isBackgroundGradient()

setBackgroundGradient

public void setBackgroundGradient(boolean gradientBackground)

isRememberDismissed

public boolean isRememberDismissed()

setRememberDismissed

public void setRememberDismissed(boolean rememberDismissed)
Decide if notification is to remember if and when user clicked the close button of notification with the currently set content (hashCode based)

Parameters:
rememberDismissed -

isRememberShown

public boolean isRememberShown()
Decide if notification is to remember if and when notification with the currently set content (hashCode based) was last shown

Parameters:
rememberDismissed -

setRememberShown

public void setRememberShown(boolean rememberShown)

getLastShown

public long getLastShown()
Returns:
milliseconds since epoch when notification having the currently set content was last shown or 0 if never shown before

isShownBefore

public boolean isShownBefore()
Convenience


isDismissedBefore

public boolean isDismissedBefore()
Convenience


setLastShown

public void setLastShown(long time)
Called by JNotification. Pass 0 to reset

Parameters:
time - millis since epoch

setLastDismissed

public void setLastDismissed(long time)
Called by JNotification. Pass 0 to reset

Parameters:
time - millis since epoch

getLastDismissed

public long getLastDismissed()
Returns:
milliseconds since epoch when notification having the currently set content was last dismissed (closed using the close button) or 0 if never dismissed before

jumpDown

public void jumpDown()

rollUp

public void rollUp()
Animate notification so it appears from below. Never run on event dispatch thread


rollDown

public void rollDown()
Animate notification so it disappears down. Never run on event dispatch thread


getContent

public javax.swing.JComponent getContent()

setContent

public void setContent(javax.swing.JComponent content)

setIcon

public void setIcon(javax.swing.Icon icon)

setCloseButtonToolTipText

public void setCloseButtonToolTipText(java.lang.String toolTip)

setVisible

public void setVisible(boolean visible)
Overrides:
setVisible in class javax.swing.JComponent

paint

public void paint(java.awt.Graphics g)
Overrides:
paint in class javax.swing.JComponent

paintComponent

protected void paintComponent(java.awt.Graphics g)
Overrides:
paintComponent in class javax.swing.JComponent