Package | feathers.controls |
Class | public class BasicButton |
Inheritance | BasicButton FeathersControl starling.display.Sprite |
Implements | IStateContext |
Subclasses | Button |
Product Version : | Feathers 3.0.0 |
feathers.controls.Button
instead.
See also
Property | Defined By | ||
---|---|---|---|
addedEffect : Function
An optional effect that is activated when the component is added to
the stage. | FeathersControl | ||
currentState : String [read-only]
The current state of the button. | BasicButton | ||
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 | ||
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 BasicButton
components. | BasicButton | ||
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 | ||
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 | ||
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 | ||
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 |
Property | Defined By | ||
---|---|---|---|
actualHeight : Number = 0
The final height value that should be used for layout. | FeathersControl | ||
actualMinHeight : Number = 0
The final minimum height value that should be used for layout. | FeathersControl | ||
actualMinWidth : Number = 0
The final minimum width value that should be used for layout. | FeathersControl | ||
actualWidth : Number = 0
The final width value that should be used for layout. | FeathersControl | ||
currentSkin : DisplayObject
The currently visible skin. | BasicButton | ||
defaultStyleProvider : IStyleProvider [read-only]
When the FeathersControl constructor is called, the
styleProvider property is set to this value. | FeathersControl |
Method | Defined By | ||
---|---|---|---|
Constructor. | BasicButton | ||
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 | ||
getSkinForState(state:String):DisplayObject
Gets the skin to be used by the button when its
currentState property matches the specified state value. | BasicButton | ||
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 | ||
setSkinForState(state:String, skin:DisplayObject):void
Sets the skin to be used by the button when its
currentState property matches the specified state value. | BasicButton | ||
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. | BasicButton | ||
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 | ||
refreshSkin():void
Sets the currentSkin property. | BasicButton | ||
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 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 | |||
Dispatched when the display object's state changes. | BasicButton | |||
Dispatched when the the user taps or clicks the button. | BasicButton |
Style | Defined By | ||
---|---|---|---|
defaultSkin : DisplayObject The skin used when no other skin is defined for the current state. | BasicButton | ||
disabledSkin : DisplayObject The skin used for the button's disabled state. | BasicButton | ||
downSkin : DisplayObject The skin used for the button's down state. | BasicButton | ||
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 | ||
hoverSkin : DisplayObject The skin used for the button's hover state. | BasicButton | ||
keepDownStateOnRollOut : Boolean Determines if a pressed button should remain in the down state if a touch moves outside of the button's bounds. | BasicButton | ||
upSkin : DisplayObject The skin used for the button's up state. | BasicButton |
currentSkin | property |
protected var currentSkin:DisplayObject
The currently visible skin. The value will be null
if
there is no currently visible skin.
For internal use in subclasses.
currentState | property |
currentState:String
[read-only] The current state of the button.
public function get currentState():String
See also
globalStyleProvider | property |
public static var globalStyleProvider:IStyleProvider
The default IStyleProvider
for all BasicButton
components.
The default value is null
.
See also
BasicButton | () | Constructor |
public function BasicButton()
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 |
getSkinForState | () | method |
public function getSkinForState(state:String):DisplayObject
Gets the skin to be used by the button when its
currentState
property matches the specified state value.
If a skin is not defined for a specific state, returns
null
.
Parameters
state:String |
DisplayObject |
See also
refreshSkin | () | method |
protected function refreshSkin():void
Sets the currentSkin
property.
For internal use in subclasses.
setSkinForState | () | method |
public function setSkinForState(state:String, skin:DisplayObject):void
Sets the skin to be used by the button when its
currentState
property matches the specified state value.
If a skin is not defined for a specific state, the value of the
defaultSkin
property will be used instead.
Parameters
state:String | |
skin:DisplayObject |
See also
stateChange | Event |
starling.events.Event
feathers.events.FeathersEventType.STATE_CHANGE
Dispatched when the display object's state changes.
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. |
FeathersEventType.STATE_CHANGE
event type is used by
Feathers classes that implement the IStateContext
interface.
See also
triggered | Event |
starling.events.Event
starling.events.Event.TRIGGERED
Dispatched when the the user taps or clicks the button. The touch must remain within the bounds of the button on release to register as a tap or a click. If focus management is enabled, the button may also be triggered by pressing the spacebar while the button has focus.
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. |
upSkin | style |
upSkin:DisplayObject
The skin used for the button's up state. If null
, then
defaultSkin
is used instead.
This property will be ignored if a function is passed to the
stateToSkinFunction
property.
The following example gives the button a skin for the up state:
button.upSkin = new Image( texture );
Alternatively, you may use setSkinForState()
with
ButtonState.UP
to set the same skin:
var skin:Image = new Image( texture ); button.setSkinForState( ButtonState.UP, skin );
The default value is null
.
See also
keepDownStateOnRollOut | style |
keepDownStateOnRollOut:Boolean
Determines if a pressed button should remain in the down state if a
touch moves outside of the button's bounds. Useful for controls like
Slider
and ToggleSwitch
to keep a thumb in
the down state while it is dragged around.
The following example ensures that the button's down state remains active when the button is pressed but the touch moves outside the button's bounds:
button.keepDownStateOnRollOut = true;
The default value is false
.
hoverSkin | style |
hoverSkin:DisplayObject
The skin used for the button's hover state. If null
, then
defaultSkin
is used instead.
This property will be ignored if a function is passed to the
stateToSkinFunction
property.
The following example gives the button a skin for the hover state:
button.hoverSkin = new Image( texture );
Alternatively, you may use setSkinForState()
with
ButtonState.HOVER
to set the same skin:
var skin:Image = new Image( texture ); button.setSkinForState( ButtonState.HOVER, skin );
The default value is null
.
See also
downSkin | style |
downSkin:DisplayObject
The skin used for the button's down state. If null
, then
defaultSkin
is used instead.
This property will be ignored if a function is passed to the
stateToSkinFunction
property.
The following example gives the button a skin for the down state:
button.downSkin = new Image( texture );
Alternatively, you may use setSkinForState()
with
ButtonState.DOWN
to set the same skin:
var skin:Image = new Image( texture ); button.setSkinForState( ButtonState.DOWN, skin );
The default value is null
.
See also
disabledSkin | style |
disabledSkin:DisplayObject
The skin used for the button's disabled state. If null
,
then defaultSkin
is used instead.
This property will be ignored if a function is passed to the
stateToSkinFunction
property.
The following example gives the button a skin for the disabled state:
button.disabledSkin = new Image( texture );
Alternatively, you may use setSkinForState()
with
ButtonState.DISABLED
to set the same skin:
var skin:Image = new Image( texture ); button.setSkinForState( ButtonState.DISABLED, skin );
The default value is null
.
See also
defaultSkin | style |
defaultSkin:DisplayObject
The skin used when no other skin is defined for the current state. Intended to be used when multiple states should share the same skin.
The following example gives the button a default skin to use for all states when no specific skin is available:
button.defaultSkin = new Image( texture );
The default value is null
.
See also