forked from enlightenment/efl
Efl.Ui.Radio: Update docs
Ref T7867 Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D9061
This commit is contained in:
parent
89102ecbd3
commit
ff97b0ed3d
|
@ -1,22 +1,36 @@
|
||||||
class @beta Efl.Ui.Radio extends Efl.Ui.Check implements Efl.Access.Widget.Action
|
class @beta Efl.Ui.Radio extends Efl.Ui.Check implements Efl.Access.Widget.Action
|
||||||
{
|
{
|
||||||
[[Elementary radio class]]
|
[[Elementary radio button class.
|
||||||
|
|
||||||
|
Radio buttons are like check boxes in that they can be either checked or unchecked.
|
||||||
|
However, radio buttons are always bunched together in groups, and only one button in
|
||||||
|
each group can be checked at any given time. Pressing a different button in the group
|
||||||
|
will automatically uncheck any previously checked button.
|
||||||
|
|
||||||
|
They are a common way to allow a user to select one option among a list.
|
||||||
|
|
||||||
|
To handle button grouping, you can either use an @Efl.Ui.Radio_Group object (obtained
|
||||||
|
through @.group_create) or use more convenient widgets like @Efl.Ui.Radio_Box.
|
||||||
|
]]
|
||||||
methods {
|
methods {
|
||||||
@property state_value {
|
@property state_value {
|
||||||
set {
|
[[Integer value that this radio button represents.
|
||||||
[[Set the integer value that this radio object represents.
|
|
||||||
|
|
||||||
This sets the value of the radio.
|
Each radio button in a group must have a unique value. The selected button in a group
|
||||||
]]
|
can then be set or retrieved through the @Efl.Ui.Radio_Group.selected_value property.
|
||||||
}
|
This value is also informed through the @[Efl.Ui.Radio_Group.value,changed] event.
|
||||||
get {
|
|
||||||
[[Get the integer value that this radio object represents.
|
|
||||||
|
|
||||||
This gets the value of the radio.
|
All non-negative values are legal but keep in mind that 0 is the starting value for all new groups:
|
||||||
]]
|
If no button in the group has this value, then no button in the group is initially
|
||||||
}
|
selected. -1 is the value that @Efl.Ui.Radio_Group.selected_value returns when no button
|
||||||
|
is selected and therefore cannot be used.
|
||||||
|
]]
|
||||||
|
set {}
|
||||||
|
get {}
|
||||||
values {
|
values {
|
||||||
value: int; [[The value to use if this radio object is selected.]]
|
value: int; [[The value to use when this radio button is selected.
|
||||||
|
Any value can be used but 0 and -1 have special meanings as described
|
||||||
|
above.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,11 @@
|
||||||
class @beta Efl.Ui.Radio_Box extends Efl.Ui.Box implements Efl.Ui.Radio_Group
|
class @beta Efl.Ui.Radio_Box extends Efl.Ui.Box implements Efl.Ui.Radio_Group
|
||||||
{
|
{
|
||||||
methods {
|
[[A standard @Efl.Ui.Box container which automatically handles grouping of any @Efl.Ui.Radio
|
||||||
}
|
widget added to it.
|
||||||
|
|
||||||
|
All @Efl.Ui.Radio widgets are added to the same internal group which you only indirectly
|
||||||
|
access through this object.
|
||||||
|
]]
|
||||||
implements {
|
implements {
|
||||||
Efl.Pack.pack_clear;
|
Efl.Pack.pack_clear;
|
||||||
Efl.Pack.unpack_all;
|
Efl.Pack.unpack_all;
|
||||||
|
|
|
@ -1,50 +1,62 @@
|
||||||
interface @beta Efl.Ui.Radio_Group
|
interface @beta Efl.Ui.Radio_Group
|
||||||
{
|
{
|
||||||
[[A object for organising a group of radio buttons
|
[[Interface for manually handling a group of @Efl.Ui.Radio buttons.
|
||||||
|
|
||||||
A group of radio buttons is a set of pair-wise different values. (Where values are the assosiated values of each radio button)
|
See the documentation of @Efl.Ui.Radio for an explanation of radio button grouping.
|
||||||
At any point of time only 1 or 0 buttons can be selected. If a new button is selected, the previous selected button will be unselected.
|
|
||||||
]]
|
]]
|
||||||
methods {
|
methods {
|
||||||
@property selected_object {
|
@property selected_object {
|
||||||
[[Which object is currently selected in the group
|
[[Currently selected button in a radio button group, or $NULL if no button is selected.
|
||||||
|
|
||||||
$NULL if no object is selected.
|
See also @.selected_value.
|
||||||
]]
|
]]
|
||||||
values {
|
values {
|
||||||
selected_object : Efl.Ui.Radio; [[The selected radio button in the group, $NULL for no object]]
|
selected_object : Efl.Ui.Radio; [[The currently selected radio button in the group, or $NULL.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@property selected_value {
|
@property selected_value {
|
||||||
[[Each group has a selected value, representing which radio group is selected.
|
[[The value associated with the currently selected button in the group.
|
||||||
|
Give each radio button in the group a different value using @Efl.Ui.Radio.state_value.
|
||||||
|
|
||||||
A value of -1 here does represent that no button is selected.
|
A value of -1 means that no button is selected.
|
||||||
Possible values here are only those that are assisiated with a registered radio button.
|
Only values associated with the buttons in the group (and -1) can be used.
|
||||||
]]
|
]]
|
||||||
values {
|
values {
|
||||||
selected_value : int; [[The value of the selection state]]
|
selected_value : int; [[The value of the currently selected radio button, or -1.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
register {
|
register {
|
||||||
[[Register a new radio button to this group.
|
[[Register a new @Efl.Ui.Radio button to this group.
|
||||||
|
Keep in mind that registering to a group will only handle button grouping, you still
|
||||||
|
need to add the button to a layout for it to be rendered.
|
||||||
|
|
||||||
The assosiated value of the radio button must not collide with any other assosiated value of registered buttons.
|
If the @Efl.Ui.Radio.state_value of the new button is already used by a previous
|
||||||
|
button in the group, the button will not be added.
|
||||||
|
|
||||||
|
See also @.unregister.
|
||||||
]]
|
]]
|
||||||
params {
|
params {
|
||||||
radio : Efl.Ui.Radio; [[The radio button to regsiter]]
|
radio : Efl.Ui.Radio; [[The radio button to add to the group.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
unregister {
|
unregister {
|
||||||
[[Unregsiter a before registered button from this group.
|
[[Unregister an @Efl.Ui.Radio button from this group.
|
||||||
|
This will unlink the behavior of this button from the other buttons in the group,
|
||||||
|
but if it still belongs to a layout, it will still be rendered.
|
||||||
|
|
||||||
if the button was selected before, no object will be selected afterwards.
|
If the button was not registered in the group the call is ignored.
|
||||||
|
If the button was selected, no button will be selected in the group after this call.
|
||||||
|
|
||||||
|
See also @.register.
|
||||||
]]
|
]]
|
||||||
params {
|
params {
|
||||||
radio : Efl.Ui.Radio; [[The radio button to unregister]]
|
radio : Efl.Ui.Radio; [[The radio button to remove from the group.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
events {
|
events {
|
||||||
value,changed : int; [[Emitted each time the $selected_value has changed.]]
|
value,changed : int; [[Emitted each time the $selected_value changes. The event information
|
||||||
|
contains the @Efl.Ui.Radio.state_value of the newly selected button or
|
||||||
|
-1 if no button is now selected.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
class @beta Efl.Ui.Radio_Group_Impl extends Efl.Object implements Efl.Ui.Radio_Group
|
class @beta Efl.Ui.Radio_Group_Impl extends Efl.Object implements Efl.Ui.Radio_Group
|
||||||
{
|
{
|
||||||
|
[[Object with the default implementation for @Efl.Ui.Radio_Group.
|
||||||
|
]]
|
||||||
implements {
|
implements {
|
||||||
class.constructor;
|
class.constructor;
|
||||||
Efl.Object.destructor;
|
Efl.Object.destructor;
|
||||||
|
|
Loading…
Reference in New Issue