--- trunk/lib/Frey/Action.pm 2009/01/06 16:05:05 949 +++ trunk/lib/Frey/Action.pm 2009/01/06 23:42:59 950 @@ -116,10 +116,14 @@ warn "# $class config = ",dump( $params_config ) if $self->debug; my $form; + my $form_id = $class; + $form_id =~ s{\W+}{_}g; sub select_values { my ( $name, $attr_type, $values ) = @_; + $attr_type ||= '?' and warn "$name doesn't have attr_type"; + my $max_value_len = 0; my @values; my $html = ''; @@ -160,6 +164,18 @@ $delimiter |) } @values ); + if ( $radio ) { + + my $size = int( $max_value_len / $self->input_step_size ) + 1; + $size = 5 if $size > 5; + $size *= $self->input_step_size; + $radio .= qq| + + + + + |; + } $html = qq|
$radio
|; } @@ -168,6 +184,7 @@ $html } + foreach my $checkbox ( split(/\s+/, $default->{'frey-checkboxes'} ) ) { next if defined $default->{ $checkbox }; @@ -234,6 +251,8 @@ } $form .= qq|| if @checkboxes; + $self->add_js('static/Frey/Action.js'); + $self->add_css(qq| label,input { display: block; @@ -241,6 +260,10 @@ margin-bottom: 10px; } + input:focus { + border-color: #cc0; + } + label { text-align: right; width: ${label_width}ex; @@ -259,7 +282,7 @@ $html = qq|

$class params

-
+ $form