new Manager()
A class which provides the focus management. Support mouse and keyboard navigation.
- Since:
-
- 2.0.0
- See:
Throws:
Will throw an error if attempt to create another instance of caph.module.focus.Manager.
Example
var Component = caph.require('ui.base.Component'); var focusManager = caph.module.focus.Manager.getInstance(); var component = new Component(); // mixin caph.module.mixins.focus.Focusable component // Set root Node focusManager.setRootNode(component); // Get root Node var rootNodeFocusManager = focusManager.getRootNode(); // Set focus level focusManager.setFocusLevel(2); // Get focus lveel var currentFocusLevel = focusManager.getFocusLevel(); // Focus focusManager.focus(component); // Blur focusManager.blur(component); // Reset focus manager focusManager.reset();
Members
-
<static> Buttons
-
String value indicates button pressed by user.
- Since:
-
- 2.1.0
Example
var direction = caph.module.focus.Manager.Buttons.DOWN;
Methods
-
<static> getInstance() → {caph.module.focus.Manager}
-
Gets the singleton instance.
- Since:
-
- 2.0.0
Returns:
instance
Example
var FocusManager = caph.module.focus.Manager.getInstance();
-
blur(focusableComponent)
-
Blur focusable component.
Parameters:
Name Type Description focusableComponent
caph.module.mixins.focus.Focusable - Since:
-
- 2.0.0
Example
var Component = caph.require('ui.base.Component'); var component = new Component(); // mixin caph.module.mixins.focus.Focusable component FocusManager.blur(component);
-
focus(focusableComponent, method) → {Boolean}
-
Focus focusable component.
Parameters:
Name Type Argument Description focusableComponent
caph.module.mixins.focus.Focusable method
String <optional>
- Since:
-
- 2.0.0
Returns:
result
- Type
- Boolean
Example
var Component = caph.require('ui.base.Component'); var component = new Component(); // mixin caph.module.mixins.focus.Focusable component FocusManager.focus(component);
-
getCurrentFocus() → {caph.module.mixins.focus.Focusable}
-
Gets current focused focusable component.
- Since:
-
- 2.0.0
Returns:
currentFocus
Example
var currentFocusedComponent = FocusManager.getCurrentFocus();
-
getFocusLevel() → {Number}
-
Gets current focus level.
- Since:
-
- 2.0.0
Returns:
currentLevel
- Type
- Number
Example
var currentFocusLevel = FocusManager.getFocusLevel();
-
getLastFocus() → {caph.module.mixins.focus.Focusable}
-
Gets last focused focusable component.
- Since:
-
- 2.0.0
Returns:
lastFocus
Example
var lastFocusedComponent = FocusManager.getLastFocus();
-
getRootNode() → {caph.collection.TreeNode}
-
Gets root node of tree structure.
- Since:
-
- 2.0.0
Returns:
rootNode
Example
var currentRootnode = FocusManager.getRootNode();
-
reset()
-
Resets focus manager. Initialize focus to null and delete lastFocus and currentFocus.
- Since:
-
- 2.0.0
Example
FocusManager.reset();
-
setFocusFinderConfigurations(property, value)
-
Set configurations to the focus finder algorithm
Parameters:
Name Type Description property
String | Object value
String - Since:
-
- 2.1.0
Example
FocusManager.setFocusFinderConfigurations({ useHighPriority : true, useMiddlePriority : true, useLowPriority : true, highPriorityAngle : 45 });
-
setFocusLevel(level)
-
Sets current focus level.
Parameters:
Name Type Description level
Number default level: 0
- Since:
-
- 2.0.0
Example
FocusManager.setFocusLevel(1);
-
setRootNode(root)
-
Sets root node of tree structure. Focus manager will be initialize the first focus based on root node.
Parameters:
Name Type Description root
caph.collection.TreeNode - Since:
-
- 2.0.0
Example
var Component = caph.require('ui.base.Component'); var component = new Component(); // mixin caph.module.mixins.focus.Focusable component FocusManager.setRootNode(component);