NAME
Form::Factory::Interface - Role for form interface implementations
VERSION
version 0.022
SYNOPSIS
package MyApp::Interface::MyUI;
use Moose;
with qw( Form::Factory::Interface );
sub render_control {
my ($self, $control, %options) = @_;
# Draw $control for user
}
sub consume_control {
my ($self, $control, %options) = @_;
# Consume values from user to fill $control
}
package Form::Factory::Interface::Custom::MyUI;
sub register_implementation { 'MyApp::Interface::MyUI' }
DESCRIPTION
Defines the contract form interface classes must fulfill.
ATTRIBUTES
stasher
A place for remembering things.
METHODS
stash
unstash
See Form::Factory::Stash.
new_action
my $action = $interface->new_action('Some::Action::Class', \%options);
Given the name of an action class, it initializes the class for use with this interface. The %options
are passed to the constructor.
new_control
my $control = $interface->new_control($name, \%options);
Given the short name for a control and a hash reference of initialization arguments, return a fully initialized control.
ROLE METHODS
The following methods need to implement the following methods.
render_control
$interface->render_control($control, %options);
This method is used to render the control in the current form.
consume_control
$interface->consume_control($control, %options);
This method is used to consume the values input for a current form.
CONTROLS
Here's a list of controls and the classes they represent:
- checkbox
- full_text
- password
- select_many
- select_one
- text
- value
SEE ALSO
Form::Factory::Action, Form::Factory::Control, Form::Factory::Stasher
AUTHOR
Andrew Sterling Hanenkamp <hanenkamp@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015 by Qubling Software LLC.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.