Apache Flex 4.16.1 API Reference | All Packages | All Classes | Index | Frames No Frames |
IFocusManagerComponent

Package | mx.managers
Interface | public interface IFocusManagerComponent
Implementors | Accordion, AdvancedListBase, Button, ButtonBar, ButtonBar, ButtonBase, ChartBase, ComboBase, DataGrid, DateChooser, DateField, HTML, List, ListBase, MenuBar, NumericStepper, NumericStepper, RichEditableText, Scroller, SkinnableTextBase, SliderBase, Spinner, TabBar, TabNavigator, TextArea, ViewMenu

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The IFocusManagerComponent interface defines the interface that focusable components must implement in order to receive focus from the FocusManager. The base implementations of this interface are in the UIComponent class, but UIComponent does not implement the full IFocusManagerComponent interface since some UIComponents are not intended to receive focus. Therefore, to make a UIComponent-derived component be a valid focusable component, you simply add "implements IFocusManagerComponent" to the class definition.

Public Properties

| Property | Defined By
--- | --- | ---
|  | focusEnabled : Boolean A flag that indicates whether the component can receive focus when selected. | IFocusManagerComponent
|  | hasFocusableChildren : Boolean A flag that indicates whether child objects can receive focus. | IFocusManagerComponent
|  | mouseFocusEnabled : Boolean [read-only] A flag that indicates whether the component can receive focus when selected with the mouse. | IFocusManagerComponent
|  | tabFocusEnabled : Boolean [read-only] A flag that indicates whether pressing the Tab key eventually moves focus to this component. | IFocusManagerComponent
|  | tabIndex : int If tabFocusEnabled, the order in which the component receives focus. | IFocusManagerComponent

Public Methods

| Method | Defined By
--- | --- | ---
|  | drawFocus(isFocused:Boolean):void Called by the FocusManager when the component receives focus. | IFocusManagerComponent
|  | setFocus():void Called by the FocusManager when the component receives focus. | IFocusManagerComponent

Property Detail

focusEnabled | property

`focusEnabled:Boolean`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

A flag that indicates whether the component can receive focus when selected.

As an optimization, if a child component in your component implements the IFocusManagerComponent interface, and you never want it to receive focus, you can set `focusEnabled` to `false` before calling `addChild()` on the child component.

This will cause the FocusManager to ignore this component and not monitor it for changes to the `tabFocusEnabled`, `hasFocusableChildren`, and `mouseFocusEnabled` properties. This also means you cannot change this value after `addChild()` and expect the FocusManager to notice.

Note: It does not mean that you cannot give this object focus programmatically in your `setFocus()` method; it just tells the FocusManager to ignore this IFocusManagerComponent component in the Tab and mouse searches.

Implementation
`public function get focusEnabled():Boolean`
`public function set focusEnabled(value:Boolean):void`

hasFocusableChildren | property |

`hasFocusableChildren:Boolean`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

A flag that indicates whether child objects can receive focus.

Note: This property is similar to the `tabChildren` property used by Flash Player. Use the `hasFocusableChildren` property with Flex applications. Do not use the `tabChildren` property.

This property is usually `false` because most components either receive focus themselves or delegate focus to a single internal sub-component and appear as if the component has received focus. For example, a TextInput control contains a focusable child RichEditableText control, but while the RichEditableText sub-component actually receives focus, it appears as if the TextInput has focus. TextInput sets `hasFocusableChildren` to `false` because TextInput is considered the component that has focus. Its internal structure is an abstraction.

Usually only navigator components, such as TabNavigator and Accordion, have this flag set to `true` because they receive focus on Tab but focus goes to components in the child containers on further Tabs.

The default value is `false`, except for the spark.components.Scroller component. For that component, the default value is `true`.

Implementation
`public function get hasFocusableChildren():Boolean`
`public function set hasFocusableChildren(value:Boolean):void`

mouseFocusEnabled | property |

`mouseFocusEnabled:Boolean` [read-only]

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

A flag that indicates whether the component can receive focus when selected with the mouse. If `false`, focus will be transferred to the first parent that is `mouseFocusEnabled`.

Implementation
`public function get mouseFocusEnabled():Boolean`

tabFocusEnabled | property |

`tabFocusEnabled:Boolean` [read-only]

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

A flag that indicates whether pressing the Tab key eventually moves focus to this component. Even if `false`, you can still be given focus by being selected with the mouse or via a call to `setFocus()`. This property replaces InteractiveObject.tabEnabled which must be set to true in Flex apps.

Implementation
`public function get tabFocusEnabled():Boolean`

tabIndex | property |

`tabIndex:int`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

If `tabFocusEnabled`, the order in which the component receives focus. If -1, then the component receives focus based on z-order.

Implementation
`public function get tabIndex():int`
`public function set tabIndex(value:int):void`
Method Detail

drawFocus | () | method

`public function drawFocus(isFocused:Boolean):void`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Called by the FocusManager when the component receives focus. The component should draw or hide a graphic that indicates that the component has focus.

Parameters

| `isFocused:Boolean` — If `true`, draw the focus indicator, otherwise hide it.

setFocus | () | method |

`public function setFocus():void`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Called by the FocusManager when the component receives focus. The component may in turn set focus to an internal component.

Wed Nov 15 2017, 09:50 AM +01:00