org.chorem.jtimer.ui.tasks
Class IdleDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by org.chorem.jtimer.ui.tasks.IdleDialog
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants

public class IdleDialog
extends JDialog

Modal idle dialog showed to user when idle has been detected. Composed of an unique blocking show method. Also composed of three resume option :

Version:
$Revision: 2822 $ Last update : $Date: 2012-03-14 14:12:33 +0100 (Wed, 14 Mar 2012) $ By : $Author$
Author:
chatellier
See Also:
Serialized Form

Nested Class Summary
protected  class IdleDialog.UpdateIdleTime
          Task to update idle time duration while dialog is showed.
 
Nested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  org.jdesktop.application.SingleFrameApplication application
          Parent application.
static int CONTINUE
          Continue option after idle detect.
protected static IdleDialog idleDialog
          Singleton dialog instance.
protected  JLabel idleDurationLabel
          Duration label.
protected  long idleStartTimestamp
          Timestamp when idle starts.
protected static int lastResumeOption
          Resume option.
protected static Object mutex
          Mutex object (multiples running tasks are waiting on it)
protected  org.jdesktop.application.ResourceMap resourceMap
          I18N resource map.
static int RESUME
          Resume option after idle detect.
static int REVERT
          Revert option after idle detect.
protected  Timer timer
          Timer (for idle duration scheduling).
protected  IdleDialog.UpdateIdleTime updateIdleTime
          Current Idle duration refresh task.
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
protected IdleDialog(org.jdesktop.application.SingleFrameApplication application)
          IdleDialog constructor.
 
Method Summary
 void chooseContinueOption()
          Continue button action.
 void chooseResumeOption()
          Resume button action.
 void chooseRevertOption()
          Revert button action.
protected  void idleEnded()
          Unblock all waiting threads on mutex.
static void init(org.jdesktop.application.SingleFrameApplication parent)
          Init dialog idleDialog instance.
 void setVisible(boolean b)
           
static int showIdleDialog(long idleStartTimestamp)
          Called function on idle detect.
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

mutex

protected static Object mutex
Mutex object (multiples running tasks are waiting on it)


idleDialog

protected static IdleDialog idleDialog
Singleton dialog instance.


lastResumeOption

protected static int lastResumeOption
Resume option.


application

protected org.jdesktop.application.SingleFrameApplication application
Parent application.


resourceMap

protected org.jdesktop.application.ResourceMap resourceMap
I18N resource map.


timer

protected Timer timer
Timer (for idle duration scheduling).


updateIdleTime

protected IdleDialog.UpdateIdleTime updateIdleTime
Current Idle duration refresh task.


idleStartTimestamp

protected long idleStartTimestamp
Timestamp when idle starts.


idleDurationLabel

protected JLabel idleDurationLabel
Duration label.


REVERT

public static final int REVERT
Revert option after idle detect.

See Also:
Constant Field Values

CONTINUE

public static final int CONTINUE
Continue option after idle detect.

See Also:
Constant Field Values

RESUME

public static final int RESUME
Resume option after idle detect.

See Also:
Constant Field Values
Constructor Detail

IdleDialog

protected IdleDialog(org.jdesktop.application.SingleFrameApplication application)
IdleDialog constructor. Protected to force use of show static method.

Parameters:
application - parent application
Method Detail

init

public static void init(org.jdesktop.application.SingleFrameApplication parent)
Init dialog idleDialog instance.

Parameters:
parent - parent reference

chooseRevertOption

@Action
public void chooseRevertOption()
Revert button action.


chooseContinueOption

@Action
public void chooseContinueOption()
Continue button action.


chooseResumeOption

@Action
public void chooseResumeOption()
Resume button action.


idleEnded

protected void idleEnded()
Unblock all waiting threads on mutex.


setVisible

public void setVisible(boolean b)
Overrides:
setVisible in class Dialog

showIdleDialog

public static int showIdleDialog(long idleStartTimestamp)
Called function on idle detect. This function is thread safe and show only one dialog even if function is called multiples times.

Parameters:
idleStartTimestamp - time stamp when idle start
Returns:
idle option


Copyright © 2007-2012 CodeLutin. All Rights Reserved.