org.PingOO.DLAI.lib.PWidget
Class PExternalDialog

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--org.PingOO.DLAI.lib.PWidget.PFrame
                                      |
                                      +--org.PingOO.DLAI.lib.PWidget.PExternalDialog

public class PExternalDialog
extends PFrame

The InternalFrame should remain on top of the screen.
This sould be used to create bloquing window when the user's input is needed somewhere.

The blocking code is weak, there is still much more work to do on this class.

Since:
PingOO 2.0
Version:
2.0
Author:
Fabrice Bouyé (bouye@cur-archamps.fr)
See Also:
PComponent, PFrame, PInternalDialog, Serialized Form

Inner Class Summary
private  class PExternalDialog.UnfreezingAdapter
           
 
Inner classes inherited from class org.PingOO.DLAI.lib.PWidget.PFrame
PFrame.PExternalMouseInputListener
 
Inner classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AWTTreeLock
 
Field Summary
private  java.awt.Component oldGlassPane
          The previous glass pane of the parent.
private  java.awt.Container parent
          The parent of this dialog.
 
Fields inherited from class org.PingOO.DLAI.lib.PWidget.PFrame
defaultMouseInputListener, manager, module, titleKey
 
Fields inherited from class javax.swing.JFrame
accessibleContext, defaultCloseOperation, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
base, CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, frameSerializedDataVersion, HAND_CURSOR, icon, ICONIFIED, mbManagement, menuBar, MOVE_CURSOR, N_RESIZE_CURSOR, nameCounter, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, ownedWindows, resizable, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, serialVersionUID, state, SW_RESIZE_CURSOR, TEXT_CURSOR, title, W_RESIZE_CURSOR, WAIT_CURSOR, weakThis
 
Fields inherited from class java.awt.Window
active, base, focusMgr, inputContext, nameCounter, OPENED, ownedWindowList, serialVersionUID, state, warningString, weakThis, windowListener, windowSerializedDataVersion
 
Fields inherited from class java.awt.Container
component, containerListener, containerSerializedDataVersion, dispatcher, layoutMgr, maxSize, ncomponents, serialVersionUID
 
Fields inherited from class java.awt.Component
actionListenerK, adjustmentListenerK, appContext, assert, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, changeSupport, componentListener, componentListenerK, componentOrientation, componentSerializedDataVersion, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, hasFocus, height, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, name, nameExplicitlySet, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, RIGHT_ALIGNMENT, serialVersionUID, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowListenerK, x, y
 
Constructor Summary
PExternalDialog(java.awt.Container parentComponent)
          Creates a new external dialog for the interface.
PExternalDialog(java.lang.String titleKey, java.awt.Container parentComponent)
          Creates a new external dialog for the interface.
PExternalDialog(java.lang.String titleKey, java.awt.Container parentComponent, boolean closable)
          Creates a new external dialog for the interface.
PExternalDialog(java.lang.String titleKey, java.lang.String toolTipKey, java.awt.Container parentComponent)
          Creates a new external dialog for the interface.
PExternalDialog(java.lang.String titleKey, java.lang.String toolTipKey, java.lang.String module, java.awt.Container parentComponent)
          Creates a new external dialog for the interface.
PExternalDialog(java.lang.String titleKey, java.lang.String toolTipKey, java.lang.String module, java.awt.Container parentComponent, boolean closable)
          Creates a new external dialog for the interface.
 
Method Summary
 void setLocationRelativeTo(java.awt.Component c)
          Sets the location of the dialog relative to the specified component.
 void startModalP()
          For unknow reasons (perhaps instability), the code of the startModal() method in JExternalFram is package limited so its can't be reused outside.
 void stopModalP()
           
 
Methods inherited from class org.PingOO.DLAI.lib.PWidget.PFrame
getManager, getModule, getTextKey, getTitleKey, getToolTipKey, setLocalizedTitle, setManager, setModule, updateFont, updateLanguage, updateLanguage
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, createRootPaneException, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
, addNotify, addToFrameList, constructComponentName, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, initIDs, isResizable, postProcessKeyEvent, readObject, remove, removeFromFrameList, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle, writeObject
 
Methods inherited from class java.awt.Window
addOwnedWindow, addWindowListener, applyResourceBundle, applyResourceBundle, connectOwnedWindow, dispatchEventImpl, dispose, eventEnabled, getFocusOwner, getInputContext, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, isActive, isShowing, nextFocus, ownedInit, pack, postEvent, postWindowEvent, preProcessKeyEvent, processEvent, removeOwnedWindow, removeWindowListener, setFocusOwner, setWarningString, show, toBack, toFront, transferFocus
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyOrientation, countComponents, deliverEvent, dispatchEventToSelf, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getMouseEventTarget, getPreferredSize, getWindow, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPrint, list, list, locate, minimumSize, paint, paintComponents, postsOldMouseEvents, preferredSize, print, printComponents, printOneComponent, processContainerEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFont, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, areInputMethodsEnabled, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getSize, getToolkitImpl, getTreeLock, getWidth, getWindowForObject, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isEnabledImpl, isFocusTraversable, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processInputMethodEvent, processMouseEvent, processMouseMotionEvent, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

parent

private java.awt.Container parent
The parent of this dialog.

oldGlassPane

private java.awt.Component oldGlassPane
The previous glass pane of the parent.
Used if parent is a RootPaneContainer.
Constructor Detail

PExternalDialog

public PExternalDialog(java.awt.Container parentComponent)
Creates a new external dialog for the interface.
Creates a non-closable PExternalDialog with default title.
Parameters:
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.

PExternalDialog

public PExternalDialog(java.lang.String titleKey,
                       java.awt.Container parentComponent)
Creates a new external dialog for the interface.
Creates a non-closable PExternalDialog with the specified title.
Parameters:
titleKey - The key used to get the localized title.
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.

PExternalDialog

public PExternalDialog(java.lang.String titleKey,
                       java.lang.String toolTipKey,
                       java.awt.Container parentComponent)
Creates a new external dialog for the interface.
Creates a non-closable PExternalDialog with the specified title.
Parameters:
titleKey - The key used to get the localized title.
toolTipKey - The key used to get the localized tool tip.
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.

PExternalDialog

public PExternalDialog(java.lang.String titleKey,
                       java.lang.String toolTipKey,
                       java.lang.String module,
                       java.awt.Container parentComponent)
Creates a new external dialog for the interface.
Creates a non-closable PExternalDialog with the specified title.
Parameters:
titleKey - The key used to get the localized title.
toolTipKey - The key used to get the localized tool tip.
module - The module used to load localized resources.
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.

PExternalDialog

public PExternalDialog(java.lang.String titleKey,
                       java.awt.Container parentComponent,
                       boolean closable)
Creates a new external dialog for the interface.
Creates a PExternalDialog with the specified title and with closability specified.
Parameters:
titleKey - The key used to get the localized title.
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.
closable - Indicates if the external dialog is closable or not.

PExternalDialog

public PExternalDialog(java.lang.String titleKey,
                       java.lang.String toolTipKey,
                       java.lang.String module,
                       java.awt.Container parentComponent,
                       boolean closable)
Creates a new external dialog for the interface.
Creates a PExternalDialog with the specified title and with closability specified.
Parameters:
titleKey - The key used to get the localized title.
toolTipKey - The key used to get the localized tool tip.
module - The module used to load localized resources.
parentComponent - Determines the Frame in which the dialog is displayed. If null, or if the parentComponent has no Frame, a default Frame is used.
closable - Indicates if the external dialog is closable or not.
Method Detail

startModalP

public void startModalP()
For unknow reasons (perhaps instability), the code of the startModal() method in JExternalFram is package limited so its can't be reused outside.
So I had to paste it from the source of the JDK.
Comments that follow are those from the original code.

Creates a new EventDispatchThread to dispatch events from
This method returns when stopModal() is invoked.


stopModalP

public void stopModalP()

setLocationRelativeTo

public void setLocationRelativeTo(java.awt.Component c)
Sets the location of the dialog relative to the specified component.
If the component is not currently showing, the dialog is centered on the screen.
Parameters:
c - The component in relation to which the dialog's location is determined