HTML::Widget::Element(3pm) | User Contributed Perl Documentation | HTML::Widget::Element(3pm) |
NAME¶
HTML::Widget::Element - Element Base Class
SYNOPSIS¶
my $e = $widget->element( $type, $name, {disabled => 'disabled'} ); $e->name('bar'); $e->class('foo');
DESCRIPTION¶
Element Base Class.
METHODS¶
new¶
attributes¶
attrs¶
Arguments: %attributes
Arguments: \%attributes
Return Value: $element
Arguments: none
Return Value: \%attributes
Accepts either a list of key/value pairs, or a hash-ref.
$e->attributes( $key => $value ); $e->attributes( { $key => $value } );
Returns the $element object, to allow method chaining.
As of v1.10, passing a hash-ref no longer deletes current attributes, instead the attributes are added to the current attributes hash.
This means the attributes hash-ref can no longer be emptied using "$e->attributes( { } );". Instead, you may use "%{ $e->attributes } = ();".
As a special case, if no arguments are passed, the return value is a hash-ref of attributes instead of the object reference. This provides backwards compatibility to support:
$e->attributes->{key} = $value;
"attrs" is an alias for "attributes".
container¶
Arguments: \%attributes
Return Value: $container
Creates a new $container_class. Defaults to HTML::Widget::Container.
id¶
Arguments: $widget
Return Value: $id
Creates a element id.
init¶
Arguments: $widget
Called once when process() gets called for the first time.
mk_error¶
Arguments: $widget, \@errors
Return Value: $error
Creates a new HTML::Widget::Error.
mk_input¶
Arguments: $widget, \%attributes, \@errors
Return Value: $input_tag
Creates a new input tag.
mk_tag¶
Arguments: $widget, $tagtype, \%attributes, \@errors
Return Value: $element_tag
Creates a new tag.
mk_label¶
Arguments: $widget, $name, $comment, \@errors
Return Value: $label_tag
Creates a new label tag.
name¶
Arguments: $name
Return Value: $name
Contains the element name.
passive¶
Arguments: $bool
Return Value: $bool
Defines if element gets automatically rendered.
prepare¶
Arguments: $widget
Called whenever "$widget->process" gets called, before "$element->process".
process¶
Arguments: \%params, \@uploads
Return Value: \@errors
Called whenever "$widget->process" is called.
Returns an arrayref of HTML::Widget::Error objects.
containerize¶
Arguments: $widget, $value, \@errors
Return Value: $container_tag
Containerize the element, label and error for later rendering. Uses HTML::Widget::Container by default, but this can be over-ridden on a class or instance basis via "container_class".
container_class¶
Arguments: $class
Return Value: $class
Contains the class to use for contain the element which then get rendered. Defaults to HTML::Widget::Container. "container_class" can be set at a class or instance level:
HTML::Widget::Element->container_class('My::Container'); # Override default to custom class HTML::Widget::Element::Password->container_class(undef); # Passwords use the default class $w->element('Textfield')->name('foo')->container_class->('My::Other::Container'); # This element only will use My::Other::Container to render
find_elements¶
Return Value: \@elements
For non-block-container elements, simply returns a one-element list containing this element.
new¶
allow_filter¶
Used by "$widget->filter_all". If false, the filter won't be added.
Default true.
allow_constraint¶
Used by "$widget->constraint_all". If false, the filter won't be added.
Default true.
AUTHOR¶
Sebastian Riedel, "sri@oook.de"
LICENSE¶
This library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.
2023-08-10 | perl v5.36.0 |