Rose-HTML-Objects
view release on metacpan or search on metacpan
lib/Rose/HTML/Object.pm view on Meta::CPAN
'checkbox group' => 'Rose::HTML::Form::Field::CheckboxGroup',
'check group' => 'Rose::HTML::Form::Field::CheckboxGroup',
'radio buttons' => 'Rose::HTML::Form::Field::RadioButtonGroup',
'radios' => 'Rose::HTML::Form::Field::RadioButtonGroup',
'radio button group' => 'Rose::HTML::Form::Field::RadioButtonGroup',
'radio group' => 'Rose::HTML::Form::Field::RadioButtonGroup',
'pop-up menu' => 'Rose::HTML::Form::Field::PopUpMenu',
'popup menu' => 'Rose::HTML::Form::Field::PopUpMenu',
'menu' => 'Rose::HTML::Form::Field::PopUpMenu',
'select box' => 'Rose::HTML::Form::Field::SelectBox',
'selectbox' => 'Rose::HTML::Form::Field::SelectBox',
'select' => 'Rose::HTML::Form::Field::SelectBox',
'submit' => 'Rose::HTML::Form::Field::Submit',
'submit button' => 'Rose::HTML::Form::Field::Submit',
'reset' => 'Rose::HTML::Form::Field::Reset',
'reset button' => 'Rose::HTML::Form::Field::Reset',
'file' => 'Rose::HTML::Form::Field::File',
'upload' => 'Rose::HTML::Form::Field::File',
'password' => 'Rose::HTML::Form::Field::Password',
'hidden' => 'Rose::HTML::Form::Field::Hidden',
'num' => 'Rose::HTML::Form::Field::Numeric',
'number' => 'Rose::HTML::Form::Field::Numeric',
'numeric' => 'Rose::HTML::Form::Field::Numeric',
'int' => 'Rose::HTML::Form::Field::Integer',
'integer' => 'Rose::HTML::Form::Field::Integer',
'email' => 'Rose::HTML::Form::Field::Email',
'phone' => 'Rose::HTML::Form::Field::PhoneNumber::US',
'phone us' => 'Rose::HTML::Form::Field::PhoneNumber::US',
'phone us split' => 'Rose::HTML::Form::Field::PhoneNumber::US::Split',
'set' => 'Rose::HTML::Form::Field::Set',
'time' => 'Rose::HTML::Form::Field::Time',
'time split hms' => 'Rose::HTML::Form::Field::Time::Split::HourMinuteSecond',
'time hours' => 'Rose::HTML::Form::Field::Time::Hours',
'time minutes' => 'Rose::HTML::Form::Field::Time::Minutes',
'time seconds' => 'Rose::HTML::Form::Field::Time::Seconds',
'date' => 'Rose::HTML::Form::Field::Date',
'datetime' => 'Rose::HTML::Form::Field::DateTime',
'datetime range' => 'Rose::HTML::Form::Field::DateTime::Range',
'datetime start' => 'Rose::HTML::Form::Field::DateTime::StartDate',
'datetime end' => 'Rose::HTML::Form::Field::DateTime::EndDate',
'datetime split mdy' => 'Rose::HTML::Form::Field::DateTime::Split::MonthDayYear',
'datetime split mdyhms' => 'Rose::HTML::Form::Field::DateTime::Split::MDYHMS',
);
#
# Object data
#
use Rose::Object::MakeMethods::Generic
(
scalar =>
[
'html_element', # may be read-only in subclasses
'xhtml_element', # may be read-only in subclasses
],
boolean =>
[
'escape_html' => { default => 1 },
'validate_html_attrs' => { default => 1 },
'is_self_closing' => { default => 0 },
],
'scalar --get_set_init' =>
[
'html_error_formatter',
'xhtml_error_formatter',
],
);
use Rose::Class::MakeMethods::Generic
(
inheritable_scalar =>
[
'autoload_html_attr_methods',
'force_utf8',
],
);
use Rose::Class::MakeMethods::Set
(
inheritable_set =>
[
required_html_attr =>
{
add_implies => 'add_valid_html_attr',
test_method => 'html_attr_is_required',
},
],
inherited_set =>
[
valid_html_attr =>
{
test_method => '_html_attr_is_valid',
delete_implies => [ 'delete_boolean_html_attr', 'delete_required_html_attr' ],
inherit_implies => 'inherit_boolean_html_attr',
},
boolean_html_attr =>
{
add_implies => 'add_valid_html_attr',
lib/Rose/HTML/Object.pm view on Meta::CPAN
'radio buttons' => Rose::HTML::Form::Field::RadioButtonGroup
'radios' => Rose::HTML::Form::Field::RadioButtonGroup
'radio button group' => Rose::HTML::Form::Field::RadioButtonGroup
'radio group' => Rose::HTML::Form::Field::RadioButtonGroup
'pop-up menu' => Rose::HTML::Form::Field::PopUpMenu
'popup menu' => Rose::HTML::Form::Field::PopUpMenu
'menu' => Rose::HTML::Form::Field::PopUpMenu
'select box' => Rose::HTML::Form::Field::SelectBox
'selectbox' => Rose::HTML::Form::Field::SelectBox
'select' => Rose::HTML::Form::Field::SelectBox
'submit' => Rose::HTML::Form::Field::Submit
'submit button' => Rose::HTML::Form::Field::Submit
'reset' => Rose::HTML::Form::Field::Reset
'reset button' => Rose::HTML::Form::Field::Reset
'file' => Rose::HTML::Form::Field::File
'upload' => Rose::HTML::Form::Field::File
'password' => Rose::HTML::Form::Field::Password
'hidden' => Rose::HTML::Form::Field::Hidden
'num' => Rose::HTML::Form::Field::Numeric
'number' => Rose::HTML::Form::Field::Numeric
'numeric' => Rose::HTML::Form::Field::Numeric
'int' => Rose::HTML::Form::Field::Integer
'integer' => Rose::HTML::Form::Field::Integer
'email' => Rose::HTML::Form::Field::Email
'phone' => Rose::HTML::Form::Field::PhoneNumber::US
'phone us' => Rose::HTML::Form::Field::PhoneNumber::US
'phone us split' =>
Rose::HTML::Form::Field::PhoneNumber::US::Split
'set' => Rose::HTML::Form::Field::Set
'time' => Rose::HTML::Form::Field::Time
'time split hms' =>
Rose::HTML::Form::Field::Time::Split::HourMinuteSecond
'time hours' => Rose::HTML::Form::Field::Time::Hours
'time minutes' => Rose::HTML::Form::Field::Time::Minutes
'time seconds' => Rose::HTML::Form::Field::Time::Seconds
'date' => Rose::HTML::Form::Field::Date
'datetime' => Rose::HTML::Form::Field::DateTime
'datetime range' => Rose::HTML::Form::Field::DateTime::Range
'datetime start' => Rose::HTML::Form::Field::DateTime::StartDate
'datetime end' => Rose::HTML::Form::Field::DateTime::EndDate
'datetime split mdy' =>
Rose::HTML::Form::Field::DateTime::Split::MonthDayYear
'datetime split mdyhms' =>
Rose::HTML::Form::Field::DateTime::Split::MDYHMS
=item B<required_html_attrs>
Returns a reference to a sorted list of required HTML attributes in scalar context, or a sorted list of required HTML attributes in list context. The default set of required HTML attributes is empty.
Required HTML attributes are included in the strings generated by the L<html_attrs_string|/html_attrs_string> and L<xhtml_attrs_string|/xhtml_attrs_string> methods, even if they have been deleted using the L<delete_html_attr|/delete_html_attr> method...
See the introduction to the L<"CLASS METHODS"> section for more information about the "inheritable set" implementation used by the set of boolean HTML attributes.
=item B<required_html_attr_value ATTR [, VALUE]>
Get or set the default value of the required HTML attrbute ATTR. If both ATTR and VALUE are passed, the value is set. The current value is returned.
=item B<valid_html_attrs>
Returns a reference to a sorted list of valid HTML attributes in scalar context, or a sorted list of valid HTML attributes in list context. The default set is:
id
class
style
title
lang
xml:lang
dir
onclick
ondblclick
onmousedown
onmouseup
onmouseover
onmousemove
onmouseout
onkeypress
onkeydown
onkeyup
See the L<"VALIDATION"> section for more on the philosophy and policy of validation. See the introduction to the L<"CLASS METHODS"> section for more information about the "inherited set" implementation used by the set of valid HTML attributes.
=item B<xhtml_element [NAME]>
Get or set the name of the XHTML element. The XHTML element is the name of the tag, e.g. "img", "p", "a", "select", "textarea", etc.
This attribute may be read-only in subclasses, but is read/write here for increased flexibility. The value is inherited by subclasses.
=back
=head1 CONSTRUCTOR
=over 4
=item B<new [ PARAMS | ELEMENT, PARAMS ]>
Constructs a new L<Rose::HTML::Object> object. If an odd number of arguments is passed, the first argument is taken as the value for the L<element|/element> parameter. Otherwise an even number of PARAMS name/value pairs are expected. Any object me...
=back
=head1 OBJECT METHODS
=over 4
( run in 1.493 second using v1.01-cache-2.11-cpan-5511b514fd6 )