An mixin object to focusable component.
- Since:
-
- 2.0.0
- See:
Example
var CustomClass = $class({
$extends: caph.module.renderer.View,
$mixins: [caph.module.mixins.focus.Focusable],
$constructor: function(){
this.$super();
this.focusable(true).focusContainer(false).active(true).level(0).domEvent(true);
}
});
var focusable = new CustomClass();
focusable.focus();
focusable.blur();
Members
-
<static> DEFAULT
-
An integer value indicates that we should not change the focus.
- Since:
-
- 2.1.0
Example
var button = new Button({ contents : 'Hello', position : [10, 10], size : [50, 50] }).defaultNextFocus(caph.module.focus.Manager.Buttons.DOWN, caph.module.mixins.focus.Focusable.DEFAULT); -
<static> NONE
-
An integer value indicates that we should not change the focus.
- Since:
-
- 2.1.0
Example
var button = new Button({ contents : 'Hello', position : [10, 10], size : [50, 50] }).defaultNextFocus(caph.module.focus.Manager.Buttons.DOWN, caph.module.mixins.focus.Focusable.DEFAULT);
Methods
-
active(isActive) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets active flag. / Gets active flag.
Active or not active focusable component.Parameters:
Name Type Argument Description isActiveBoolean <optional>
true : active false : inactive
- Since:
-
- 2.0.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (isActive).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.active(false); -
blur()
-
Blur focusable component.
- Since:
-
- 2.0.0
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.blur(); -
defaultNextFocus(property, value) → {caph.module.mixins.focus.Focusable}
-
Sets next focused component for current component. / Gets next focused component for current component.
Parameters:
Name Type Description propertyString | Object A button name or next focus property name-value pair object.
valueString A value to set for the property.
- Since:
-
- 2.1.0
Returns:
If there is defaultNextFocus argument, then it returns itself to provide method chaining.
In case of no argument, it returns next focused component.Example
var Component = caph.require('ui.base.Component'); var component = new Component(); // mixin caph.module.mixins.focus.Focusable component var nextFocus = component.defaultNextFocus(caph.module.focus.Manager.Buttons.LEFT, caph.module.mixins.focus.Focusable.NONE); -
domEvent(sendDomEvent) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets send DOM event to focusable component or not. / Gets send DOM event to focusable component or not.
If you want to not fire Dom event(focus,blur) when focus, blur event is occurred by focus manager, make it false.Parameters:
Name Type Argument Description sendDomEventBoolean <optional>
true : send Dom Event false : not send Dom Event
- Since:
-
- 2.0.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (sendDom).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.domEvent(false); -
focus()
-
Focus focusable component.
- Since:
-
- 2.0.0
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.focus(); -
focusable(isFocusable) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets focusable status. / Gets focusable status.
It is true if it can focused.Parameters:
Name Type Argument Description isFocusableBoolean <optional>
true : focusable, false : not focusable.
- Since:
-
- 2.0.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (isFocusable).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.focusable(true); -
focusContainer(isFocusContainer) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets it is focuscontainer or not. / Gets it is focuscontainer or not.
The container which includes focusable components.Parameters:
Name Type Argument Description isFocusContainercaph.ui.base.Component <optional>
target to get 'isFocusContainer' flag.
- Since:
-
- 2.0.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (isFocusContainer).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.focusContainer(true); -
keyEvent(useKeyEvent) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets focusable component will focus with key event or not. / focusable component will focus with key event or not.
Parameters:
Name Type Argument Description useKeyEventBoolean <optional>
true : use Key Event false : not use Key Event
- Since:
-
- 2.1.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (_useKeyEvent).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.keyEvent(false); -
level(level) → {caph.module.mixins.focus.Focusable|Number}
-
Sets focus level of focusable component. / Gets focus level of focusable component.
Parameters:
Name Type Argument Description levelNumber <optional>
(0: default, -1: always focusable, positive num: level idx)
- Since:
-
- 2.0.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns its focus level.- Type
- caph.module.mixins.focus.Focusable | Number
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.level(3); -
mouseEvent(useMouseEvent) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets focusable component will focus with mouse event or not. / focusable component will focus with mouse event or not.
Parameters:
Name Type Argument Description useMouseEventBoolean <optional>
true : use Mouse Event false : not use Mouse Event
- Since:
-
- 2.1.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (_useMouseEvent).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.mouseEvent(false); -
visibility(isVisibile) → {caph.module.mixins.focus.Focusable|boolean}
-
Sets focusable component is visible or not. / Gets focusable component is visible or not
Parameters:
Name Type Argument Description isVisibileBoolean <optional>
- Since:
-
- 2.1.0
Returns:
If there is an argument, then it returns itself to provide method chaining.
In case of no argument, it returns boolean value (_visibility).- Type
- caph.module.mixins.focus.Focusable | boolean
Example
var CustomClass = $class({ $extends: caph.module.renderer.View, $mixins: [caph.module.mixins.focus.Focusable] }); var focusableComponent = new CustomClass(); focusableComponent.visibility(false);