82 lines
2.7 KiB
Plaintext
82 lines
2.7 KiB
Plaintext
import eina_types;
|
|
|
|
mixin Efl.Ui.Focus.Object
|
|
{
|
|
[[Functions of focusable objects.
|
|
|
|
@since 1.20
|
|
]]
|
|
methods {
|
|
@property focus_geometry {
|
|
[[The geometry used to calculate relationships between other objects.]]
|
|
get {
|
|
|
|
}
|
|
values {
|
|
rect : Eina.Rect; [[The geometry to use.]]
|
|
}
|
|
}
|
|
@property focus {
|
|
[[This is called by the manager and should never be called by
|
|
anyone else.
|
|
|
|
It can be used by configuring a focus object to adapt to
|
|
any changes that are required.
|
|
|
|
The function emits the focus state events, if focus is
|
|
different to the previous state.
|
|
]]
|
|
get {
|
|
|
|
}
|
|
set @protected {
|
|
|
|
}
|
|
values {
|
|
focus : bool; [[The state in which the object should be put]]
|
|
}
|
|
}
|
|
@property focus_manager {
|
|
[[Describes which manager is used to register.
|
|
|
|
If an instance of this interface is the root of a manager, this instance should not have a manager where as root of this property. The other manager in this instance will be set as focused in the corresponding manager.
|
|
This instance should be registered with its own manager as redirect.
|
|
]]
|
|
get {}
|
|
values {
|
|
manager : Efl.Ui.Focus.Manager; [[The manager object]]
|
|
}
|
|
}
|
|
@property focus_parent {
|
|
[[Describes which logical parent is used by this object.]]
|
|
get {}
|
|
values {
|
|
logical_parent : Efl.Ui.Focus.Object; [[The focus parent.]]
|
|
}
|
|
}
|
|
prepare_logical {
|
|
[[Tells the object that its children will be queried soon by the given manager.
|
|
|
|
Deleting manager items in this call will result in undefied behaviour and may cause your system to crash.
|
|
]]
|
|
}
|
|
on_focus_update @protected @pure_virtual {
|
|
[[Virtual function handling focus in/out events on the widget]]
|
|
return: bool; [[$true if this widget can handle focus, $false otherwise]]
|
|
}
|
|
}
|
|
implements {
|
|
@empty .focus_geometry;
|
|
@empty .prepare_logical;
|
|
@empty .focus_manager;
|
|
@empty .focus_parent;
|
|
}
|
|
events {
|
|
focus,changed : bool; [[Emitted if the focus state has changed]]
|
|
manager,changed: Efl.Ui.Focus.Manager; [[Emitted when a new manager is
|
|
the parent for this object.]]
|
|
logical,changed: Efl.Ui.Focus.Object; [[Emitted when a new logical
|
|
parent should be used.]]
|
|
}
|
|
}
|