![]() |
![]()
| ![]() |
![]()
NAME"Tickit::Widget::RadioButton" - a widget allowing a selection from multiple options SYNOPSISuse Tickit; use Tickit::Widget::RadioButton; use Tickit::Widget::VBox; my $group = Tickit::Widget::RadioButton::Group->new; my $vbox = Tickit::Widget::VBox->new; $vbox->add( Tickit::Widget::RadioButton->new( caption => "Radio button $_", group => $group, ) ) for 1 .. 5; Tickit->new( root => $vbox )->run; DESCRIPTIONThis class provides a widget which allows a selection of one value from a group of related options. It provides a clickable area and a visual indication of which button in the group is the one currently active. Selecting a new button within a group will unselect the previously-selected one. This widget is part of an experiment in evolving the design of the Tickit::Style widget integration code, and such is subject to change of details. STYLEThe default style pen is used as the widget pen. The following style pen prefixes are also used:
The following style keys are used:
The following style tags are used:
The following style actions are used:
CONSTRUCTORnew$radiobutton = Tickit::Widget::RadioButton->new( %args ); Constructs a new "Tickit::Widget::RadioButton" object. Takes the following named argmuents
ACCESSORSgroup$group = $radiobutton->group; Returns the "Tickit::Widget::RadioButton::Group" this button belongs to. labelset_label$label = $radiobutton->label; $radiobutton->set_label( $label ); Returns or sets the label text of the button. on_toggle$on_toggle = $radiobutton->on_toggle; set_on_toggle$radiobutton->set_on_toggle( $on_toggle ); Return or set the CODE reference to be called when the button state is changed. $on_toggle->( $radiobutton, $active ); When the radio tick mark moves from one button to another, the old button is marked unactive before the new one is marked active. value$value = $radiobutton->value; set_value$radiobutton->set_value( $value ); Return or set the scalar value used to identify the radio button to the group's "on_changed" callback. This can be any scalar value; it is simply stored by the button and not otherwise used. METHODSactivate$radiobutton->activate; Sets this button as the active member of the group, deactivating the previous one. is_active$active = $radiobutton->is_active; Returns true if this button is the active button of the group. GROUPSEvery "Tickit::Widget::RadioButton" belongs to a group. Only one button can be active in a group at any one time. The "group" accessor returns the group the button is a member of. The following methods are available on it. A group can be explicitly created to pass to a button's constructor, or one will be implicitly created for a button if none is passed. new$group = Tickit::Widget::RadioButton::Group->new; Returns a new group. active$radiobutton = $group->active; Returns the button which is currently active in the group on_changed$on_changed = $group->on_changed; set_on_changed$group->set_on_changed( $on_changed ); Return or set the CODE reference to be called when the active member of the group changes. This may be more convenient than setting the "on_toggle" callback of each button in the group. The callback is passed the currently-active button, and its "value". $on_changed->( $active, $value ); AUTHORPaul Evans <leonerd@leonerd.org.uk>
|