# Copyright (c) 2003-2007 bivio Software, Inc. All Rights Reserved. # # Visit http://www.bivio.biz for more info. # # This library is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of the # License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; If not, you may get a copy from: # http://www.opensource.org/licenses/lgpl-license.html # Widget({ setup_render => sub { my($req, $case, $params) = @_; $req->put(control => $params->[0]); return; }, }); [ [ ['control'], { map({ my($v, $w) = @$_; $v => prose($w); } ['' => 'empty'], [0 => 'zero'], [1 => 'one'], ['a string' => 'a str'], [qr{foo}s => 'regexp1'], [qr{bar}s => 'regexp2'], ), }, ] => [ initialize => undef, render => [ '' => 'empty', 0 => 'zero', 1 => 'one', 'a string' => 'a str', 'foo' => 'regexp1', 'bar' => 'regexp2', 'foo bar' => qr{too many}, force_default => qr{matches default_value}, [undef] => qr{matches undef_value}, ], ], [ ['control'], { 1 => prose('one'), }, 'default_value', prose('undef_value'), ] => [ initialize => undef, render => [ 1 => 'one', force_default => 'default_value', [undef] => 'undef_value', ], ], ];