---
name: "Tickit::Widget::CheckButton"
section: "3pm"
platform: "linux"
package: "libtickit-widgets-perl"
version: "0.42-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Tickit::Widget::CheckButton"
---

# Tickit::Widget::CheckButton(3pm)

a widget allowing a toggle true/false option

## NAME

"Tickit::Widget::CheckButton" - a widget allowing a toggle true/false option

## SYNOPSIS

```
   use Tickit;
   use Tickit::Widget::CheckButton;
   use Tickit::Widget::VBox;
   my $vbox = Tickit::Widget::VBox->new;
   $vbox->add( Tickit::Widget::CheckButton->new(
         label => "Check button $_",
   ) ) for 1 .. 5;
   Tickit->new( root => $vbox )->run;
```

## DESCRIPTION

This class provides a widget which allows a true/false selection. It displays a clickable indication of status and a caption. Clicking on the status or caption inverts the status of the widget.

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.

## STYLE

The default style pen is used as the widget pen. The following style pen  prefixes are also used:

- check =\> PEN

  The pen used to render the check marker

The following style keys are used:

- check =\> STRING

  The text used to indicate the active status

- spacing =\> INT

  Number of columns of spacing between the check mark and the caption text

The following style tags are used:

- :active

  Set when this button's status is true

The following style actions are used:

- toggle

  The main action to activate the `"on_click"` handler.

## CONSTRUCTOR

### new

```
   $checkbutton = Tickit::Widget::CheckButton->new( %args );
```

Constructs a new `"Tickit::Widget::CheckButton"` object.

Takes the following named argmuents

- label =\> STRING

  The label text to display alongside this button.

- on\_toggle =\> CODE

  Optional. Callback function to invoke when the check state is changed.

## ACCESSORS

### label

### set\_label

```
   $label = $checkbutton->label;
   $checkbutton->set_label( $label );
```

Returns or sets the label text of the button.

### on\_toggle

```
   $on_toggle = $checkbutton->on_toggle;
```

### set\_on\_toggle

```
   $checkbutton->set_on_toggle( $on_toggle );
```

Return or set the CODE reference to be called when the button state is changed.

```
   $on_toggle->( $checkbutton, $active );
```

## METHODS

### activate

```
   $checkbutton->activate;
```

Sets this button's active state to true.

### deactivate

```
   $checkbutton->deactivate;
```

Sets this button's active state to false.

### is\_active

```
   $active = $checkbutton->is_active;
```

Returns this button's active state.

## AUTHOR

Paul Evans \<leonerd@leonerd.org.uk\>
