Package | feathers.controls |
Class | public class Callout |
Inheritance | Callout FeathersControl starling.display.Sprite |
Subclasses | TextCallout |
Product Version : | Feathers 1.0.0 |
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
Property | Defined By | ||
---|---|---|---|
addedEffect : Function
An optional effect that is activated when the component is added to
the stage. | FeathersControl | ||
calloutFactory : Function [static]
Returns a new Callout instance when
Callout.show() is called. | 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
or the origin'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
or the origin's bounds. | Callout | ||
content : DisplayObject
The display object that will be presented by the callout. | Callout | ||
defaultTextEditorFactory : Function [static]
A function used by all UI controls that support text editor to
create an ITextEditor instance. | FeathersControl | ||
defaultTextRendererFactory : Function [static]
A function used by all UI controls that support text renderers to
create an ITextRenderer instance. | FeathersControl | ||
depth : 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 | ||
effectsSuspended : Boolean [read-only]
Indicates if effects have been suspended. | FeathersControl | ||
explicitHeight : Number [read-only]
The height value explicitly set by passing a value to the
height setter or by calling the setSize()
function. | FeathersControl | ||
explicitMaxHeight : Number [read-only]
The maximum height value explicitly set by passing a value to the
maxHeight setter. | FeathersControl | ||
explicitMaxWidth : Number [read-only]
The maximum width value explicitly set by passing a value to the
maxWidth setter. | FeathersControl | ||
explicitMinHeight : Number [read-only]
The minimum height value explicitly set by passing a value to the
minHeight setter. | FeathersControl | ||
explicitMinWidth : Number [read-only]
The minimum width value explicitly set by passing a value to the
minWidth setter. | FeathersControl | ||
explicitWidth : Number [read-only]
The width value explicitly set by passing a value to the
width setter or to the setSize() method. | FeathersControl | ||
focusInEffect : Function
An optional effect that is activated when the component receives
focus. | FeathersControl | ||
focusManager : IFocusManager
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The current focus manager for this component. | FeathersControl | ||
focusOutEffect : Function
An optional effect that is activated when the component loses focus. | FeathersControl | ||
focusOwner : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Used for associating focusable display objects that are not direct
children with an "owner" focusable display object, such as pop-ups. | FeathersControl | ||
globalStyleProvider : IStyleProvider [static]
The default IStyleProvider for all Callout
components. | Callout | ||
height : Number [override]
The height of the component, in pixels. | FeathersControl | ||
hideEffect : Function
An optional effect that is activated when the component is hidden. | FeathersControl | ||
includeInLayout : Boolean
Determines if the ILayout should use this object or ignore it. | FeathersControl | ||
isCreated : Boolean [read-only]
Determines if the component has been initialized and validated for
the first time. | FeathersControl | ||
isEnabled : Boolean
Indicates whether the control is interactive or not. | FeathersControl | ||
isFocusEnabled : Boolean
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Determines if this component can receive focus. | FeathersControl | ||
isInitialized : Boolean [read-only]
Determines if the component has been initialized yet. | FeathersControl | ||
isQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list. | FeathersControl | ||
isShowingFocus : Boolean [read-only]
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Indicates if the showFocus() method has been called on
the object when it has focus. | FeathersControl | ||
layoutData : ILayoutData
Extra parameters associated with this display object that will be
used by the layout algorithm. | FeathersControl | ||
maintainTouchFocus : Boolean [read-only]
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
If true, the display object should remain in focus,
even if something else is touched. | FeathersControl | ||
maxHeight : Number
The maximum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | ||
maxWidth : Number
The maximum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | ||
minHeight : Number
The minimum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | ||
minTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's
height is smaller than this value, it will be expanded. | FeathersControl | ||
minTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's
width is smaller than this value, it will be expanded. | FeathersControl | ||
minWidth : Number
The minimum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | ||
moveEffect : Function
An optional effect that is activated when the component is moved to
a new position. | FeathersControl | ||
nextDownFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.DOWN is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | ||
nextLeftFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.LEFT is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | ||
nextRightFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.RIGHT is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | ||
nextTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when the tab key is pressed
when a focus manager is enabled. | FeathersControl | ||
nextUpFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.UP is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | ||
origin : DisplayObject
A callout may be positioned relative to another display object, known
as the callout's origin. | Callout | ||
previousTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The previous object that will receive focus when the tab key is
pressed while holding shift when a focus manager is enabled. | FeathersControl | ||
resizeEffect : Function
An optional effect that is activated when the component is resized
with new dimensions. | FeathersControl | ||
showEffect : Function
An optional effect that is activated when the component is shown. | FeathersControl | ||
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 | ||
styleName : String
The concatenated styleNameList, with values separated
by spaces. | FeathersControl | ||
styleNameList : TokenList [read-only]
Contains a list of all "styles" assigned to this control. | FeathersControl | ||
styleProvider : IStyleProvider
When a component initializes, a style provider may be used to set
properties that affect the component's visual appearance. | FeathersControl | ||
supportedPositions : Vector.<String>
The position of the callout, relative to its origin. | Callout | ||
toolTip : String
Text to display in a tool tip to when hovering over this component,
if the ToolTipManager is enabled. | FeathersControl | ||
width : Number [override]
The width of the component, in pixels. | FeathersControl |
Method | Defined By | ||
---|---|---|---|
Callout()
Constructor. | Callout | ||
close(dispose:Boolean = false):void
Closes the callout. | Callout | ||
[static]
The default factory that creates callouts when Callout.show()
is called. | Callout | ||
getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle [override]
Feathers components use an optimized getBounds()
implementation that may sometimes behave differently than regular
Starling display objects. | FeathersControl | ||
hideFocus():void
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
| FeathersControl | ||
initializeNow():void
If the component has not yet initialized, initializes immediately. | FeathersControl | ||
invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending. | FeathersControl | ||
isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not. | FeathersControl | ||
move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single
function call. | FeathersControl | ||
removeFromParentWithEffect(effect:Function, dispose:Boolean = false):void
Plays an effect before removing the component from its parent. | FeathersControl | ||
resetStyleProvider():void
Resets the styleProvider property to its default value,
which is usually the global style provider for the component. | FeathersControl | ||
resumeEffects():void
Indicates that effects should be re-activated after being suspended. | FeathersControl | ||
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, supportedPositions:Vector.<String> = null, 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 | ||
showFocus():void
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
| FeathersControl | ||
suspendEffects():void
Indicates that effects should not be activated temporarily. | FeathersControl | ||
validate():void
Immediately validates the display object, if it is invalid. | FeathersControl |
Method | Defined By | ||
---|---|---|---|
autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. | Callout | ||
clearInvalidationFlag(flag:String):void
Clears an invalidation flag. | FeathersControl | ||
draw():void
Override to customize layout and to adjust properties of children. | FeathersControl | ||
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 | ||
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 | ||
ignoreNextStyleRestriction():void
The next style that is set will not be restricted. | FeathersControl | ||
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 | ||
processStyleRestriction(key:Object):Boolean
Used by setters for properties that are considered "styles" to
determine if the setter has been called directly on the component or
from a style provider. | FeathersControl | ||
refreshFocusIndicator():void
Updates the focus indicator skin by showing or hiding it and
adjusting its position and dimensions. | FeathersControl | ||
saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the
component. | FeathersControl | ||
setInvalidationFlag(flag:String):void
Sets an invalidation flag. | FeathersControl | ||
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of
invalidating or not. | FeathersControl |
Event | Summary | Defined By | ||
---|---|---|---|---|
Dispatched when the callout is closed. | Callout | |||
Dispatched after the component has validated for the first time. | FeathersControl | |||
Dispatched after initialize() has been called, but before the first time that draw() has been called. | FeathersControl | |||
Dispatched when the width or height of the control changes. | FeathersControl |
Style | Defined 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 behind the callout's content. | 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 | ||
focusIndicatorSkin : DisplayObject If this component supports focus, this optional skin will be displayed above the component when showFocus() is called. | FeathersControl | ||
focusPadding : Number Quickly sets all focus padding properties to the same value. | FeathersControl | ||
focusPaddingBottom : Number The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin. | FeathersControl | ||
focusPaddingLeft : Number The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin. | FeathersControl | ||
focusPaddingRight : Number The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin. | FeathersControl | ||
focusPaddingTop : Number The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin. | FeathersControl | ||
horizontalAlign : String The horizontal alignment of the callout, relative to the origin. | Callout | ||
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 | ||
originGap : Number The space, in pixels, between the callout and the 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 | ||
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 | ||
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 | ||
verticalAlign : String The vertical alignment of the callout, relative to the origin. | Callout |
Constant | Defined By | ||
---|---|---|---|
DEFAULT_POSITIONS : Vector.<String> [static]
The default positions used by a callout. | Callout | ||
INVALIDATION_FLAG_ALL : String = "all" [static]
Flag to indicate that everything is invalid and should be redrawn. | FeathersControl | ||
INVALIDATION_FLAG_DATA : String = "data" [static]
Invalidation flag to indicate that the primary data displayed by the
UI control has changed. | FeathersControl | ||
INVALIDATION_FLAG_FOCUS : String = "focus" [static]
Invalidation flag to indicate that the focus of the UI control has
changed. | FeathersControl | ||
INVALIDATION_FLAG_LAYOUT : String = "layout" [static]
Invalidation flag to indicate that the layout of the UI control has
changed. | FeathersControl | ||
INVALIDATION_FLAG_SCROLL : String = "scroll" [static]
Invalidation flag to indicate that the scroll position of the UI
control has changed. | FeathersControl | ||
INVALIDATION_FLAG_SELECTED : String = "selected" [static]
Invalidation flag to indicate that the selection of the UI control
has changed. | FeathersControl | ||
INVALIDATION_FLAG_SIZE : String = "size" [static]
Invalidation flag to indicate that the dimensions of the UI control
have changed. | FeathersControl | ||
INVALIDATION_FLAG_SKIN : String = "skin" [static]
Invalidation flag to indicate that the skin of the UI control has changed. | FeathersControl | ||
INVALIDATION_FLAG_STATE : String = "state" [static]
Invalidation flag to indicate that the state has changed. | FeathersControl | ||
INVALIDATION_FLAG_STYLES : String = "styles" [static]
Invalidation flag to indicate that the styles or visual appearance of
the UI control has changed. | FeathersControl |
calloutFactory | property |
public static var calloutFactory:Function
Returns a new Callout
instance when
Callout.show()
is called. If one wishes to skin the
callout manually or change its behavior, 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; };
Note: the default callout factory sets the following properties:
callout.closeOnTouchBeganOutside = true; callout.closeOnTouchEndedOutside = true; callout.closeOnKeys = new <uint>[Keyboard.BACK, Keyboard.ESCAPE];
See also
calloutOverlayFactory | property |
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
closeOnKeys | property |
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
closeOnTouchBeganOutside | property |
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
or the origin'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
closeOnTouchEndedOutside | property |
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
or the origin'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
content | property |
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
.
public function get content():DisplayObject
public function set content(value:DisplayObject):void
disposeContent | property |
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;
disposeOnSelfClose | property |
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
globalStyleProvider | property |
public static var globalStyleProvider:IStyleProvider
The default IStyleProvider
for all Callout
components.
The default value is null
.
See also
origin | property |
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 will either have
no effect or unexpected behavior, so it is recommended that you
avoid modifying those properties.
Note: The origin
is excluded when using
closeOnTouchBeganOutside
and closeOnTouchEndedOutside
.
In other words, when the origin is touched, and either of these
properties is true
, the callout will not be closed. If
the callout is not displayed modally, and touching the origin opens
the callout, you should check if a callout is already visible. If a
callout is visible, close it. If no callouts are visible, show one.
However, if the callout is modal, the touch will be stopped by the
overlay before it reaches the origin, so this behavior will not apply.
In general, if you use Callout.show()
, you will
rarely need to manually manage the origin
property.
In the following example, the callout's origin is set to a button:
callout.origin = button;
The default value is null
.
public function get origin():DisplayObject
public function set origin(value:DisplayObject):void
See also
stagePadding | property |
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
.
public static function get stagePadding():Number
public static function set stagePadding(value:Number):void
See also
stagePaddingBottom | property |
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;
stagePaddingLeft | property |
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;
stagePaddingRight | property |
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;
stagePaddingTop | property |
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;
supportedPositions | property |
supportedPositions:Vector.<String>
The position of the callout, relative to its origin. Accepts a
Vector.<String>
containing one or more of the
constants from feathers.layout.RelativePosition
or
null
. If null
, the callout will attempt to
position itself using values in the following order:
RelativePosition.BOTTOM
RelativePosition.TOP
RelativePosition.RIGHT
RelativePosition.LEFT
Note: If the callout's origin is not set, the
supportedPositions
property will be ignored.
In the following example, the callout's supported positions are restricted to the top and bottom of the origin:
callout.supportedPositions = new <String>[RelativePosition.TOP, RelativePosition.BOTTOM];
In the following example, the callout's position is restricted to the right of the origin:
callout.supportedPositions = new <String>[RelativePosition.RIGHT];
Note: 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.
The default value is null
.
public function get supportedPositions():Vector.<String>
public function set supportedPositions(value:Vector.<String>):void
See also
Callout | () | Constructor |
public function Callout()
Constructor.
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 saveMeasurements()
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.
ReturnsBoolean |
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.
Callout |
show | () | method |
public static function show(content:DisplayObject, origin:DisplayObject, supportedPositions:Vector.<String> = null, 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.
The supportedPositions
parameter should be a
Vector.<String>
of values from the
feathers.layout.RelativePosition
class. The positions
should be ordered by preference. This parameter is typed as
Object
to allow some deprecated String
values. In a future version of Feathers, the type will change to
Vector.<String>
instead.
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 | |
supportedPositions:Vector.<String> (default = null )
| |
isModal:Boolean (default = true )
| |
customCalloutFactory:Function (default = null )
| |
customOverlayFactory:Function (default = null )
|
Callout |
close | Event |
starling.events.Event
starling.events.Event.CLOSE
Dispatched when the callout is closed.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The 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 . |
data | null |
target | The 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. |
arrowOffset | style |
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
.
See also
verticalAlign | style |
verticalAlign:String
The vertical alignment of the callout, relative to the origin.
Note: The VerticalAlign.JUSTIFY
constant is not supported.
The default value is feathers.layout.VerticalAlign.MIDDLE
.
See also
topArrowSkin | style |
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
.
See also
topArrowGap | style |
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
.
See also
rightArrowSkin | style |
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
.
See also
rightArrowGap | style |
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
.
See also
paddingLeft | style |
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
.
See also
paddingBottom | style |
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
.
See also
paddingRight | style |
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
.
See also
paddingTop | style |
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
.
See also
padding | style |
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
.
See also
originGap | style |
originGap:Number
The space, in pixels, between the callout and the origin.
In the following example, the gap between the callout and its origin is set to 10 pixels:
callout.originGap = 10;
The default value is 0
.
See also
leftArrowSkin | style |
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
.
See also
leftArrowGap | style |
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
.
See also
horizontalAlign | style |
horizontalAlign:String
The horizontal alignment of the callout, relative to the origin.
Note: The HorizontalAlign.JUSTIFY
constant is not supported.
The default value is feathers.layout.HorizontalAlign.CENTER
.
See also
bottomArrowSkin | style |
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
.
See also
bottomArrowGap | style |
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
.
See also
backgroundSkin | style |
backgroundSkin:DisplayObject
The primary background to display behind the callout's content.
In the following example, the callout's background is set to an image:
callout.backgroundSkin = new Image( texture );
The default value is null
.
arrowPosition | style |
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 supportedPositions
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 = RelativePosition.LEFT;
The default value is feathers.layout.RelativePosition.TOP
.
See also
DEFAULT_POSITIONS | Constant |
public static const DEFAULT_POSITIONS:Vector.<String>
The default positions used by a callout.