NAME
CGI::Test::Form::Widget::Button - Abstract representation of a button
SYNOPSIS
# Inherits from CGI::Test::Form::Widget
DESCRIPTION
This class is the abstract representation of a button, i.e. a submit button, an image button, a reset button or a plain button.
Pressing a button is achieved by calling press() on it, which returns a new page, as a CGI::Test::Page object, or undef if pressing had no round-trip effect.
INTERFACE
The interface is the same as the one described in CGI::Test::Form::Widget, with the following additions:
Attributes
is_pressed-
True when the button is pressed.
Attribute Setting
press-
Press the button, setting
is_pressedto true.If the button is a reset button (
is_resetis true), all widgets are reset to their initial state, andundefis returned.If the button is a submit button (
is_submitis true), then a GET/POST request is issued as appropriate and the reply is made available through aCGI::Test::Pageobject.Otherwise, the button pressing is ignored, a warning is issued from the perspective of the caller, via
logcarp, andundefis returned.
Widget Classification Predicates
There is an additional set of predicates to distinguish between the various buttons:
is_plain-
Returns true for a plain button, i.e. a button that has no submit/reset effects. Usually, those buttons are linked to a script, but
CGI::Testdoes not support scripting yet. is_reset-
Returns true for reset buttons.
is_submit-
Returns true for submit buttons, whether they are really shown as buttons or as images. A submit button will cause an HTTP request to be issued in response to its being pressed.
Miscellaneous Features
Although documented, those features are more targetted for internal use...
set_is_pressedflag-
Change the pressed status of the button, to the value of flag. It does not raise any other side effect, like submitting an HTTP request if the button is a submit button.
You should probably use the
pressconvenience routine instead of calling this feature directly.
AUTHOR
Raphael Manfredi <Raphael_Manfredi@pobox.com>
SEE ALSO
CGI::Test::Form::Widget(3), CGI::Test::Form::Widget::Button::Image(3), CGI::Test::Form::Widget::Button::Plain(3), CGI::Test::Form::Widget::Button::Reset(3), CGI::Test::Form::Widget::Button::Submit(3).