Packagefeathers.controls.text
Classpublic class BitmapFontTextEditor
InheritanceBitmapFontTextEditor Inheritance BitmapFontTextRenderer Inheritance BaseTextRenderer Inheritance FeathersControl Inheritance starling.display.Sprite
Implements ITextEditor, INativeFocusOwner

Product Version : Feathers 2.0.0

Text that may be edited at runtime by the user with the TextInput component, rendered with bitmap fonts.

The following example shows how to use BitmapFontTextEditor with a TextInput:

var input:TextInput = new TextInput();
input.textEditorFactory = function():ITextEditor
{
    return new BitmapFontTextEditor();
};
this.addChild( input );

Warning: This text editor is intended for use in desktop applications only, and it does not provide support for software keyboards on mobile devices.

See also

feathers.controls.TextInput
Introduction to Feathers text editors
Starling Wiki: Displaying Text with Bitmap Fonts


Public Properties
 PropertyDefined By
 Inheritedbaseline : Number
[read-only] Returns the text baseline measurement, in pixels.
BitmapFontTextRenderer
 InheritedcurrentTextFormat : BitmapFontTextFormat
[read-only] For debugging purposes, the current feathers.text.BitmapFontTextFormat used to render the text.
BitmapFontTextRenderer
  cursorSkin : DisplayObject
The skin that indicates the current position where text may be entered.
BitmapFontTextEditor
 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
 InheriteddisabledTextFormat : BitmapFontTextFormat
Advanced font formatting used to draw the text when the component is disabled, if disabledFontStyles and starling.text.TextFormat cannot be used on the parent component because the other features of bitmap fonts are required.
BitmapFontTextRenderer
  displayAsPassword : Boolean
This property is managed by the TextInput. Determines if the entered text will be masked so that it cannot be seen, such as for a password input.
BitmapFontTextEditor
 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
 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
 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
 InheritedfontStyles : FontStylesSet
The internal font styles used to render the text that are passed down from the parent component.
BaseTextRenderer
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all BitmapFontTextEditor components.
BitmapFontTextEditor
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisCreated : Boolean
[read-only] Determines if the component has been initialized and validated for the first time.
FeathersControl
  isEditable : Boolean
This property is managed by the TextInput. Determines if the text input is editable.
BitmapFontTextEditor
 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
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
  isSelectable : Boolean
This property is managed by the TextInput. If the isEditable property is set to false, the isSelectable property determines if the text is selectable.
BitmapFontTextEditor
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
  maxChars : int
This property is managed by the TextInput. The maximum number of characters that may be entered.
BitmapFontTextEditor
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  nativeFocus : Object
[read-only] An object external to Starling that must be given focus when this Feathers component is given focus by a focus manager.
BitmapFontTextEditor
 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
 InheritednumLines : int
[read-only] The number of text lines in the text renderer.
BitmapFontTextRenderer
  passwordCharCode : int
The character code of the character used to display a password.
BitmapFontTextEditor
 InheritedpixelSnapping : Boolean
Determines if the position of the text should be snapped to the nearest whole pixel when rendered.
BitmapFontTextRenderer
 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
  restrict : String
This property is managed by the TextInput. Limits the set of characters that may be entered.
BitmapFontTextEditor
 InheritedselectedTextFormat : BitmapFontTextFormat
Advanced font formatting used to draw the text when the stateContext is disabled, if selectedFontStyles and starling.text.TextFormat cannot be used on the parent component because the other features of bitmap fonts are required.
BitmapFontTextRenderer
  selectionBeginIndex : int
[read-only] The index of the first character of the selection.
BitmapFontTextEditor
  selectionEndIndex : int
[read-only] The index of the last character of the selection.
BitmapFontTextEditor
  selectionSkin : DisplayObject
The skin that indicates the currently selected range of text.
BitmapFontTextEditor
  setTouchFocusOnEndedPhase : Boolean
[read-only] Determines if the owner should call setFocus() on TouchPhase.ENDED or on TouchPhase.BEGAN.
BitmapFontTextEditor
 InheritedstateContext : IStateContext
When the text renderer observes a state context, the text renderer may change its font styles based on the current state of that context.
BaseTextRenderer
 Inheritedstyle : MeshStyle
The style that is used to render the text's mesh.
BitmapFontTextRenderer
 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
 Inheritedtext : String
The text to render.
BaseTextRenderer
 InheritedtextFormat : BitmapFontTextFormat
Advanced font formatting used to draw the text, if fontStyles and starling.text.TextFormat cannot be used on the parent component because the other features of bitmap fonts are required.
BitmapFontTextRenderer
 InheritedtextureSmoothing : String
A texture smoothing value passed to each character image.
BitmapFontTextRenderer
 InheritedtoolTip : String
Text to display in a tool tip to when hovering over this component, if the ToolTipManager is enabled.
FeathersControl
 InheritedtruncateToFit : Boolean
If word wrap is disabled, and the text is longer than the width of the label, the text may be truncated using truncationText.
BitmapFontTextRenderer
 InheritedtruncationText : String
The text to display at the end of the label if it is truncated.
BitmapFontTextRenderer
 InheriteduseSeparateBatch : Boolean
Determines if the characters are batched normally by Starling or if they're batched separately.
BitmapFontTextRenderer
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
 InheritedwordWrap : Boolean
Determines if the text wraps to the next line when it reaches the width (or max width) of the component.
BaseTextRenderer
Protected Properties
 PropertyDefined By
 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
Public Methods
 MethodDefined By
  
Constructor.
BitmapFontTextEditor
  
clearFocus():void
Removes focus from the text editor.
BitmapFontTextEditor
 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
Gets the advanced BitmapFontTextFormat font formatting passed in using setTextFormatForState() for the specified state.
BitmapFontTextRenderer
 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
measureText(result:Point = null):Point
Measures the text's bounds (without a full validation, if possible).
BitmapFontTextRenderer
 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
Resets the styleProvider property to its default value, which is usually the global style provider for the component.
FeathersControl
  
selectRange(beginIndex:int, endIndex:int):void
Sets the range of selected characters.
BitmapFontTextEditor
  
setFocus(position:Point = null):void
Gives focus to the text editor.
BitmapFontTextEditor
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
 Inherited
setTextFormatForState(state:String, textFormat:BitmapFontTextFormat):void
Sets the advanced BitmapFontTextFormat font formatting to be used by the text renderer when the currentState property of the stateContext matches the specified state value.
BitmapFontTextRenderer
 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
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN that may be overridden in subclasses to perform additional actions when the component receives focus.
FeathersControl
 Inherited
focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT that may be overridden in subclasses to perform additional actions when the component loses focus.
FeathersControl
 Inherited
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
 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 text property changes.BitmapFontTextEditor
 InheritedDispatched after the component has validated for the first time.FeathersControl
  Dispatched when the user presses the Enter key while the editor has focus.BitmapFontTextEditor
  Dispatched when the text editor receives focus.BitmapFontTextEditor
  Dispatched when the text editor loses focus.BitmapFontTextEditor
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
 InheritedDispatched when the width or height of the control changes.FeathersControl
Styles
 StyleDefined By
 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
Public Constants
 ConstantDefined By
 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
cursorSkinproperty
cursorSkin:DisplayObject

The skin that indicates the current position where text may be entered.


Implementation
    public function get cursorSkin():DisplayObject
    public function set cursorSkin(value:DisplayObject):void
displayAsPasswordproperty 
displayAsPassword:Boolean

This property is managed by the TextInput.

Determines if the entered text will be masked so that it cannot be seen, such as for a password input.

In the following example, the text input's text is displayed as a password:

input.displayAsPassword = true;


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

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all BitmapFontTextEditor components.

The default value is null.

See also

isEditableproperty 
isEditable:Boolean

This property is managed by the TextInput.

Determines if the text input is editable. If the text input is not editable, it will still appear enabled.

In the following example, the text input is not editable:

input.isEditable = false;


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

See also

isSelectableproperty 
isSelectable:Boolean

This property is managed by the TextInput.

If the isEditable property is set to false, the isSelectable property determines if the text is selectable. If the isEditable property is set to true, the text will always be selectable.

In the following example, the text input is not selectable:

input.isEditable = false;
input.isSelectable = false;


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

See also

maxCharsproperty 
maxChars:int

This property is managed by the TextInput.

The maximum number of characters that may be entered. If 0, any number of characters may be entered.

In the following example, the text input's maximum characters is specified:

input.maxChars = 10;


Implementation
    public function get maxChars():int
    public function set maxChars(value:int):void

See also

nativeFocusproperty 
nativeFocus:Object  [read-only]

An object external to Starling that must be given focus when this Feathers component is given focus by a focus manager.

This property may return null. When it returns null, the focus manager should treat this display object like any other display object that may receive focus but doesn't implement INativeFocusOwner.

If this property doesn't return a flash.display.InteractiveObject, the class must also implement IAdvancedNativeFocusOwner.


Implementation
    public function get nativeFocus():Object
passwordCharCodeproperty 
passwordCharCode:int

The character code of the character used to display a password.

In the following example, the substitute character for passwords is set to a bullet:

textEditor.displayAsPassword = true;
textEditor.passwordCharCode = "•".charCodeAt(0);

The default value is 42 (asterisk).


Implementation
    public function get passwordCharCode():int
    public function set passwordCharCode(value:int):void

See also

restrictproperty 
restrict:String

This property is managed by the TextInput.

Limits the set of characters that may be entered.

In the following example, the text input's allowed characters are restricted:

input.restrict = "0-9";


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

See also

selectionBeginIndexproperty 
selectionBeginIndex:int  [read-only]

The index of the first character of the selection. If no text is selected, then this is the value of the caret index. This value will always be smaller than selectionEndIndex.


Implementation
    public function get selectionBeginIndex():int

See also

selectionEndIndexproperty 
selectionEndIndex:int  [read-only]

The index of the last character of the selection. If no text is selected, then this is the value of the caret index. This value will always be larger than selectionBeginIndex.


Implementation
    public function get selectionEndIndex():int

See also

selectionSkinproperty 
selectionSkin:DisplayObject

The skin that indicates the currently selected range of text.


Implementation
    public function get selectionSkin():DisplayObject
    public function set selectionSkin(value:DisplayObject):void
setTouchFocusOnEndedPhaseproperty 
setTouchFocusOnEndedPhase:Boolean  [read-only]

Determines if the owner should call setFocus() on TouchPhase.ENDED or on TouchPhase.BEGAN. This is a hack because StageText doesn't like being assigned focus on TouchPhase.BEGAN. In general, most text editors should simply return false.

The default value is false.


Implementation
    public function get setTouchFocusOnEndedPhase():Boolean
Constructor Detail
BitmapFontTextEditor()Constructor
public function BitmapFontTextEditor()

Constructor.

Method Detail
clearFocus()method
public function clearFocus():void

Removes focus from the text editor.

selectRange()method 
public function selectRange(beginIndex:int, endIndex:int):void

Sets the range of selected characters. If both values are the same, the text insertion position is changed and nothing is selected.

Parameters

beginIndex:int
 
endIndex:int

setFocus()method 
public function setFocus(position:Point = null):void

Gives focus to the text editor. Includes an optional position which may be used by the text editor to determine the cursor position. The position may be outside of the editors bounds.

Parameters

position:Point (default = null)

Event Detail
change Event
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.CHANGE

Dispatched when the text property changes.

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

enter Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.ENTER

Dispatched when the user presses the Enter key while the editor has focus.

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.

The FeathersEventType.ENTER event type is meant to be used when the enter key has been pressed in an input control.
focusIn Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.FOCUS_IN

Dispatched when the text editor receives focus.

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.

The FeathersEventType.FOCUS_IN event type is used by Feathers components to indicate when they have received focus.
focusOut Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.FOCUS_OUT

Dispatched when the text editor loses focus.

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.

The FeathersEventType.FOCUS_OUT event type is used by Feathers components to indicate when they have lost focus.