Packagefeathers.controls
Classpublic class Toast
InheritanceToast Inheritance FeathersControl Inheritance starling.display.Sprite

Product Version : Feathers 4.0.0

Displays a notification-like message in a popup over the rest of your app's content. May contain a message and optional actions, or completely custom content.

In the following example, a toast displaying a message and actions is triggered:

button.addEventListener( Event.TRIGGERED, button_triggeredHandler );

function button_triggeredHandler( event:Event ):void
{
    Toast.showMessageWithActions( "Item deleted", new ArrayCollection([{ label: "Undo" }]) );
}

Beta Component: This is a new component, and its APIs may need some changes between now and the next version of Feathers to account for overlooked requirements or other issues. Upgrading to future versions of Feathers may involve manual changes to your code that uses this component. The Feathers deprecation policy will not go into effect until this component's status is upgraded from beta to stable.

See also

How to use the Feathers Toast component
showMessage()
showMessageWithActions()
showContent()


Public Properties
 PropertyDefined By
  actions : IListCollection
The data provider of the toast's ButtonGroup.
Toast
  actionsFactory : Function
A function used to generate the toast's button group sub-component.
Toast
 InheritedaddedEffect : Function
An optional effect that is activated when the component is added to the stage.
FeathersControl
  closeEffect : Function
An optional effect that is activated when the toast is closed.
Toast
  containerFactory : Function
[static] Create a container for toasts that is added to the pop-up manager.
Toast
  content : DisplayObject
Optional custom content to display in the toast.
Toast
 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
Determines if the toast's content will be disposed when the toast is disposed.
Toast
  disposeOnSelfClose : Boolean
Determines if the toast will be disposed when close() is called internally.
Toast
 InheritedeffectsSuspended : Boolean
[read-only] Indicates if effects have been suspended.
FeathersControl
 InheritedexplicitHeight : Number
[read-only] The height value explicitly set by passing a value to the height setter or by calling the setSize() function.
FeathersControl
 InheritedexplicitMaxHeight : Number
[read-only] The maximum height value explicitly set by passing a value to the maxHeight setter.
FeathersControl
 InheritedexplicitMaxWidth : Number
[read-only] The maximum width value explicitly set by passing a value to the maxWidth setter.
FeathersControl
 InheritedexplicitMinHeight : Number
[read-only] The minimum height value explicitly set by passing a value to the minHeight setter.
FeathersControl
 InheritedexplicitMinWidth : Number
[read-only] The minimum width value explicitly set by passing a value to the minWidth setter.
FeathersControl
 InheritedexplicitWidth : Number
[read-only] The width value explicitly set by passing a value to the width setter or to the setSize() method.
FeathersControl
 InheritedfocusInEffect : Function
An optional effect that is activated when the component receives focus.
FeathersControl
 InheritedfocusManager : 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
 InheritedfocusOutEffect : Function
An optional effect that is activated when the component loses focus.
FeathersControl
 InheritedfocusOwner : 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 Toast components.
Toast
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedhideEffect : Function
An optional effect that is activated when the component is hidden.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
  isClosing : Boolean
[read-only] Indicates if the toast is currently closing.
Toast
 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
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
 InheritedisInitialized : Boolean
[read-only] Determines if the component has been initialized yet.
FeathersControl
  isOpen : Boolean
[read-only] Indicates if the toast is currently open.
Toast
  isOpening : Boolean
[read-only] Indicates if the toast is currently opening.
Toast
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
 InheritedisShowingFocus : 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
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
 InheritedmaintainTouchFocus : 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
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  maxVisibleToasts : int
[static] The maximum number of toasts that can be displayed simultaneously.
Toast
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  message : String
The toast's main text content.
Toast
  messageFactory : Function
A function used to instantiate the toast's message text renderer sub-component.
Toast
 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
 InheritedmoveEffect : Function
An optional effect that is activated when the component is moved to a new position.
FeathersControl
 InheritednextDownFocus : 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
 InheritednextLeftFocus : 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
 InheritednextRightFocus : 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
 InheritednextTabFocus : 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
 InheritednextUpFocus : 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
  openEffect : Function
An optional effect that is activated when the toast is opened.
Toast
 InheritedpreviousTabFocus : 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
  queueMode : String
[static] Determines how timeouts are treated when toasts need to be queued up because there are already maxVisibleToasts visible.
Toast
 InheritedresizeEffect : Function
An optional effect that is activated when the component is resized with new dimensions.
FeathersControl
 InheritedshowEffect : Function
An optional effect that is activated when the component is shown.
FeathersControl
 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
  timeout : Number
The time, in seconds, when the toast will automatically close.
Toast
  toastFactory : Function
[static] Used to create a new Toast instance in the showMessage(), showMessageWithActions(), or showContent() functions.
Toast
 InheritedtoolTip : String
Text to display in a tool tip to when hovering over this component, if the ToolTipManager is enabled.
FeathersControl
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
Protected Properties
 PropertyDefined By
  actionsGroup : ButtonGroup = null
The actions button group sub-component.
Toast
  actionsStyleName : String = "feathers-toast-actions"
The value added to the styleNameList of the toast's actions button group.
Toast
 InheritedactualHeight : Number = 0
The final height value that should be used for layout.
FeathersControl
 InheritedactualMinHeight : Number = 0
The final minimum height value that should be used for layout.
FeathersControl
 InheritedactualMinWidth : Number = 0
The final minimum width 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 styleProvider property is set to this value.
FeathersControl
  messageStyleName : String = "feathers-toast-message"
The value added to the styleNameList of the toast's message text renderer.
Toast
  messageTextRenderer : ITextRenderer = null
The message text renderer sub-component.
Toast
Public Methods
 MethodDefined By
  
Constructor.
Toast
  
close(dispose:Boolean = true):void
Closes the toast and optionally disposes it.
Toast
  
[static] The default factory that creates the action button group.
Toast
 Inherited
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
 Inherited
hideFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
 Inherited
If the component has not yet initialized, initializes immediately.
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
removeFromParentWithEffect(effect:Function, dispose:Boolean = false):void
Plays an effect before removing the component from its parent.
FeathersControl
 Inherited
Resets the styleProvider property to its default value, which is usually the global style provider for the component.
FeathersControl
 Inherited
Indicates that effects should be re-activated after being suspended.
FeathersControl
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
  
showContent(content:DisplayObject, timeout:Number = 4, toastFactory:Function = null):Toast
[static] Shows a toast with custom content.
Toast
 Inherited
showFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
  
showMessage(message:String, timeout:Number = 4, toastFactory:Function = null):Toast
[static] Shows a toast with a simple text message.
Toast
  
showMessageWithActions(message:String, actions:IListCollection, timeout:Number = 4, toastFactory:Function = null):Toast
[static] Shows a toast with a text message and some action buttons.
Toast
  
showToast(toast:Toast, timeout:Number):Toast
[static] Shows a toast instance.
Toast
 Inherited
Indicates that effects should not be activated temporarily.
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.
Toast
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
  
Creates and adds the actionsGroup sub-component and removes the old instance, if one exists.
Toast
  
Creates and adds the messageTextRenderer sub-component and removes the old instance, if one exists.
Toast
 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
The next style that is set will not be restricted.
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
  
Positions and sizes the toast's content.
Toast
 Inherited
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
 Inherited
Updates the focus indicator skin by showing or hiding it and adjusting its position and dimensions.
FeathersControl
 Inherited
saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the component.
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 toast is closed.Toast
 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
  Dispatched when the toast is opened.Toast
 InheritedDispatched when the width or height of the control changes.FeathersControl
Styles
 StyleDefined By
  
backgroundSkin : DisplayObject
The primary background to display behind the toast's content.
Toast
  
A style name to add to the toast's actions button group sub-component.
Toast
  
A style name to add to the toast's message text renderer sub-component.
Toast
  
disabledFontStyles : TextFormat
The font styles used to display the toast's message when the button is disabled.
Toast
 Inherited
focusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.
FeathersControl
 Inherited
focusPadding : Number
Quickly sets all focus padding properties to the same value.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.
FeathersControl
  
fontStyles : TextFormat
The font styles used to display the toast's message.
Toast
  
gap : Number
The space, in pixels, between the message text renderer and the actions button group.
Toast
  
minGap : Number
If the value of the gap property is Number.POSITIVE_INFINITY, meaning that the gap will fill as much space as possible, the final calculated value will not be smaller than the value of the minGap property.
Toast
  
padding : Number
Quickly sets all padding properties to the same value.
Toast
  
paddingBottom : Number
The minimum space, in pixels, between the toast's bottom edge and the toast's content.
Toast
  
paddingLeft : Number
The minimum space, in pixels, between the toast's left edge and the toast's content.
Toast
  
paddingRight : Number
The minimum space, in pixels, between the toast's right edge and the toast's content.
Toast
  
paddingTop : Number
The minimum space, in pixels, between the toast's top edge and the toast's content.
Toast
Public Constants
 ConstantDefined By
  DEFAULT_CHILD_STYLE_NAME_ACTIONS : String = "feathers-toast-actions"
[static] The default value added to the styleNameList of the actions button group.
Toast
  DEFAULT_CHILD_STYLE_NAME_MESSAGE : String = "feathers-toast-message"
[static] The default value added to the styleNameList of the message text renderer.
Toast
 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
actionsproperty
actions:IListCollection

The data provider of the toast's ButtonGroup.


Implementation
    public function get actions():IListCollection
    public function set actions(value:IListCollection):void
actionsFactoryproperty 
actionsFactory:Function

A function used to generate the toast's button group sub-component. The button group must be an instance of ButtonGroup. This factory can be used to change properties on the button group when it is first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to set skins and other styles on the button group.

The function should have the following signature:

function():ButtonGroup

In the following example, a custom button group factory is provided to the toast:

toast.actionsFactory = function():ButtonGroup
{
    return new ButtonGroup();
};

The default value is null.


Implementation
    public function get actionsFactory():Function
    public function set actionsFactory(value:Function):void

See also

actionsGroupproperty 
protected var actionsGroup:ButtonGroup = null

The actions button group sub-component.

For internal use in subclasses.

actionsStyleNameproperty 
protected var actionsStyleName:String = "feathers-toast-actions"

The value added to the styleNameList of the toast's actions button group. This variable is protected so that sub-classes can customize the actions style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_ACTIONS.

See also

closeEffectproperty 
closeEffect:Function

An optional effect that is activated when the toast is closed.

In the following example, a close effect fades the toast's alpha property from 1 to 0:

toast.closeEffect = Fade.createFadeBetweenEffect(1, 0);

A number of animated effects may be found in the feathers.motion package. However, you are not limited to only these effects. It's possible to create custom effects too.

A custom effect function should have the following signature:

function(target:DisplayObject):IEffectContext

The IEffectContext is used by the component to control the effect, performing actions like playing the effect, pausing it, or cancelling it.

Custom animated effects that use starling.display.Tween typically return a TweenEffectContext. In the following example, we recreate the Fade.createFadeBetweenEffect() used in the previous example.

toast.closeEffect = function(target:DisplayObject):IEffectContext
{
    toast.alpha = 1;
    var tween:Tween = new Tween(target, 0.5, Transitions.EASE_OUT);
    tween.fadeTo(0);
    return new TweenEffectContext(target, tween);
};

The default value is null.


Implementation
    public function get closeEffect():Function
    public function set closeEffect(value:Function):void

See also

containerFactoryproperty 
containerFactory:Function

Create a container for toasts that is added to the pop-up manager. Useful for customizing the layout of toasts.

This function is expected to have the following signature:

function():DisplayObjectContainer

The following example shows how to create a custom toast container:

Toast.containerFactory = function():DisplayObjectContainer
{
    var container:LayoutGroup = new LayoutGroup();
    container.layout = new VerticalLayout();
    return container;
};


Implementation
    public static function get containerFactory():Function
    public static function set containerFactory(value:Function):void

See also

contentproperty 
content:DisplayObject

Optional custom content to display in the toast.


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

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

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

toast.disposeContent = false;

The default value is true.


Implementation
    public function get disposeContent():Boolean
    public function set disposeContent(value:Boolean):void

See also

disposeOnSelfCloseproperty 
disposeOnSelfClose:Boolean

Determines if the toast will be disposed when close() is called internally. Close may be called internally in a variety of cases, depending on values such as timeout and actions. If set to false, you may reuse the toast later by passing it to Toast.showToast().

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

toast.disposeOnSelfClose = false;

The default value is true.


Implementation
    public function get disposeOnSelfClose():Boolean
    public function set disposeOnSelfClose(value:Boolean):void

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all Toast components.

The default value is null.

See also

isClosingproperty 
isClosing:Boolean  [read-only]

Indicates if the toast is currently closing.


Implementation
    public function get isClosing():Boolean

See also

isOpenproperty 
isOpen:Boolean  [read-only]

Indicates if the toast is currently open. Does not change from false to true until the open effect has completed. Similarly, does not change from true to false until the close effect has completed.


Implementation
    public function get isOpen():Boolean

See also

isOpeningproperty 
isOpening:Boolean  [read-only]

Indicates if the toast is currently opening.


Implementation
    public function get isOpening():Boolean

See also

maxVisibleToastsproperty 
maxVisibleToasts:int

The maximum number of toasts that can be displayed simultaneously. Additional toasts will be queued up to display after the current toasts are removed.


Implementation
    public static function get maxVisibleToasts():int
    public static function set maxVisibleToasts(value:int):void
messageproperty 
message:String

The toast's main text content.


Implementation
    public function get message():String
    public function set message(value:String):void
messageFactoryproperty 
messageFactory:Function

A function used to instantiate the toast's message text renderer sub-component. By default, the toast will use the global text renderer factory, FeathersControl.defaultTextRendererFactory(), to create the message text renderer. The message text renderer must be an instance of ITextRenderer. This factory can be used to change properties on the message text renderer when it is first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to style the message text renderer.

If you are not using a theme, the message factory can be used to provide skin the message text renderer with appropriate text styles.

The factory should have the following function signature:

function():ITextRenderer

In the following example, a custom message factory is passed to the toast:

toast.messageFactory = function():ITextRenderer
{
    var messageRenderer:TextFieldTextRenderer = new TextFieldTextRenderer();
    messageRenderer.textFormat = new TextFormat( "_sans", 12, 0xff0000 );
    return messageRenderer;
}

The default value is null.


Implementation
    public function get messageFactory():Function
    public function set messageFactory(value:Function):void

See also

messageStyleNameproperty 
protected var messageStyleName:String = "feathers-toast-message"

The value added to the styleNameList of the toast's message text renderer. This variable is protected so that sub-classes can customize the message style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_MESSAGE.

See also

messageTextRendererproperty 
protected var messageTextRenderer:ITextRenderer = null

The message text renderer sub-component.

For internal use in subclasses.

openEffectproperty 
openEffect:Function

An optional effect that is activated when the toast is opened.

In the following example, a open effect fades the toast's alpha property from 0 to 1:

toast.openEffect = Fade.createFadeBetweenEffect(0, 1);

A number of animated effects may be found in the feathers.motion package. However, you are not limited to only these effects. It's possible to create custom effects too.

A custom effect function should have the following signature:

function(target:DisplayObject):IEffectContext

The IEffectContext is used by the component to control the effect, performing actions like playing the effect, pausing it, or cancelling it.

Custom animated effects that use starling.display.Tween typically return a TweenEffectContext. In the following example, we recreate the Fade.createFadeBetweenEffect() used in the previous example.

toast.closeEffect = function(target:DisplayObject):IEffectContext
{
    toast.alpha = 0;
    var tween:Tween = new Tween(target, 0.5, Transitions.EASE_OUT);
    tween.fadeTo(1);
    return new TweenEffectContext(target, tween);
};

The default value is null.


Implementation
    public function get openEffect():Function
    public function set openEffect(value:Function):void

See also

queueModeproperty 
queueMode:String

Determines how timeouts are treated when toasts need to be queued up because there are already maxVisibleToasts visible. Either waits until the timeout is complete, or immediately closes an existing toast and shows the queued toast after the closing effect is done.


Implementation
    public static function get queueMode():String
    public static function set queueMode(value:String):void
timeoutproperty 
timeout:Number

The time, in seconds, when the toast will automatically close. Set to Number.POSITIVE_INFINITY to require the toast to be closed manually.

The default value is Number.POSITIVE_INFINITY.


Implementation
    public function get timeout():Number
    public function set timeout(value:Number):void
toastFactoryproperty 
toastFactory:Function

Used to create a new Toast instance in the showMessage(), showMessageWithActions(), or showContent() functions. Useful for customizing the styles of toasts without a theme.

This function is expected to have the following signature:

function():Toast

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

Toast.toastFactory = function():Toast
{
    var toast:Toast = new Toast();
    toast.backgroundSkin = new Image( texture );
    toast.padding = 10;
    return toast;
};


Implementation
    public static function get toastFactory():Function
    public static function set toastFactory(value:Function):void

See also

Constructor Detail
Toast()Constructor
public function Toast()

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 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.

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

Closes the toast and optionally disposes it. If a closeEffect has been specified, it will be played.

Parameters

dispose:Boolean (default = true)

See also

createActions()method 
protected function createActions():void

Creates and adds the actionsGroup sub-component and removes the old instance, if one exists.

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

See also

createMessage()method 
protected function createMessage():void

Creates and adds the messageTextRenderer sub-component and removes the old instance, if one exists.

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

See also

defaultActionsFactory()method 
public static function defaultActionsFactory():ButtonGroup

The default factory that creates the action button group. To use a different factory, you need to set actionsFactory to a Function instance.

Returns
ButtonGroup
layoutChildren()method 
protected function layoutChildren():void

Positions and sizes the toast's content.

For internal use in subclasses.

showContent()method 
public static function showContent(content:DisplayObject, timeout:Number = 4, toastFactory:Function = null):Toast

Shows a toast with custom content.

Parameters

content:DisplayObject
 
timeout:Number (default = 4)
 
toastFactory:Function (default = null)

Returns
Toast

See also

showMessage()method 
public static function showMessage(message:String, timeout:Number = 4, toastFactory:Function = null):Toast

Shows a toast with a simple text message.

Parameters

message:String
 
timeout:Number (default = 4)
 
toastFactory:Function (default = null)

Returns
Toast

See also

showMessageWithActions()method 
public static function showMessageWithActions(message:String, actions:IListCollection, timeout:Number = 4, toastFactory:Function = null):Toast

Shows a toast with a text message and some action buttons.

Parameters

message:String
 
actions:IListCollection
 
timeout:Number (default = 4)
 
toastFactory:Function (default = null)

Returns
Toast

See also

showToast()method 
public static function showToast(toast:Toast, timeout:Number):Toast

Shows a toast instance.

Parameters

toast:Toast
 
timeout:Number

Returns
Toast

See also

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

Dispatched when the toast is closed. This event is dispatched after the closeEffect has completed, if one is defined.

The data property of the event object will contain the item from the ButtonGroup data provider for the button that is triggered. If no button is triggered, then the data property will be null.

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.
dataThe triggered button, or null
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.

See also

open Event  
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.OPEN

Dispatched when the toast is opened. This event is dispatched after the openEffect has completed, if one is defined.

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.

See also

Style Detail
paddingLeftstyle
paddingLeft:Number

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

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

toast.paddingLeft = 20;

The default value is 0.

See also

paddingBottomstyle 
paddingBottom:Number

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

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

toast.paddingBottom = 20;

The default value is 0.

See also

paddingRightstyle 
paddingRight:Number

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

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

toast.paddingRight = 20;

The default value is 0.

See also

paddingTopstyle 
paddingTop:Number

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

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

toast.paddingTop = 20;

The default value is 0.

See also

paddingstyle 
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 toast is set to 20 pixels:

toast.padding = 20;

The default value is 0.

See also

minGapstyle 
minGap:Number

If the value of the gap property is Number.POSITIVE_INFINITY, meaning that the gap will fill as much space as possible, the final calculated value will not be smaller than the value of the minGap property.

The following example ensures that the gap is never smaller than 20 pixels:

toast.gap = Number.POSITIVE_INFINITY;
toast.minGap = 20;

The default value is 0.

See also

gapstyle 
gap:Number

The space, in pixels, between the message text renderer and the actions button group. Applies to either horizontal or vertical spacing, depending on the value of actionsPosition.

If gap is set to Number.POSITIVE_INFINITY, the message and actions will be positioned as far apart as possible. In other words, they will be positioned at the edges of the toast, adjusted for padding.

The following example creates a gap of 50 pixels between the label and the icon:

toast.gap = 50;

The default value is 0.

See also

fontStylesstyle 
fontStyles:TextFormat

The font styles used to display the toast's message.

In the following example, the font styles are customized:

toast.fontStyles = new TextFormat( "Helvetica", 20, 0xcc0000 );

Note: The starling.text.TextFormat class defines a number of common font styles, but the text renderer being used may support a larger number of ways to be customized. Use the messageFactory to set more advanced styles.

The default value is null.

See also

disabledFontStylesstyle 
disabledFontStyles:TextFormat

The font styles used to display the toast's message when the button is disabled.

In the following example, the disabled font styles are customized:

toast.disabledFontStyles = new TextFormat( "Helvetica", 20, 0x999999 );

Note: The starling.text.TextFormat class defines a number of common font styles, but the text renderer being used may support a larger number of ways to be customized. Use the messageFactory to set more advanced styles on the text renderer.

The default value is null.

See also

customLabelStyleNamestyle 
customLabelStyleName:String

A style name to add to the toast's message text renderer sub-component. Typically used by a theme to provide different styles to different toasts.

In the following example, a custom message style name is passed to the toast:

toast.customMessageStyleName = "my-custom-toast-message";

In your theme, you can target this sub-component style name to provide different styles than the default:

getStyleProviderForClass( BitmapFontTextRenderer ).setFunctionForStyleName( "my-custom-toast-message", setCustomToastMessageStyles );

The default value is null.

See also

customActionsStyleNamestyle 
customActionsStyleName:String

A style name to add to the toast's actions button group sub-component. Typically used by a theme to provide different styles to different toasts.

In the following example, a custom actions button group style name is passed to the toast:

toast.customActionsStyleName = "my-custom-toast-actions";

In your theme, you can target this sub-component style name to provide different styles than the default:

getStyleProviderForClass( ButtonGroup ).setFunctionForStyleName( "my-custom-toast-actions", setCustomToastActionsStyles );

The default value is null.

See also

backgroundSkinstyle 
backgroundSkin:DisplayObject

The primary background to display behind the toast's content.

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

toast.backgroundSkin = new Image( texture );

The default value is null.

Constant Detail
DEFAULT_CHILD_STYLE_NAME_ACTIONSConstant
public static const DEFAULT_CHILD_STYLE_NAME_ACTIONS:String = "feathers-toast-actions"

The default value added to the styleNameList of the actions button group.

See also

DEFAULT_CHILD_STYLE_NAME_MESSAGEConstant 
public static const DEFAULT_CHILD_STYLE_NAME_MESSAGE:String = "feathers-toast-message"

The default value added to the styleNameList of the message text renderer.

See also