Package | mx.managers |
Interface | public interface ISystemManager extends IEventDispatcher , IChildList , IFlexModuleFactory |
Implementors | SystemManager, WindowedSystemManager |
mx.core.Application
, which
is the main "top-level" window within an application.
Every application has an ISystemManager. The ISystemManager sends an event if the size of the application window changes (you cannot change it from within the application, but only through interaction with the operating system window or browser). It parents all displayable items within the application, such as the main mx.core.Application instance and all popups, tooltips, cursors, an so on. Any object parented by the ISystemManager is considered to be a "top-level" window, even tooltips and cursors.
The ISystemManager also switches focus between top-level windows if there are more than one IFocusManagerContainer displayed and users are interacting with components within the IFocusManagerContainers.
All keyboard and mouse activity that is not expressly trapped is seen by the ISystemManager, making it a good place to monitor activity should you need to do so.
If an application is loaded into another application, an ISystemManager
will still be created, but will not manage an "application window",
depending on security and domain rules.
Instead, it will be the content
of the Loader
that loaded it and simply serve as the parent of the sub-application
The ISystemManager maintains multiple lists of children, one each for
tooltips, cursors, popup windows.
This is how it ensures that popup windows "float" above the main
application windows and that tooltips "float" above that
and cursors above that.
If you examine the numChildren
property
or getChildAt()
method on the ISystemManager
you are accessing the main application window and any other windows
that aren't popped up.
To get the list of all windows, including popups, tooltips and cursors,
use the rawChildren
property.
Property | Defined By | ||
---|---|---|---|
cursorChildren : IChildList [read-only]
An list of the custom cursors
being parented by this ISystemManager. | ISystemManager | ||
document : Object
A reference to the document object. | ISystemManager | ||
focusPane : Sprite
A single Sprite shared among components used as an overlay for drawing focus. | ISystemManager | ||
loaderInfo : LoaderInfo [read-only]
The LoaderInfo object that represents information about the application. | ISystemManager | ||
![]() | numChildren : int [read-only]
The number of children in this child list. | IChildList | |
numModalWindows : int
The number of modal windows. | ISystemManager | ||
popUpChildren : IChildList [read-only]
An list of the topMost (popup)
windows being parented by this ISystemManager. | ISystemManager | ||
![]() | preloadedRSLs : Dictionary [read-only]
The RSLs loaded by this IFlexModuleFactory before the application
starts. | IFlexModuleFactory | |
rawChildren : IChildList [read-only]
A list of all children
being parented by this ISystemManager. | ISystemManager | ||
screen : Rectangle [read-only]
The size and position of the application window. | ISystemManager | ||
stage : Stage [read-only]
The flash.display.Stage that represents the application window
mapped to this SystemManager
| ISystemManager | ||
swfBridgeGroup : ISWFBridgeGroup [read-only]
Contains all the bridges to other applications
that this application is connected to. | ISystemManager | ||
toolTipChildren : IChildList [read-only]
A list of the tooltips
being parented by this ISystemManager. | ISystemManager | ||
topLevelSystemManager : ISystemManager [read-only]
The ISystemManager responsible for the application window. | ISystemManager |
Method | Defined By | ||
---|---|---|---|
Activates the FocusManager in an IFocusManagerContainer. | ISystemManager | ||
![]() |
Adds a child DisplayObject after the end of this child list. | IChildList | |
![]() |
Adds a child DisplayObject to this child list at the index specified. | IChildList | |
Adds a child bridge to the system manager. | ISystemManager | ||
Adds child to sandbox root in the layer requested. | ISystemManager | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event. | IEventDispatcher | |
Registers a top-level window containing a FocusManager. | ISystemManager | ||
![]() |
Calls Security.allowDomain() for the SWF associated with this IFlexModuleFactory
plus all the SWFs assocatiated with RSLs preloaded by this IFlexModuleFactory. | IFlexModuleFactory | |
![]() |
Calls Security.allowInsecureDomain() for the SWF associated with this IFlexModuleFactory
plus all the SWFs assocatiated with RSLs preLoaded by this IFlexModuleFactory. | IFlexModuleFactory | |
![]() |
Determines if a DisplayObject is in this child list,
or is a descendant of an child in this child list. | IChildList | |
![]() |
A factory method that requests
an instance of a definition known to the module. | IFlexModuleFactory | |
Deactivates the FocusManager in an IFocusManagerContainer, and activate
the FocusManager of the next highest window that is an IFocusManagerContainer. | ISystemManager | ||
Deploy or remove mouse shields. | ISystemManager | ||
![]() |
Dispatches an event into the event flow. | IEventDispatcher | |
dispatchEventFromSWFBridges(event:Event, skip:IEventDispatcher = null, trackClones:Boolean = false, toOtherSystemManagers:Boolean = false):void
Dispatch a message to all parent and child applications in this SystemManager's SWF bridge group, regardless of
whether they are in the same SecurityDomain or not. | ISystemManager | ||
![]() |
Gets the child DisplayObject at the specified index in this child list. | IChildList | |
![]() |
Gets the child DisplayObject with the specified name
in this child list. | IChildList | |
![]() |
Gets the index of a specific child in this child list. | IChildList | |
Converts the given String to a Class or package-level Function. | ISystemManager | ||
![]() |
Returns an array of DisplayObjects that lie under the specified point
and are in this child list. | IChildList | |
Gets the system manager is the root of all
top level system managers in this SecurityDomain
| ISystemManager | ||
Attempts to get the system manager that is the in the main application. | ISystemManager | ||
Get the bounds of the loaded application that are visible to the user
on the screen. | ISystemManager | ||
![]() |
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | IEventDispatcher | |
![]() |
Returns a block of key/value pairs
that hold static data known to the module. | IFlexModuleFactory | |
Tests if a display object is in a child application
that is loaded in compatibility mode or in an untrusted sandbox. | ISystemManager | ||
Returns true if the required font face is embedded
in this application, or has been registered globally by using the
Font.registerFont() method. | ISystemManager | ||
Returns true if this ISystemManager is responsible
for an application window, and false if this
application has been loaded into another application. | ISystemManager | ||
Tests if this system manager is the root of all
top level system managers. | ISystemManager | ||
![]() |
Removes the specified child DisplayObject from this child list. | IChildList | |
![]() |
Removes the child DisplayObject at the specified index
from this child list. | IChildList | |
Adds a child bridge to the system manager. | ISystemManager | ||
Removes child from sandbox root in the layer requested. | ISystemManager | ||
![]() |
Removes a listener from the EventDispatcher object. | IEventDispatcher | |
Unregisters a top-level window containing a FocusManager. | ISystemManager | ||
![]() |
Changes the index of a particular child in this child list. | IChildList | |
Determines if the caller using this system manager
should should communicate directly with other managers
or if it should communicate with a bridge. | ISystemManager | ||
![]() |
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | IEventDispatcher |
cursorChildren | property |
cursorChildren:IChildList
[read-only] An list of the custom cursors being parented by this ISystemManager.
An ISystemManager has various types of children,
such as the Application, popups, top-most windows,
tooltips, and custom cursors.
You can access the custom cursors through
the cursorChildren
property.
The IChildList object has methods like getChildAt()
and properties like numChildren
.
For example, cursorChildren.numChildren
gives
the number of custom cursors (which will be either 0 or 1)
and, if a custom cursor exists, you can access it as
cursorChildren.getChildAt(0)
.
public function get cursorChildren():IChildList
document | property |
document:Object
A reference to the document object. A document object is an Object at the top of the hierarchy of a Flex application, MXML component, or AS component.
public function get document():Object
public function set document(value:Object):void
focusPane | property |
focusPane:Sprite
A single Sprite shared among components used as an overlay for drawing focus. You share it if you parent a focused component, not if you are IFocusManagerComponent.
public function get focusPane():Sprite
public function set focusPane(value:Sprite):void
loaderInfo | property |
loaderInfo:LoaderInfo
[read-only] The LoaderInfo object that represents information about the application.
public function get loaderInfo():LoaderInfo
numModalWindows | property |
numModalWindows:int
The number of modal windows.
Modal windows don't allow clicking in another windows which would normally activate the FocusManager in that window. The PopUpManager modifies this count as it creates and destroy modal windows.
public function get numModalWindows():int
public function set numModalWindows(value:int):void
popUpChildren | property |
popUpChildren:IChildList
[read-only] An list of the topMost (popup) windows being parented by this ISystemManager.
An ISystemManager has various types of children,
such as the Application, popups,
tooltips, and custom cursors.
You can access the top-most windows through
the popUpChildren
property.
The IChildList object has methods like getChildAt()
and properties like numChildren
.
For example, popUpChildren.numChildren
gives
the number of topmost windows and you can access them as
popUpChildren.getChildAt(i)
.
public function get popUpChildren():IChildList
rawChildren | property |
rawChildren:IChildList
[read-only] A list of all children being parented by this ISystemManager.
An ISystemManager has various types of children, such as the Application, popups, tooltips, and custom cursors.
The IChildList object has methods like getChildAt()
and properties like numChildren
.
public function get rawChildren():IChildList
screen | property |
screen:Rectangle
[read-only]
The size and position of the application window.
The Rectangle object contains x
, y
,
width
, and height
properties.
public function get screen():Rectangle
stage | property |
stage:Stage
[read-only] The flash.display.Stage that represents the application window mapped to this SystemManager
public function get stage():Stage
swfBridgeGroup | property |
swfBridgeGroup:ISWFBridgeGroup
[read-only] Contains all the bridges to other applications that this application is connected to.
public function get swfBridgeGroup():ISWFBridgeGroup
toolTipChildren | property |
toolTipChildren:IChildList
[read-only] A list of the tooltips being parented by this ISystemManager.
An ISystemManager has various types of children, such as the Application, popups, topmost windows, tooltips, and custom cursors.
The IChildList object has methods like getChildAt()
and properties like numChildren
.
For example, toolTipChildren.numChildren
gives
the number of tooltips (which will be either 0 or 1)
and, if a tooltip exists, you can access it as
toolTipChildren.getChildAt(0)
.
public function get toolTipChildren():IChildList
topLevelSystemManager | property |
topLevelSystemManager:ISystemManager
[read-only] The ISystemManager responsible for the application window. This will be the same ISystemManager unless this application has been loaded into another application.
public function get topLevelSystemManager():ISystemManager
activate | () | method |
public function activate(f:IFocusManagerContainer):void
Activates the FocusManager in an IFocusManagerContainer.
Parameters
f:IFocusManagerContainer — IFocusManagerContainer the top-level window
whose FocusManager should be activated.
|
addChildBridge | () | method |
public function addChildBridge(bridge:IEventDispatcher, owner:DisplayObject):void
Adds a child bridge to the system manager. Each child bridge represents components in another sandbox or compiled with a different version of Flex.
Parameters
bridge:IEventDispatcher — The bridge for the child.
| |
owner:DisplayObject — The SWFLoader for the child.
|
addChildToSandboxRoot | () | method |
public function addChildToSandboxRoot(layer:String, child:DisplayObject):void
Adds child to sandbox root in the layer requested.
Parameters
layer:String — Name of IChildList in SystemManager
| |
child:DisplayObject — DisplayObject to add
|
addFocusManager | () | method |
public function addFocusManager(f:IFocusManagerContainer):void
Registers a top-level window containing a FocusManager. Called by the FocusManager, generally not called by application code.
Parameters
f:IFocusManagerContainer — The top-level window in the application.
|
deactivate | () | method |
public function deactivate(f:IFocusManagerContainer):void
Deactivates the FocusManager in an IFocusManagerContainer, and activate the FocusManager of the next highest window that is an IFocusManagerContainer.
Parameters
f:IFocusManagerContainer — IFocusManagerContainer the top-level window
whose FocusManager should be deactivated.
|
deployMouseShields | () | method |
public function deployMouseShields(deploy:Boolean):void
Deploy or remove mouse shields. Mouse shields block mouse input to untrusted applications. The reason you would want to block mouse input is because when you are dragging over an untrusted application you would normally not receive any mouse move events. The Flash Player does not send events across trusted/untrusted boundries due to security concerns. By covering the untrusted application with a mouse shield (assuming you are its parent) you can get mouse move message and the drag operation will work as expected.
Parameters
deploy:Boolean — true to deploy the mouse shields, false
to remove the mouse shields.
|
dispatchEventFromSWFBridges | () | method |
public function dispatchEventFromSWFBridges(event:Event, skip:IEventDispatcher = null, trackClones:Boolean = false, toOtherSystemManagers:Boolean = false):void
Dispatch a message to all parent and child applications in this SystemManager's SWF bridge group, regardless of whether they are in the same SecurityDomain or not. You can optionally exclude an application with this method's parameters.
Parameters
event:Event — The event to dispatch.
| |
skip:IEventDispatcher (default = null ) — Specifies an IEventDispatcher that you do not want to dispatch a message to. This is typically used to skip the
IEventDispatcher that originated the event.
| |
trackClones:Boolean (default = false ) — Whether to keep a reference to the events as they are dispatched.
| |
toOtherSystemManagers:Boolean (default = false ) — Whether to dispatch the event to other top-level SystemManagers in AIR.
|
getDefinitionByName | () | method |
public function getDefinitionByName(name:String):Object
Converts the given String to a Class or package-level Function.
Calls the appropriate ApplicationDomain.getDefinition()
method based on
whether you are loaded into another application or not.
Parameters
name:String — Name of class, for example "mx.video.VideoManager".
|
Object — The Class represented by the name , or null.
|
getSandboxRoot | () | method |
public function getSandboxRoot():DisplayObject
Gets the system manager is the root of all top level system managers in this SecurityDomain
ReturnsDisplayObject — the highest-level systemManager in the sandbox
|
getTopLevelRoot | () | method |
public function getTopLevelRoot():DisplayObject
Attempts to get the system manager that is the in the main application.
ReturnsDisplayObject — The main application's systemManager if allowed by
security restrictions or null if it is in a different SecurityDomain.
|
getVisibleApplicationRect | () | method |
public function getVisibleApplicationRect(bounds:Rectangle = null):Rectangle
Get the bounds of the loaded application that are visible to the user on the screen.
Parameters
bounds:Rectangle (default = null ) — Optional. The starting bounds for the visible rect. The
bounds are in global coordinates. If bounds is null the
starting bounds is defined by the screen property of the
system manager.
|
Rectangle — a Rectangle including the visible portion of the this
object. The rectangle is in global coordinates.
|
isDisplayObjectInABridgedApplication | () | method |
public function isDisplayObjectInABridgedApplication(displayObject:DisplayObject):Boolean
Tests if a display object is in a child application that is loaded in compatibility mode or in an untrusted sandbox.
Parameters
displayObject:DisplayObject — The DisplayObject to test.
|
Boolean — true if displayObject
is in a child application that is loaded in compatibility mode
or in an untrusted sandbox, and false otherwise.
|
isFontFaceEmbedded | () | method |
public function isFontFaceEmbedded(tf:flash.text:TextFormat):Boolean
Returns true
if the required font face is embedded
in this application, or has been registered globally by using the
Font.registerFont()
method.
Parameters
tf:flash.text:TextFormat — The TextFormat class representing character formatting information.
|
Boolean — true if the required font face is embedded
in this application, or has been registered globally by using the
Font.registerFont() method.
|
isTopLevel | () | method |
public function isTopLevel():Boolean
Returns true
if this ISystemManager is responsible
for an application window, and false
if this
application has been loaded into another application.
Boolean — true if this ISystemManager is responsible
for an application window.
|
isTopLevelRoot | () | method |
public function isTopLevelRoot():Boolean
Tests if this system manager is the root of all top level system managers.
ReturnsBoolean — true if the SystemManager
is the root of all SystemManagers on the display list,
and false otherwise.
|
removeChildBridge | () | method |
public function removeChildBridge(bridge:IEventDispatcher):void
Adds a child bridge to the system manager. Each child bridge represents components in another sandbox or compiled with a different version of Flex.
Parameters
bridge:IEventDispatcher — The bridge for the child
|
removeChildFromSandboxRoot | () | method |
public function removeChildFromSandboxRoot(layer:String, child:DisplayObject):void
Removes child from sandbox root in the layer requested.
Parameters
layer:String — Name of IChildList in SystemManager
| |
child:DisplayObject — DisplayObject to add
|
removeFocusManager | () | method |
public function removeFocusManager(f:IFocusManagerContainer):void
Unregisters a top-level window containing a FocusManager. Called by the FocusManager, generally not called by application code.
Parameters
f:IFocusManagerContainer — The top-level window in the application.
|
useSWFBridge | () | method |
public function useSWFBridge():Boolean
Determines if the caller using this system manager should should communicate directly with other managers or if it should communicate with a bridge.
ReturnsBoolean — true if the caller using this system manager
should communicate using sandbox bridges.
If false the system manager may directly call
other managers directly via references.
|