HomePhabricator

Introduce Efl.Ui.Radio_Group & Efl.Ui.Radio_Box

Authored by Marcel Hollerbach <mail@marcel-hollerbach.de> on May 29 2019, 4:03 AM.

Description

Introduce Efl.Ui.Radio_Group & Efl.Ui.Radio_Box

Radio_Group is a interface that manages that radio groups can be grouped inside a
external object, the current API of radio was considered confusing in
that regard. It is implemented in the Radio_Group_Internal class which
is private to EFL, a instance of it can be found with get due to the
class function in efl_ui_radio.eo. This architecture was taken like
this, in order to have implementation and interface seperated. With
those two seperated we can inherit from regular widgets, implement the
interface, and composite attach the internal object to the regular
widget. This makes a lot of things easier.

Radio_Box is a class which is extending Efl.Ui.Box, which has an
internal Radio_Group. This is extremly usefull for cases where you just
want to have a list of radio buttons in your UI. The radio group is also
exposed using composition to the internal object. Simular things can be
done for the table.

For now i did not add API to find the group of a radio button. However,
this can be quickly added if requested.

ref T7867

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D9058

Marcel Hollerbach <mail@marcel-hollerbach.de> committed rEFLc9177a9f8d75: Introduce Efl.Ui.Radio_Group & Efl.Ui.Radio_Box (authored by Marcel Hollerbach <mail@marcel-hollerbach.de>).Jun 20 2019, 7:02 AM