| Gtk2Hs | Contents | Index

Graphics.UI.Gtk.Buttons.ToggleButton

Portability | portable (depends on GHC)
Stability | provisional
Maintainer | gtk2hs-users@lists.sourceforge.net

Contents

Detail
Class Hierarchy
Types
Constructors
Methods
Attributes
Signals

Description
Create buttons which retain their state
Synopsis

data ToggleButton
class ButtonClass o => ToggleButtonClass o
castToToggleButton :: GObjectClass obj => obj -> ToggleButton
toToggleButton :: ToggleButtonClass o => o -> ToggleButton
toggleButtonNew :: IO ToggleButton
toggleButtonNewWithLabel :: String -> IO ToggleButton
toggleButtonNewWithMnemonic :: String -> IO ToggleButton
toggleButtonSetMode :: ToggleButtonClass self => self -> Bool -> IO ()
toggleButtonGetMode :: ToggleButtonClass self => self -> IO Bool
toggleButtonToggled :: ToggleButtonClass self => self -> IO ()
toggleButtonGetActive :: ToggleButtonClass self => self -> IO Bool
toggleButtonSetActive :: ToggleButtonClass self => self -> Bool -> IO ()
toggleButtonGetInconsistent :: ToggleButtonClass self => self -> IO Bool
toggleButtonSetInconsistent :: ToggleButtonClass self => self -> Bool -> IO ()
toggleButtonActive :: ToggleButtonClass self => Attr self Bool
toggleButtonInconsistent :: ToggleButtonClass self => Attr self Bool
toggleButtonDrawIndicator :: ToggleButtonClass self => Attr self Bool
toggleButtonMode :: ToggleButtonClass self => Attr self Bool
onToggled :: ToggleButtonClass self => self -> IO () -> IO (ConnectId self)
afterToggled :: ToggleButtonClass self => self -> IO () -> IO (ConnectId self)

Detail

A `ToggleButton` is a `Button` which will remain 'pressed-in' when clicked. Clicking again will cause the toggle button to return to its normal state.

A toggle button is created by calling either `toggleButtonNew` or `toggleButtonNewWithLabel`. If using the former, it is advisable to pack a widget, (such as a `Label` and/or a `Pixmap`), into the toggle button's container. (See `Button` for more information).

The state of a `ToggleButton` can be set specifically using `toggleButtonSetActive`, and retrieved using `toggleButtonGetActive`.

To simply switch the state of a toggle button, use `toggleButtonToggled`.

Class Hierarchy

     |  GObject
     |   +----Object
     |         +----Widget
     |               +----Container
     |                     +----Bin
     |                           +----Button
     |                                 +----ToggleButton
     |                                       +----CheckButton

Types
data ToggleButton

Instances

GObjectClass ToggleButton
ToggleButtonClass ToggleButton
ButtonClass ToggleButton
BinClass ToggleButton
ContainerClass ToggleButton
WidgetClass ToggleButton
ObjectClass ToggleButton

class ButtonClass o => ToggleButtonClass o

Instances

ToggleButtonClass RadioButton
ToggleButtonClass CheckButton
ToggleButtonClass ToggleButton

castToToggleButton :: GObjectClass obj => obj -> ToggleButton
toToggleButton :: ToggleButtonClass o => o -> ToggleButton
Constructors
toggleButtonNew :: IO ToggleButton
Creates a new toggle button. A widget should be packed into the button, as in Graphics.UI.Gtk.Buttons.Button.buttonNew.
toggleButtonNewWithLabel

:: String | `label` - a string containing the message to be placed in the toggle button.
-> IO ToggleButton |
Creates a new toggle button with a text label.

toggleButtonNewWithMnemonic

:: String | `label` - the text of the button, with an underscore in front of the mnemonic character
-> IO ToggleButton |
Creates a new `ToggleButton` containing a label. The label will be created using Graphics.UI.Gtk.Display.Label.labelNewWithMnemonic, so underscores in `label` indicate the mnemonic for the button.

Methods
toggleButtonSetMode

:: ToggleButtonClass self |
=> self |
-> Bool | `drawIndicator` - if `True`, draw the button as a separate indicator and label; if `False`, draw the button like a normal button
-> IO () |
Sets whether the button is displayed as a separate indicator and label. You can call this function on a `CheckButton` or a `RadioButton` with `False` to make the button look like a normal button. This function only affects instances of classes like `CheckButton` and `RadioButton` that derive from `ToggleButton`, not instances of `ToggleButton` itself.

toggleButtonGetMode

:: ToggleButtonClass self |
=> self |
-> IO Bool | returns `True` if the togglebutton is drawn as a separate indicator and label.
Retrieves whether the button is displayed as a separate indicator and label. See `toggleButtonSetMode`.

toggleButtonToggled :: ToggleButtonClass self => self -> IO ()
Emits the toggled signal on the `ToggleButton`. There is no good reason for an application ever to call this function.
toggleButtonGetActive :: ToggleButtonClass self => self -> IO Bool
Queries a `ToggleButton` and returns its current state. Returns `True` if the toggle button is pressed in and `False` if it is raised.
toggleButtonSetActive

:: ToggleButtonClass self |
=> self |
-> Bool | `isActive` - `True` or `False`.
-> IO () |
Sets the status of the toggle button. Set to `True` if you want the `ToggleButton` to be 'pressed in', and `False` to raise it. This action causes the toggled signal to be emitted.

toggleButtonGetInconsistent

:: ToggleButtonClass self |
=> self |
-> IO Bool | returns `True` if the button is displayed as inconsistent, `False` otherwise
Gets the value set by `toggleButtonSetInconsistent`.

toggleButtonSetInconsistent

:: ToggleButtonClass self |
=> self |
-> Bool | `setting` - `True` if state is inconsistent
-> IO () |

If the user has selected a range of elements (such as some text or spreadsheet cells) that are affected by a toggle button, and the current values in that range are inconsistent, you may want to display the toggle in an "in between" state. This function turns on "in between" display. Normally you would turn off the inconsistent state again if the user toggles the toggle button. This has to be done manually, `toggleButtonSetInconsistent` only affects visual appearance, it doesn't affect the semantics of the button.

Attributes
toggleButtonActive :: ToggleButtonClass self => Attr self Bool
If the toggle button should be pressed in or not. Default value: `False`
toggleButtonInconsistent :: ToggleButtonClass self => Attr self Bool
If the toggle button is in an "in between" state. Default value: `False`
toggleButtonDrawIndicator :: ToggleButtonClass self => Attr self Bool
If the toggle part of the button is displayed. Default value: `False`
toggleButtonMode :: ToggleButtonClass self => Attr self Bool
'mode' property. See `toggleButtonGetMode` and `toggleButtonSetMode`
Signals
onToggled :: ToggleButtonClass self => self -> IO () -> IO (ConnectId self)
afterToggled :: ToggleButtonClass self => self -> IO () -> IO (ConnectId self)
Whenever the state of the button is changed, the toggled signal is emitted.
Produced by Haddock version 2.4.2