public class AdfDhtmlDialogManager
extends AdfObject
Dialog manager handles activation of the active window, deactivating the previous active window and
restoring the most recent open dialog. It also tracks active open windows. The ctrl+alt+w key combination
can be used to cycle through the active dialogs. The active open window navigation consists of any open
modeless dialogs that are at the same level as the primary window. The primary window is also included in
the window rotation. The definition of the primary window depends on if there are any modal dialogs open.
When there is not a model dialog open, the primary window is the document. When a model dialog is open, the
primary window becomes the modal dialog. Any modeless windows open after the modal dialog (primary window)
defines the active window navigation. This means that any open windows under the modal glass pane are inactive.
When the primary window is closed, all active modeless child dialogs are closed.
Dialog manager handles activation of the active window, deactivating the previous active window and
restoring the most recent open dialog. It also tracks active open windows. The ctrl+alt+w key combination
can be used to cycle through the active dialogs. The active open window navigation consists of any open
modeless dialogs that are at the same level as the primary window. The primary window is also included in
the window rotation. The definition of the primary window depends on if there are any modal dialogs open.
When there is not a model dialog open, the primary window is the document. When a model dialog is open, the
primary window becomes the modal dialog. Any modeless windows open after the modal dialog (primary window)
defines the active window navigation. This means that any open windows under the modal glass pane are inactive.
When the primary window is closed, all active modeless child dialogs are closed.
Makes the dialog passed in active. The dialog must already have
been registered by calling registerDialog. If there is an active dialog,
it is deactivated before making the target dialog active.
Dialog activation history is kept so that we can determine
the previous dialog to active when a dialog is unregistered.
The dialog will not be activated if it is "under the modality glass". If
the target dialog to activate is not in the top dialog navigation stack,
"false" is returned.
Parameters:
dialog
-
the dialog to unregister
Return:
Boolean - returns true if the dialog was activated; otherwise, false
if the dialog couldn't be activated.
public Object focusNextModelessDialog(Object prevDocumentDomElement)
Looks for the next dialog to activate. The dialogs are tracked in
order they are opend. To determine then next dialog we need to
first define the subset of modless windows. A modal window
can open modeless windows. We can only rotate within the last set of
modeless windows. If all opened windows are modeless, the document must be
must be included in the rotation. If there is an open modal dialog,
the "document" primary window will be under glass and will not be in the
rotation. The modeless dialog will become the primary window.
Parameters:
prevDocumentDomElement
-
optional DOM document element that focus should
return using the ctrl+alt+w key combo
Builds a private array of the top modeless dialogs if it doesn't exist.
The top of the array or the first modal dialog delineates the active modeless
stack. If there are not any modal dialogs in the list, the "primary window"
is added to the end "top" of the dialog rotation. If there is a modal dialog, the
"primary window" is under glass and so the modal dialog is considered the primary.
When the primary window is the document it is represended by a private object
that implements an "active" method like the AdfDhtmlSimpleFloat.
Each time this method is called, the private "this._topDialogNavigation" is
rebuilt from "this._dialogs". The method returns an integer that is the index
into the private stack that is the "this._activeDialog". If the active dialog
is not found, -1 is returned.
Return:
Number - index into this._topDialogNavigation for the this._activeDialog.
Adds a new dialog to the bottom of the dialog stack. The unregisterDialog
method is used to remove it. This call only registers the dialog. The
activeDialog must be called to set it active.
Overrides the restore focus id of the global faces messages dialog. When the message dialog
is promoted as a child of the modal dialog, the restore focus should return to the new primary
window which is the dialog versus what happen to have focus under the modal glass when the
message dialog is open.
Parameters:
params
-
object that contins the global message dialog (params['msgDialog']) and
the modal dialog (params['modalDialog']) both of type AdfDhtmlSimpleFloat.