Packagefeathers.controls
Classpublic class Callout
InheritanceCallout Inheritance FeathersControl Inheritance starling.display.Sprite

A pop-up container that points at (or calls out) a specific region of the application (typically a specific control that triggered it).

In general, a Callout isn't instantiated directly. Instead, you will typically call the static function Callout.show(). This is not required, but it result in less code and no need to manually manage calls to the PopUpManager.

In the following example, a callout displaying a Label is shown when a Button is triggered:

     button.addEventListener( Event.TRIGGERED, button_triggeredHandler );
     
     function button_triggeredHandler( event:Event ):void
     {
         var label:Label = new Label();
         label.text = "Hello World!";
         var button:Button = Button( event.currentTarget );
         Callout.show( label, button );
     }

See also

How to use the Feathers Callout component


Public Properties
 PropertyDefined By
  arrowOffset : Number
The offset, in pixels, of the arrow skin from the horizontal center or vertical middle of the background skin, depending on the position of the arrow (which side it is on).
Callout
  arrowPosition : String
The position of the callout's arrow relative to the callout's background.
Callout
  backgroundSkin : DisplayObject
The primary background to display.
Callout
  bottomArrowGap : Number
The space, in pixels, between the bottom arrow skin and the background skin.
Callout
  bottomArrowSkin : DisplayObject
The arrow skin to display on the bottom edge of the callout.
Callout
  calloutFactory : Function
[static] Returns a new Callout instance when Callout.show() is called with isModal set to true.
Callout
  calloutOverlayFactory : Function
[static] Returns an overlay to display with a callout that is modal.
Callout
  closeOnKeys : Vector.<uint>
The callout will be closed if any of these keys are pressed.
Callout
  closeOnTouchBeganOutside : Boolean = false
Determines if the callout is automatically closed if a touch in the TouchPhase.BEGAN phase happens outside of the callout's bounds.
Callout
  closeOnTouchEndedOutside : Boolean = false
Determines if the callout is automatically closed if a touch in the TouchPhase.ENDED phase happens outside of the callout's bounds.
Callout
  content : DisplayObject
The display object that will be presented by the callout.
Callout
 InheriteddefaultTextEditorFactory : Function
[static] A function used by all UI controls that support text editor to create an ITextEditor instance.
FeathersControl
 InheriteddefaultTextRendererFactory : Function
[static] A function used by all UI controls that support text renderers to create an ITextRenderer instance.
FeathersControl
 Inheriteddepth : int
[read-only] The component's depth in the display list, relative to the stage.
FeathersControl
  disposeContent : Boolean = true
Determines if the callout's content will be disposed when the callout is disposed.
Callout
  disposeOnSelfClose : Boolean = true
Determines if the callout will be disposed when close() is called internally.
Callout
 InheritedfocusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.
FeathersControl
 InheritedfocusManager : IFocusManager
FeathersControl
 InheritedfocusOwner : IFocusDisplayObject
FeathersControl
 InheritedfocusPadding : Number
Quickly sets all focus padding properties to the same value.
FeathersControl
 InheritedfocusPaddingBottom : Number
The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingLeft : Number
The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingRight : Number
The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.
FeathersControl
 InheritedfocusPaddingTop : Number
The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.
FeathersControl
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all Callout components.
Callout
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisCreated : Boolean
[read-only] Determines if the component has been initialized and validated for the first time.
FeathersControl
 InheritedisEnabled : Boolean
Indicates whether the control is interactive or not.
FeathersControl
 InheritedisFocusEnabled : Boolean
FeathersControl
 InheritedisInitialized : Boolean
[read-only] Determines if the component has been initialized yet.
FeathersControl
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
  leftArrowGap : Number
The space, in pixels, between the right arrow skin and the background skin.
Callout
  leftArrowSkin : DisplayObject
The arrow skin to display on the left edge of the callout.
Callout
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritednextTabFocus : IFocusDisplayObject
FeathersControl
  origin : DisplayObject
A callout may be positioned relative to another display object, known as the callout's origin.
Callout
  padding : Number
Quickly sets all padding properties to the same value.
Callout
  paddingBottom : Number
The minimum space, in pixels, between the callout's bottom edge and the callout's content.
Callout
  paddingLeft : Number
The minimum space, in pixels, between the callout's left edge and the callout's content.
Callout
  paddingRight : Number
The minimum space, in pixels, between the callout's right edge and the callout's content.
Callout
  paddingTop : Number
The minimum space, in pixels, between the callout's top edge and the callout's content.
Callout
 InheritedpreviousTabFocus : IFocusDisplayObject
FeathersControl
  rightArrowGap : Number
The space, in pixels, between the right arrow skin and the background skin.
Callout
  rightArrowSkin : DisplayObject
The arrow skin to display on the right edge of the callout.
Callout
  stagePadding : Number
[static] Quickly sets all stage padding properties to the same value.
Callout
  stagePaddingBottom : Number = 0
[static] The padding between a callout and the bottom edge of the stage when the callout is positioned automatically.
Callout
  stagePaddingLeft : Number = 0
[static] The margin between a callout and the top edge of the stage when the callout is positioned automatically.
Callout
  stagePaddingRight : Number = 0
[static] The padding between a callout and the right edge of the stage when the callout is positioned automatically.
Callout
  stagePaddingTop : Number = 0
[static] The padding between a callout and the top edge of the stage when the callout is positioned automatically.
Callout
 InheritedstyleName : String
The concatenated styleNameList, with values separated by spaces.
FeathersControl
 InheritedstyleNameList : TokenList
[read-only] Contains a list of all "styles" assigned to this control.
FeathersControl
 InheritedstyleProvider : IStyleProvider
When a component initializes, a style provider may be used to set properties that affect the component's visual appearance.
FeathersControl
  supportedDirections : String
The directions that the callout may be positioned, relative to its origin.
Callout
  topArrowGap : Number
The space, in pixels, between the top arrow skin and the background skin.
Callout
  topArrowSkin : DisplayObject
The arrow skin to display on the top edge of the callout.
Callout
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
Protected Properties
 PropertyDefined By
 InheritedactualHeight : Number = 0
The final height value that should be used for layout.
FeathersControl
 InheritedactualWidth : Number = 0
The final width value that should be used for layout.
FeathersControl
 InheriteddefaultStyleProvider : IStyleProvider
[read-only] When the FeathersControl constructor is called, the globalStyleProvider property is set to this value.
FeathersControl
 InheritedexplicitHeight : Number = NaN
The height value explicitly set by calling the height setter or setSize().
FeathersControl
 InheritedexplicitWidth : Number = NaN
The width value explicitly set by calling the width setter or setSize().
FeathersControl
Public Methods
 MethodDefined By
  
Constructor.
Callout
  
close(dispose:Boolean = false):void
Closes the callout.
Callout
  
[static] The default factory that creates callouts when Callout.show() is called.
Callout
 Inherited
hideFocus():void
If the visual indicator of focus has been displayed by showFocus(), call this function to hide it.
FeathersControl
 Inherited
invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending.
FeathersControl
 Inherited
isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not.
FeathersControl
 Inherited
move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single function call.
FeathersControl
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
  
show(content:DisplayObject, origin:DisplayObject, supportedDirections:String, isModal:Boolean = true, customCalloutFactory:Function = null, customOverlayFactory:Function = null):Callout
[static] Creates a callout, and then positions and sizes it automatically based on an origin rectangle and the specified direction relative to the original.
Callout
 Inherited
showFocus():void
If the object has focus, an additional visual indicator may optionally be displayed to highlight the object.
FeathersControl
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
  
If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself.
Callout
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN that may be overridden in subclasses to perform additional actions when the component receives focus.
FeathersControl
 Inherited
focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT that may be overridden in subclasses to perform additional actions when the component loses focus.
FeathersControl
 Inherited
initialize():void
Called the first time that the UI control is added to the stage, and you should override this function to customize the initialization process.
FeathersControl
 Inherited
Updates the focus indicator skin by showing or hiding it and adjusting its position and dimensions.
FeathersControl
 Inherited
setInvalidationFlag(flag:String):void
Sets an invalidation flag.
FeathersControl
 Inherited
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of invalidating or not.
FeathersControl
Events
 Event Summary Defined By
  Dispatched when the callout is closed.Callout
 InheritedDispatched after the component has validated for the first time.FeathersControl
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
 InheritedDispatched when the width or height of the control changes.FeathersControl
Public Constants
 ConstantDefined By
  ARROW_POSITION_BOTTOM : String = bottom
[static] The arrow will appear on the bottom side of the callout.
Callout
  ARROW_POSITION_LEFT : String = left
[static] The arrow will appear on the left side of the callout.
Callout
  ARROW_POSITION_RIGHT : String = right
[static] The arrow will appear on the right side of the callout.
Callout
  ARROW_POSITION_TOP : String = top
[static] The arrow will appear on the top side of the callout.
Callout
  DIRECTION_ANY : String = any
[static] The callout may be positioned on any side of the origin region.
Callout
  DIRECTION_DOWN : String = down
[static] The callout must be positioned below the origin region.
Callout
  DIRECTION_HORIZONTAL : String = horizontal
[static] The callout may be positioned on top or bottom of the origin region.
Callout
  DIRECTION_LEFT : String = left
[static] The callout must be positioned to the left side of the origin region.
Callout
  DIRECTION_RIGHT : String = right
[static] The callout must be positioned to the right side of the origin region.
Callout
  DIRECTION_UP : String = up
[static] The callout must be positioned above the origin region.
Callout
  DIRECTION_VERTICAL : String = vertical
[static] The callout may be positioned on top or bottom of the origin region.
Callout
 InheritedINVALIDATION_FLAG_ALL : String = all
[static] Flag to indicate that everything is invalid and should be redrawn.
FeathersControl
 InheritedINVALIDATION_FLAG_DATA : String = data
[static] Invalidation flag to indicate that the primary data displayed by the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_FOCUS : String = focus
[static] Invalidation flag to indicate that the focus of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_LAYOUT : String = layout
[static] Invalidation flag to indicate that the layout of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SCROLL : String = scroll
[static] Invalidation flag to indicate that the scroll position of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SELECTED : String = selected
[static] Invalidation flag to indicate that the selection of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SIZE : String = size
[static] Invalidation flag to indicate that the dimensions of the UI control have changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SKIN : String = skin
[static] Invalidation flag to indicate that the skin of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STATE : String = state
[static] Invalidation flag to indicate that the state has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STYLES : String = styles
[static] Invalidation flag to indicate that the styles or visual appearance of the UI control has changed.
FeathersControl
Property Detail
arrowOffsetproperty
arrowOffset:Number

The offset, in pixels, of the arrow skin from the horizontal center or vertical middle of the background skin, depending on the position of the arrow (which side it is on). This value is used to point at the callout's origin when the callout is not perfectly centered relative to the origin.

On the top and bottom edges, the arrow will move left for negative values of arrowOffset and right for positive values. On the left and right edges, the arrow will move up for negative values and down for positive values.

If you use Callout.show() or set the origin property manually, you should avoid manually modifying the arrowPosition and arrowOffset properties.

In the following example, the arrow offset is set to 20 pixels:

         callout.arrowOffset = 20;

The default value is 0.


Implementation
    public function get arrowOffset():Number
    public function set arrowOffset(value:Number):void

See also

arrowPositionproperty 
arrowPosition:String

The position of the callout's arrow relative to the callout's background. If the callout's origin is set, this value will be managed by the callout and may change automatically if the origin moves to a new position or if the stage resizes.

The supportedDirections property is related to this one, but they have different meanings and are usually opposites. For example, a callout on the right side of its origin will generally display its left arrow.

If you use Callout.show() or set the origin property manually, you should avoid manually modifying the arrowPosition and arrowOffset properties.

In the following example, the callout's arrow is positioned on the left side:

         callout.arrowPosition = Callout.ARROW_POSITION_LEFT;

The default value is Callout.ARROW_POSITION_TOP.


Implementation
    public function get arrowPosition():String
    public function set arrowPosition(value:String):void

See also

backgroundSkinproperty 
backgroundSkin:DisplayObject

The primary background to display.

In the following example, the callout's background is set to an image:

         callout.backgroundSkin = new Image( texture );

The default value is null.


Implementation
    public function get backgroundSkin():DisplayObject
    public function set backgroundSkin(value:DisplayObject):void
bottomArrowGapproperty 
bottomArrowGap:Number

The space, in pixels, between the bottom arrow skin and the background skin. To have the arrow overlap the background, you may use a negative gap value.

In the following example, the gap between the callout and its bottom arrow is set to -4 pixels (perhaps to hide a border on the callout's background):

         callout.bottomArrowGap = -4;

The default value is 0.


Implementation
    public function get bottomArrowGap():Number
    public function set bottomArrowGap(value:Number):void
bottomArrowSkinproperty 
bottomArrowSkin:DisplayObject

The arrow skin to display on the bottom edge of the callout. This arrow is displayed when the callout is displayed above the region it points at.

In the following example, the callout's bottom arrow skin is set to an image:

         callout.bottomArrowSkin = new Image( texture );

The default value is null.


Implementation
    public function get bottomArrowSkin():DisplayObject
    public function set bottomArrowSkin(value:DisplayObject):void
calloutFactoryproperty 
public static var calloutFactory:Function

Returns a new Callout instance when Callout.show() is called with isModal set to true. If one wishes to skin the callout manually, a custom factory may be provided.

This function is expected to have the following signature:

function():Callout

The following example shows how to create a custom callout factory:

         Callout.calloutFactory = function():Callout
         {
             var callout:Callout = new Callout();
             //set properties here!
             return callout;
         };

See also

calloutOverlayFactoryproperty 
public static var calloutOverlayFactory:Function

Returns an overlay to display with a callout that is modal. Uses the standard overlayFactory of the PopUpManager by default, but you can use this property to provide your own custom overlay, if you prefer.

This function is expected to have the following signature:

function():DisplayObject

The following example uses a semi-transparent Quad as a custom overlay:

         Callout.calloutOverlayFactory = function():Quad
         {
             var quad:Quad = new Quad(10, 10, 0x000000);
             quad.alpha = 0.75;
             return quad;
         };

See also

closeOnKeysproperty 
public var closeOnKeys:Vector.<uint>

The callout will be closed if any of these keys are pressed.

In the following example, the callout close when the Escape key is pressed:

         callout.closeOnKeys = new <uint>[Keyboard.ESCAPE];

See also

closeOnTouchBeganOutsideproperty 
public var closeOnTouchBeganOutside:Boolean = false

Determines if the callout is automatically closed if a touch in the TouchPhase.BEGAN phase happens outside of the callout's bounds.

In the following example, the callout will not close when a touch event with TouchPhase.BEGAN is detected outside the callout's (or its origin's) bounds:

         callout.closeOnTouchBeganOutside = false;

See also

closeOnTouchEndedOutsideproperty 
public var closeOnTouchEndedOutside:Boolean = false

Determines if the callout is automatically closed if a touch in the TouchPhase.ENDED phase happens outside of the callout's bounds.

In the following example, the callout will not close when a touch event with TouchPhase.ENDED is detected outside the callout's (or its origin's) bounds:

         callout.closeOnTouchEndedOutside = false;

See also

contentproperty 
content:DisplayObject

The display object that will be presented by the callout. This object may be resized to fit the callout's bounds. If the content needs to be scrolled if placed into a smaller region than its ideal size, it must provide its own scrolling capabilities because the callout does not offer scrolling.

In the following example, the callout's content is an image:

         callout.content = new Image( texture );

The default value is null.


Implementation
    public function get content():DisplayObject
    public function set content(value:DisplayObject):void
disposeContentproperty 
public var disposeContent:Boolean = true

Determines if the callout's content will be disposed when the callout is disposed. If set to false, the callout's content may be added to the display list again later.

In the following example, the callout's content will not be disposed when the callout is disposed:

         callout.disposeContent = false;

disposeOnSelfCloseproperty 
public var disposeOnSelfClose:Boolean = true

Determines if the callout will be disposed when close() is called internally. Close may be called internally in a variety of cases, depending on values such as closeOnTouchBeganOutside, closeOnTouchEndedOutside, and closeOnKeys. If set to false, you may reuse the callout later by giving it a new origin and adding it to the PopUpManager again.

In the following example, the callout will not be disposed when it closes itself:

         callout.disposeOnSelfClose = false;

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all Callout components.

The default value is null.

See also

leftArrowGapproperty 
leftArrowGap:Number

The space, in pixels, between the right arrow skin and the background skin. To have the arrow overlap the background, you may use a negative gap value.

In the following example, the gap between the callout and its left arrow is set to -4 pixels (perhaps to hide a border on the callout's background):

         callout.leftArrowGap = -4;

The default value is 0.


Implementation
    public function get leftArrowGap():Number
    public function set leftArrowGap(value:Number):void
leftArrowSkinproperty 
leftArrowSkin:DisplayObject

The arrow skin to display on the left edge of the callout. This arrow is displayed when the callout is displayed to the right of the region it points at.

In the following example, the callout's left arrow skin is set to an image:

         callout.leftArrowSkin = new Image( texture );

The default value is null.


Implementation
    public function get leftArrowSkin():DisplayObject
    public function set leftArrowSkin(value:DisplayObject):void
originproperty 
origin:DisplayObject

A callout may be positioned relative to another display object, known as the callout's origin. Even if the position of the origin changes, the callout will reposition itself to always point at the origin.

When an origin is set, the arrowPosition and arrowOffset properties will be managed automatically by the callout. Setting either of these values manually with either have no effect or unexpected behavior, so it is recommended that you avoid modifying those properties.

In general, if you use Callout.show(), you will rarely need to manually manage the origin.

In the following example, the callout's origin is set to a button:

         callout.origin = button;

The default value is null.


Implementation
    public function get origin():DisplayObject
    public function set origin(value:DisplayObject):void

See also

paddingproperty 
padding:Number

Quickly sets all padding properties to the same value. The padding getter always returns the value of paddingTop, but the other padding values may be different.

In the following example, the padding of all sides of the callout is set to 20 pixels:

         callout.padding = 20;

The default value is 0.


Implementation
    public function get padding():Number
    public function set padding(value:Number):void

See also

paddingBottomproperty 
paddingBottom:Number

The minimum space, in pixels, between the callout's bottom edge and the callout's content.

In the following example, the padding on the bottom edge of the callout is set to 20 pixels:

         callout.paddingBottom = 20;

The default value is 0.


Implementation
    public function get paddingBottom():Number
    public function set paddingBottom(value:Number):void
paddingLeftproperty 
paddingLeft:Number

The minimum space, in pixels, between the callout's left edge and the callout's content.

In the following example, the padding on the left edge of the callout is set to 20 pixels:

         callout.paddingLeft = 20;

The default value is 0.


Implementation
    public function get paddingLeft():Number
    public function set paddingLeft(value:Number):void
paddingRightproperty 
paddingRight:Number

The minimum space, in pixels, between the callout's right edge and the callout's content.

In the following example, the padding on the right edge of the callout is set to 20 pixels:

         callout.paddingRight = 20;

The default value is 0.


Implementation
    public function get paddingRight():Number
    public function set paddingRight(value:Number):void
paddingTopproperty 
paddingTop:Number

The minimum space, in pixels, between the callout's top edge and the callout's content.

In the following example, the padding on the top edge of the callout is set to 20 pixels:

         callout.paddingTop = 20;

The default value is 0.


Implementation
    public function get paddingTop():Number
    public function set paddingTop(value:Number):void
rightArrowGapproperty 
rightArrowGap:Number

The space, in pixels, between the right arrow skin and the background skin. To have the arrow overlap the background, you may use a negative gap value.

In the following example, the gap between the callout and its right arrow is set to -4 pixels (perhaps to hide a border on the callout's background):

         callout.rightArrowGap = -4;

The default value is 0.


Implementation
    public function get rightArrowGap():Number
    public function set rightArrowGap(value:Number):void
rightArrowSkinproperty 
rightArrowSkin:DisplayObject

The arrow skin to display on the right edge of the callout. This arrow is displayed when the callout is displayed to the left of the region it points at.

In the following example, the callout's right arrow skin is set to an image:

         callout.rightArrowSkin = new Image( texture );

The default value is null.


Implementation
    public function get rightArrowSkin():DisplayObject
    public function set rightArrowSkin(value:DisplayObject):void
stagePaddingproperty 
stagePadding:Number

Quickly sets all stage padding properties to the same value. The stagePadding getter always returns the value of stagePaddingTop, but the other padding values may be different.

The following example gives the stage 20 pixels of padding on all sides:

         Callout.stagePadding = 20;

The default value is 0.


Implementation
    public static function get stagePadding():Number
    public static function set stagePadding(value:Number):void

See also

stagePaddingBottomproperty 
public static var stagePaddingBottom:Number = 0

The padding between a callout and the bottom edge of the stage when the callout is positioned automatically. May be ignored if the callout is too big for the stage.

In the following example, the bottom stage padding will be set to 20 pixels:

         Callout.stagePaddingBottom = 20;

stagePaddingLeftproperty 
public static var stagePaddingLeft:Number = 0

The margin between a callout and the top edge of the stage when the callout is positioned automatically. May be ignored if the callout is too big for the stage.

In the following example, the left stage padding will be set to 20 pixels:

         Callout.stagePaddingLeft = 20;

stagePaddingRightproperty 
public static var stagePaddingRight:Number = 0

The padding between a callout and the right edge of the stage when the callout is positioned automatically. May be ignored if the callout is too big for the stage.

In the following example, the right stage padding will be set to 20 pixels:

         Callout.stagePaddingRight = 20;

stagePaddingTopproperty 
public static var stagePaddingTop:Number = 0

The padding between a callout and the top edge of the stage when the callout is positioned automatically. May be ignored if the callout is too big for the stage.

In the following example, the top stage padding will be set to 20 pixels:

         Callout.stagePaddingTop = 20;

supportedDirectionsproperty 
supportedDirections:String

The directions that the callout may be positioned, relative to its origin. If the callout's origin is not set, this value will be ignored.

The arrowPosition property is related to this one, but they have different meanings and are usually opposites. For example, a callout on the right side of its origin will generally display its left arrow.

In the following example, the callout's supported directions are restricted to up and down:

         callout.supportedDirections = Callout.DIRECTION_VERTICAL;

The default value is Callout.DIRECTION_ANY.


Implementation
    public function get supportedDirections():String
    public function set supportedDirections(value:String):void

See also

topArrowGapproperty 
topArrowGap:Number

The space, in pixels, between the top arrow skin and the background skin. To have the arrow overlap the background, you may use a negative gap value.

In the following example, the gap between the callout and its top arrow is set to -4 pixels (perhaps to hide a border on the callout's background):

         callout.topArrowGap = -4;

The default value is 0.


Implementation
    public function get topArrowGap():Number
    public function set topArrowGap(value:Number):void
topArrowSkinproperty 
topArrowSkin:DisplayObject

The arrow skin to display on the top edge of the callout. This arrow is displayed when the callout is displayed below the region it points at.

In the following example, the callout's top arrow skin is set to an image:

         callout.topArrowSkin = new Image( texture );

The default value is null.


Implementation
    public function get topArrowSkin():DisplayObject
    public function set topArrowSkin(value:DisplayObject):void
Constructor Detail
Callout()Constructor
public function Callout()

Constructor.

Method Detail
autoSizeIfNeeded()method
protected function autoSizeIfNeeded():Boolean

If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself. If the explicitWidth or explicitHeight member variables are set, those value will be used without additional measurement. If one is set, but not the other, the dimension with the explicit value will not be measured, but the other non-explicit dimension will still need measurement.

Calls setSizeInternal() to set up the actualWidth and actualHeight member variables used for layout.

Meant for internal use, and subclasses may override this function with a custom implementation.

Returns
Boolean
close()method 
public function close(dispose:Boolean = false):void

Closes the callout.

Parameters

dispose:Boolean (default = false)

defaultCalloutFactory()method 
public static function defaultCalloutFactory():Callout

The default factory that creates callouts when Callout.show() is called. To use a different factory, you need to set Callout.calloutFactory to a Function instance.

Returns
Callout
show()method 
public static function show(content:DisplayObject, origin:DisplayObject, supportedDirections:String, isModal:Boolean = true, customCalloutFactory:Function = null, customOverlayFactory:Function = null):Callout

Creates a callout, and then positions and sizes it automatically based on an origin rectangle and the specified direction relative to the original. The provided width and height values are optional, and these values may be ignored if the callout cannot be drawn at the specified dimensions.

In the following example, a callout displaying a Label is shown when a Button is triggered:

         button.addEventListener( Event.TRIGGERED, button_triggeredHandler );
                  function button_triggeredHandler( event:Event ):void
         {
             var label:Label = new Label();
             label.text = "Hello World!";
             var button:Button = Button( event.currentTarget );
             Callout.show( label, button );
         }

Parameters

content:DisplayObject
 
origin:DisplayObject
 
supportedDirections:String (default = NaN)
 
isModal:Boolean (default = true)
 
customCalloutFactory:Function (default = null)
 
customOverlayFactory:Function (default = null)

Returns
Callout
Event Detail
close Event
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.CLOSE

Dispatched when the callout is closed.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
datanull
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

Constant Detail
ARROW_POSITION_BOTTOMConstant
public static const ARROW_POSITION_BOTTOM:String = bottom

The arrow will appear on the bottom side of the callout.

See also

ARROW_POSITION_LEFTConstant 
public static const ARROW_POSITION_LEFT:String = left

The arrow will appear on the left side of the callout.

See also

ARROW_POSITION_RIGHTConstant 
public static const ARROW_POSITION_RIGHT:String = right

The arrow will appear on the right side of the callout.

See also

ARROW_POSITION_TOPConstant 
public static const ARROW_POSITION_TOP:String = top

The arrow will appear on the top side of the callout.

See also

DIRECTION_ANYConstant 
public static const DIRECTION_ANY:String = any

The callout may be positioned on any side of the origin region.

See also

DIRECTION_DOWNConstant 
public static const DIRECTION_DOWN:String = down

The callout must be positioned below the origin region.

See also

DIRECTION_HORIZONTALConstant 
public static const DIRECTION_HORIZONTAL:String = horizontal

The callout may be positioned on top or bottom of the origin region.

See also

DIRECTION_LEFTConstant 
public static const DIRECTION_LEFT:String = left

The callout must be positioned to the left side of the origin region.

See also

DIRECTION_RIGHTConstant 
public static const DIRECTION_RIGHT:String = right

The callout must be positioned to the right side of the origin region.

See also

DIRECTION_UPConstant 
public static const DIRECTION_UP:String = up

The callout must be positioned above the origin region.

See also

DIRECTION_VERTICALConstant 
public static const DIRECTION_VERTICAL:String = vertical

The callout may be positioned on top or bottom of the origin region.

See also