
richter at apache
Apr 28, 2013, 6:37 AM
Post #1 of 1
(100 views)
Permalink
|
|
svn commit: r1476766 - in /perl/embperl/trunk/Embperl: Form.pm Form/Control/dynctrl.pm Form/Control/grid.pm Form/Control/tabs.pm Form/ControlMultValue.pm Form/DataSource.pm
|
|
Author: richter Date: Sun Apr 28 13:37:56 2013 New Revision: 1476766 URL: http://svn.apache.org/r1476766 Log: Embperl::Form: dynctrl enhancements, tabs, datasource caching Modified: perl/embperl/trunk/Embperl/Form.pm perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm perl/embperl/trunk/Embperl/Form/Control/grid.pm perl/embperl/trunk/Embperl/Form/Control/tabs.pm perl/embperl/trunk/Embperl/Form/ControlMultValue.pm perl/embperl/trunk/Embperl/Form/DataSource.pm Modified: perl/embperl/trunk/Embperl/Form.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form.pm (original) +++ perl/embperl/trunk/Embperl/Form.pm Sun Apr 28 13:37:56 2013 @@ -357,6 +357,7 @@ sub new_controls local $options -> {disable} = $control -> {disables}[$i] ; my $subform = $class -> sub_new ($subcontrols, $options, $ctlid, $validate_rules, $self -> {formptr}) ; $subform -> {text} ||= $control -> {options}[$i] if (exists ($control -> {options}) && $control -> {options}[$i]) ; + $subform -> {parent_control} = $control ; push @ids, $ctlid ; push @obj, $subform ; $i++ ; @@ -1026,13 +1027,18 @@ onSubmit="v=doValidate; doValidate=1; re [.$ sub show_controls_begin ($self, $req, $activeid) my $parent = $self -> parent_form ; -my $class = $self -> {options}{classdiv} || ($parent -> {noframe}?'ef-tabs-border-u':'ef-tabs-border') ; +my $class = $self -> {options}{classdiv} || ($parent -> {noframe}?'ef-tabs-border-u':'ef-tabs-border') ; +my $parent_control = $self -> {parent_control} ; $] + +[$if $parent_control && $parent_control -> can('show_subform_controls_begin') $] +[- $parent_control -> show_subform_controls_begin ($self, $req, $activeid) -] +[$else$] <div id="[+ $self -> {unique_id} +]_[+ $self->{id} +]" class="ef-tabs-content" [$if ($activeid && $self->{id} ne $activeid) $] style="display: none" [$endif$] > -[$if (!$self -> {noframe}) $]<div class="ef-tabs-separator"> -> [+ $self -> {text} +]</div><table class="[+ $class +]"><tr><td class="ef-tabs-content-cell"> [$endif$] - +[$if (!$self -> {noframe}) $]<table class="[+ $class +]"><tr><td class="ef-tabs-content-cell"> [$endif$] +[$endif$] [$endsub$] [# --------------------------------------------------------------------------- @@ -1040,10 +1046,15 @@ $] # show_controls_end - output end of form controls area #] -[$sub show_controls_end ($self, $req) $] - +[.$sub show_controls_end ($self, $req) + my $parent_control = $self -> {parent_control} ; +$] +[$if $parent_control && $parent_control -> can('show_subform_controls_end') $] +[- $parent_control -> show_subform_controls_end ($self, $req) -] +[$else$] [$ if (!$self -> {noframe}) $]</td></tr></table> [$endif$] -</div> +</div> +[$endif$] [$ if (@{$self->{bottom_code}}) $] <script language="javascript"> Modified: perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/dynctrl.pm Sun Apr 28 13:37:56 2013 @@ -78,7 +78,7 @@ sub create_ctrl } # ---------------------------------------------------------------------------- - + sub init_markup { my ($self, $req, $grid, $method) = @_ ; Modified: perl/embperl/trunk/Embperl/Form/Control/grid.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/grid.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/grid.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/grid.pm Sun Apr 28 13:37:56 2013 @@ -182,7 +182,7 @@ sub init_markup my $fields = $self -> {fields} ; my $line2 = $self -> {line2} ; - for ($i = 0; $i <= $max; $i++) + foreach $i (0..$max, '%row%') { $j = 0 ; foreach my $field ((@$fields, ($line2?($line2):()))) Modified: perl/embperl/trunk/Embperl/Form/Control/tabs.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/Control/tabs.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/Control/tabs.pm (original) +++ perl/embperl/trunk/Embperl/Form/Control/tabs.pm Sun Apr 28 13:37:56 2013 @@ -94,6 +94,41 @@ sub get_active_id __EMBPERL__ +[$ syntax EmbperlBlocks $] + +[. --------------------------------------------------------------------------- +# +# show_controls_begin - output begin of form controls area +#] + +[.$ sub show_subform_controls_begin ($self, $form, $req, $activeid) + +my $parent = $form -> parent_form ; +my $class = $parent -> {noframe}?'ef-tabs-border-u':'ef-tabs-border' ; +$] + +<div _ef_name="[+ $form->{id} +]" class="ef-tabs-content" +[$if ($activeid && $form->{id} ne $activeid) $] style="display: none" [$endif$] +> + +[$if (!$form -> {noframe}) $]<div class="ef-tabs-separator ui-accordion-header ui-helper-reset ui-state-default ui-accordion-icons ui-corner-top"><span class="ui-accordion-header-icon ui-icon ui-icon-triangle-1-s ef-icon" title="Verstecken/Anzeigen"></span><span class="ef-tabs-separator-header-text">[+ $form -> {text} +]</span></div><table class="[+ $class +]"><tr><td class="ef-tabs-content-cell"> [$endif$] + +[$endsub$] + +[.# --------------------------------------------------------------------------- +# +# show_controls_end - output end of form controls area +#] + +[$sub show_subform_controls_end ($self, $form, $req) + $] + +[$ if (!$form -> {noframe}) $]</td></tr></table> [$endif$] +</div> +[$endsub$] + + + [# --------------------------------------------------------------------------- # # show - output the control Modified: perl/embperl/trunk/Embperl/Form/ControlMultValue.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/ControlMultValue.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/ControlMultValue.pm (original) +++ perl/embperl/trunk/Embperl/Form/ControlMultValue.pm Sun Apr 28 13:37:56 2013 @@ -49,7 +49,6 @@ sub init return $self ; } - # --------------------------------------------------------------------------- # # get_all_values - returns all values and options, including addtop and addbottom @@ -69,6 +68,7 @@ sub get_all_values my $values ; my $options ; + my $nocache = 0 ; if ($self -> {datasrcobj}) { @@ -81,7 +81,8 @@ sub get_all_values { ($values, $options) = $self -> {datasrcobj} -> get_values ($req, $self) ; $options ||= $values ; - $req -> {$key} = [$values, $options] ; + $nocache = $self -> {datasrcobj} -> values_no_cache ; + $req -> {$key} = [$values, $options] if (!$nocache) ; } } else @@ -117,7 +118,7 @@ sub get_all_values push @options, map { $_ -> [1] } @$addbottom ; } - $req -> {$key} = [\@values, \@options] ; + $req -> {$key} = [\@values, \@options] if (!$nocache) ; return (\@values, \@options) ; } Modified: perl/embperl/trunk/Embperl/Form/DataSource.pm URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl/Form/DataSource.pm?rev=1476766&r1=1476765&r2=1476766&view=diff ============================================================================== --- perl/embperl/trunk/Embperl/Form/DataSource.pm (original) +++ perl/embperl/trunk/Embperl/Form/DataSource.pm Sun Apr 28 13:37:56 2013 @@ -51,6 +51,13 @@ sub init return $self ; } +# --------------------------------------------------------------------------- +# +# values_no_cache - returns true to inhibit cacheing of values during one request +# + +sub values_no_cache { 0 } + # --------------------------------------------------------------------------- # # get_values - returns the values and options --------------------------------------------------------------------- To unsubscribe, e-mail: embperl-cvs-unsubscribe [at] perl For additional commands, e-mail: embperl-cvs-help [at] perl
|