[Catalyst] HTML Widgets!
Will Hawes
info at whawes.co.uk
Sat Dec 3 15:33:35 CET 2005
>
> Am 02.12.2005 um 20:39 schrieb Johan Lindström:
>
>> At 18:21 2005-12-02, Sebastian Riedel wrote:
>>> $w2->element( 'Textfield', 'age' )->label('Age')->size(3);
>>> $w2->element( 'Textfield', 'name' )->label('Name')->size(60);
>>
>> The size spec, is that used for validation also?
>>
>> If there is a size/length constraint for e.g. name, is it used as
>> the default size in the element?
>
> Not for the default elements.
>
> But subclassing them to create new ones is very easy. ;)
>
>
> package HTML::Widget::Element::Textfield_C;
> use base 'HTML::Widget::Element::Textfield';
>
> sub init {
> my ( $self, $w ) = @_;
> $w->constraint( 'Length', $self->name )->max($self->size) if
> $self->size;
> }
>
> 1;
>
>
> Thats it!
>
> $widget->element( 'Textfield_C', 'foo' );
>
>
> I'm sure we'll see lots of new elements soon, so we better get a
> naming convention.
>
> H::W::E::Foo_J - Element/Constraint with integrated JS
> H::W::C::Foo_J
> H::W::E::Foo_JX - Element/Constraint with JS and external dependency
> (prototype.js...)
> H::W::C::Foo_JX
> H::W::E::Foo_C - Element with Constraints
> H::W::C::Foo_E - Constraint with Element
>
>
>
> --
> sebastian
It would be really good if all this could be loaded from an XML string, so
it could be stored within a model class, database, etc.
More information about the Catalyst
mailing list