|
Graphics.UI.Gtk.Buttons.RadioButton | Portability | portable (depends on GHC) | Stability | provisional | Maintainer | gtk2hs-users@lists.sourceforge.net |
|
|
|
|
|
Description |
A choice from multiple check buttons
|
|
Synopsis |
|
|
|
|
Detail
|
|
A single radio button performs the same basic function as a
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
RadioButton is one way of giving the user a choice from many options.
Radio button widgets are created with radioButtonNew.
Optionally, radioButtonNewWithLabel can be used if you want a
text label on the radio button.
For the radio button functions that take an existing group, the groups are
represented by any of their members. So when adding widgets to an existing
group of radio buttons, use radioButtonNewFromWidget with a RadioButton
that is already a member of the group. The convenience function
radioButtonNewWithLabelFromWidget is also provided.
To remove a RadioButton from one group and make it part of a new one,
use radioButtonSetGroup.
- How to create a group of two radio buttons.
createRadioButtons :: IO ()
createRadioButtons = do
window <- windowNew
box <- vBoxNew True 2
-- Create a radio button with a Entry widget
radio1 <- radioButtonNew
entry <- entryNew
containerAdd radio1 entry
-- Create a radio button with a label
radio2 <- radioButtonNewWithLabelFromWidget
radio1 "I'm the second radio button."
-- Pack them into a box, then show all the widgets
boxPackStart box radio1 PackGrow 2
boxPackStart box radio2 PackGrow 2
containerAdd window box
widgetShowAll window
When an unselected button in the group is clicked the clicked button
receives the "toggled" signal, as does the previously selected button.
Inside the "toggled" handler,
toggleButtonGetActive can be used to
determine if the button has been selected or deselected.
|
|
Class Hierarchy
|
|
| GObject
| +----Object
| +----Widget
| +----Container
| +----Bin
| +----Button
| +----ToggleButton
| +----CheckButton
| +----RadioButton
|
|
Types
|
|
data RadioButton |
Instances | |
|
|
class CheckButtonClass o => RadioButtonClass o |
| Instances | |
|
|
castToRadioButton :: GObjectClass obj => obj -> RadioButton |
|
toRadioButton :: RadioButtonClass o => o -> RadioButton |
|
Constructors
|
|
radioButtonNew :: IO RadioButton |
Creates a new RadioButton with a new group. To be of any practical
value, a widget should then be packed into the radio button.
|
|
radioButtonNewWithLabel :: String -> IO RadioButton |
Creates a new RadioButton with a text label.
|
|
radioButtonNewWithMnemonic |
:: String | label - the text of the button, with an underscore
in front of the mnemonic character
| -> IO RadioButton | | Creates a new RadioButton containing a label. The label will be created
using labelNewWithMnemonic,
so underscores in label indicate the mnemonic
for the button.
|
|
|
radioButtonNewFromWidget |
:: RadioButton | groupMember - a member of an existing radio button
group, to which the new radio button will be added.
| -> IO RadioButton | | Creates a new RadioButton, adding it to the same group as the group to
which groupMember belongs. As with radioButtonNew, a widget should be
packed into the radio button.
|
|
|
radioButtonNewWithLabelFromWidget |
:: RadioButton | groupMember - a member of an existing radio button
group, to which the new radio button will be added.
| -> String | label - a text string to display next to the radio
button.
| -> IO RadioButton | | Creates a new RadioButton with a text label, adding it to the same group
as the group to which groupMember belongs.
|
|
|
radioButtonNewWithMnemonicFromWidget |
:: RadioButton | groupMember - a member of an existing radio button
group, to which the new radio button will be added.
| -> String | label - the text of the button, with an underscore
in front of the mnemonic character
| -> IO RadioButton | | Creates a new RadioButton containing a label, adding it to the same group
as the group to which groupMember belongs. The label will be created using
labelNewWithMnemonic,
so underscores in label indicate the mnemonic for the button.
|
|
|
Compatibilty aliases
|
|
radioButtonNewJoinGroup |
|
|
radioButtonNewJoinGroupWithLabel |
|
|
radioButtonNewJoinGroupWithMnemonic |
|
|
Methods
|
|
radioButtonSetGroup |
:: RadioButton | | -> RadioButton | groupMember - a member of an existing radio button group,
to which this radio button will be added.
| -> IO () | | Sets a RadioButtons group. It should be noted that this does not
change the layout of your interface in any way, so if you are changing the
group, it is likely you will need to re-arrange the user interface to
reflect these changes.
|
|
|
radioButtonGetGroup |
:: RadioButton | | -> IO [RadioButton] | returns a list containing all the radio buttons
in the same group as this radio button.
| Retrieves the group assigned to a radio button.
|
|
|
Attributes
|
|
radioButtonGroup :: ReadWriteAttr RadioButton [RadioButton] RadioButton |
Sets a new group for a radio button.
|
|
Signals
|
|
onGroupChanged :: RadioButtonClass self => self -> IO () -> IO (ConnectId self) |
Emitted when the group of radio buttons that a radio button belongs to
changes. This is emitted when a radio button switches from being alone to
being part of a group of 2 or more buttons, or vice-versa, and when a
buttton is moved from one group of 2 or more buttons to a different one, but
not when the composition of the group that a button belongs to changes.
|
|
afterGroupChanged :: RadioButtonClass self => self -> IO () -> IO (ConnectId self) |
|
Produced by Haddock version 0.8 |