Mercurial > pub > Impl
diff Lib/Form/Filter/Depends.pm @ 49:16ada169ca75
migrating to the Eclipse IDE
author | wizard@linux-odin.local |
---|---|
date | Fri, 26 Feb 2010 10:49:21 +0300 |
parents | 03e58a454b20 |
children | 76515373dac0 |
line wrap: on
line diff
--- a/Lib/Form/Filter/Depends.pm Fri Feb 26 01:43:42 2010 +0300 +++ b/Lib/Form/Filter/Depends.pm Fri Feb 26 10:49:21 2010 +0300 @@ -1,34 +1,34 @@ -package Form::Filter::Depends; -use base qw(Form::Filter); - -use Common; - -BEGIN { - DeclareProperty Fields => ACCESS_READ; -} - -sub SUPPORTED_CONTEXT { Form::Filter::CTX_SINGLE | Form::Filter::CTX_SET } - -sub CTOR { - my ($this,$name,$message,@fields) = @_; - - $this->SUPER::CTOR($name,$message); - $this->{$Fields} = \@fields; -} - -sub Invoke { - my ($this,$object,$context,$schemaTarget) = @_; - - foreach my $field (@{$this->{$Fields}}) { - my $objProv = $object->Navigate($object->Form->MakeItemId($field,$object->Parent)); - - if ( not $objProv or $objProv->isEmpty ) { - return new Form::FilterResult(State => Form::FilterResult::STATE_STOP); - } - - } - - return new Form::FilterResult(State => Form::FilterResult::STATE_SUCCESS_STAY); -} - -1; \ No newline at end of file +package Form::Filter::Depends; +use base qw(Form::Filter); + +use Common; + +BEGIN { + DeclareProperty Fields => ACCESS_READ; +} + +sub SUPPORTED_CONTEXT { Form::Filter::CTX_SINGLE | Form::Filter::CTX_SET } + +sub CTOR { + my ($this,$name,$message,@fields) = @_; + + $this->SUPER::CTOR($name,$message); + $this->{$Fields} = \@fields; +} + +sub Invoke { + my ($this,$object,$context,$schemaTarget) = @_; + + foreach my $field (@{$this->{$Fields}}) { + my $objProv = $object->Navigate($object->Form->MakeItemId($field,$object->Parent)); + + if ( not $objProv or $objProv->isEmpty ) { + return new Form::FilterResult(State => Form::FilterResult::STATE_STOP); + } + + } + + return new Form::FilterResult(State => Form::FilterResult::STATE_SUCCESS_STAY); +} + +1;