Scroll to navigation

Tickit::Widget::Button(3pm) User Contributed Perl Documentation Tickit::Widget::Button(3pm)

NAME

"Tickit::Widget::Button" - a widget displaying a clickable button

SYNOPSIS

   use Tickit;
   use Tickit::Widget::Button;
   my $button = Tickit::Widget::Button->new(
      label => "Click Me!",
      on_click => sub {
         my ( $self ) = @_;
         # Do something!
      },
   );
   Tickit->new( root => $button )->run;

DESCRIPTION

This class provides a widget which displays a clickable area with a label. When the area is clicked, a callback is invoked.

STYLE

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

What kind of border to draw around the button; one of

 none single double thick
    
A two-character string to place just before the button label
A two-character string to place just after the button label

The following style tags are used:

:active
Set when the mouse is being held over the button, before it is released

The following style actions are used:

The main action to activate the "on_click" handler.

CONSTRUCTOR

new

   $button = Tickit::Widget::Button->new( %args )

Constructs a new "Tickit::Widget::Button" object.

Takes the following named arguments:

label => STR
Text to display in the button area
on_click => CODE
Optional. Callback function to invoke when the button is clicked.

ACCESSORS

label

   $label = $button->label

set_label

   $button->set_label( $label )

Return or set the text to display in the button area.

on_click

   $on_click = $button->on_click

set_on_click

   $button->set_on_click( $on_click )

Return or set the CODE reference to be called when the button area is clicked.

 $on_click->( $button )

click

   $button->click

Behave as if the button has been clicked; running its "on_click" handler. This is provided for convenience of activating its handler programmatically via other parts of code.

align

set_align

valign

set_valign

   $align = $button->align
   $button->set_align( $align )
   $valign = $button->valign
   $button->set_valign( $valign )

Accessors for the horizontal and vertical alignment of the label text within the button area. See also Tickit::WidgetRole::Alignable.

AUTHOR

Paul Evans <leonerd@leonerd.org.uk>

2020-11-04 perl v5.30.3