Gtk2::RadioButton(3) User Contributed Perl Documentation Gtk2::RadioButton(3)

Gtk2::RadioButton - wrapper for GtkRadioButton

# first group
$foo1 = Gtk2::RadioButton->new (undef, 'Foo One');
$foo2 = Gtk2::RadioButton->new ($foo1, 'Foo Two');
$foo3 = Gtk2::RadioButton->new ($foo2, 'Foo Three');
# second group, using the group reference
$bar1 = Gtk2::RadioButton->new (undef, 'Bar One');
$group = $bar1->get_group;
$bar2 = Gtk2::RadioButton->new ($group, 'Bar Two');
$bar3 = Gtk2::RadioButton->new ($group, 'Bar Three');
# move bar3 from the bar group to the foo group.
$bar->set_group ($foo->get_group);
# iterate over the widgets in the group
$group = $foo1->get_group;
foreach my $r (@$group) {
    $r->set_sensitive ($whatever);
}

A single radio button performs the same basic function as a Gtk2::CheckButton, as its position in the object hierarchy reflects. It is only when multiple radio buttons are grouped together that they become a different user interface component in their own right.

Every radio button is a member of some group of radio buttons. When one is selected, all other radio buttons in the same group are deselected. A Gtk2::RadioButton is one way of giving the user a choice from many options; Gtk2::OptionMenu and Gtk2::ComboBox (added in gtk+ 2.4) are alternatives.

Each constructor can take either a group or widget from that group where the group is wanted; this is an enhancement over the C API. Nevertheless, the _from_widget forms are provided for completeness.

Glib::Object
+----Glib::InitiallyUnowned
     +----Gtk2::Object
          +----Gtk2::Widget
               +----Gtk2::Container
                    +----Gtk2::Bin
                         +----Gtk2::Button
                              +----Gtk2::ToggleButton
                                   +----Gtk2::CheckButton
                                        +----Gtk2::RadioButton

Glib::Object::_Unregistered::AtkImplementorIface
Gtk2::Buildable
Gtk2::Activatable

widget = Gtk2::RadioButton->new ($member_or_listref=undef, $label=undef)

  • $member_or_listref (scalar) reference to radiobutton group or a Gtk2::RadioButton belonging to that group.
  • $label (string)

Create a radio button. If $label is provided, it will be interpreted as a mnemonic. If $member_or_listref is undef, the radio button will be created in a new group.

widget = Gtk2::RadioButton->new_from_widget ($group, $label=undef)

  • $group (Gtk2::RadioButton or undef)
  • $label (string)

widget = Gtk2::RadioButton->new_with_label ($member_or_listref=undef, $label=undef)

  • $member_or_listref (scalar) reference to radiobutton group or a Gtk2::RadioButton belonging to that group.
  • $label (string)

Create a radio button with a plain text label, which will not be interpreted as a mnemonic.

widget = Gtk2::RadioButton->new_with_label_from_widget ($group, $label=undef)

  • $group (Gtk2::RadioButton or undef)
  • $label (string)

widget = Gtk2::RadioButton->new_with_mnemonic ($member_or_listref=undef, $label=undef)

  • $member_or_listref (scalar) reference to radiobutton group or a Gtk2::RadioButton belonging to that group.
  • $label (string)

Create a radio button with a mnemonic; this is an alias for "new".

widget = Gtk2::RadioButton->new_with_mnemonic_from_widget ($group, $label=undef)

  • $group (Gtk2::RadioButton or undef)
  • $label (string)

Return a reference to the radio group to which $radio_button belongs. The group is a reference to an array of widget references; the array is not magical, that is, it will not be updated automatically if the group changes; call "get_group" each time you want to use the group.

$member_or_listref (scalar) reference to the group or a Gtk2::RadioButton belonging to that group.

Assign $radio_button to a new group.

'group' (Gtk2::RadioButton : default undef : writable / private / static-nick / static-blurb)
The radio button whose group this widget belongs to.

Gtk2, Glib::Object, Glib::InitiallyUnowned, Gtk2::Object, Gtk2::Widget, Gtk2::Container, Gtk2::Bin, Gtk2::Button, Gtk2::ToggleButton, Gtk2::CheckButton

Copyright (C) 2003-2011 by the gtk2-perl team.

This software is licensed under the LGPL. See Gtk2 for a full notice.

2022-05-29 perl v5.36.0