cvsuser     05/10/20 13:35:13

  Modified:    App-Widget/lib/App/Widget SelectSaveAs.pm
  Log:
  keep better synchronized with a callback event
  
  Revision  Changes    Path
  1.3       +28 -19    p5ee/App-Widget/lib/App/Widget/SelectSaveAs.pm
  
  Index: SelectSaveAs.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/App-Widget/lib/App/Widget/SelectSaveAs.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- SelectSaveAs.pm   9 Aug 2005 19:25:46 -0000       1.2
  +++ SelectSaveAs.pm   20 Oct 2005 20:35:13 -0000      1.3
  @@ -77,6 +77,9 @@
           class => "App::Widget::TextField",
           #lightweight => 1,
       );
  +
  +    # initialize value to "default" if not already set
  +    $context->so_get($name, undef, "default", 1);
   }
   
   ######################################################################
  @@ -84,21 +87,27 @@
   ######################################################################
   
   # Usage: $widget->handle_event($name, $event, @args);
  -#sub handle_event {
  -#    my ($self, $name, $event, @args) = @_;
  -#
  -#    if ($event eq "change") {
  -#        #$self->split_date($name, $event, @args);
  -#        return 1;
  -#    }
  -#    elsif ($event eq "click") {
  -#        #$self->split_date($name, $event, @args);
  -#        return 1;
  -#    }
  -#    else {
  -#        return $self->SUPER::handle_event($name, $event, @args);
  -#    }
  -#}
  +sub handle_event {
  +    my ($self, $name, $event, @args) = @_;
  +
  +    if ($event eq "change") {
  +        $self->change();
  +        return 1;
  +    }
  +    else {
  +        return $self->SUPER::handle_event($name, $event, @args);
  +    }
  +}
  +
  +sub change {
  +    my ($self) = @_;
  +    my $context = $self->{context};
  +    my $name = $self->{name};
  +    my $value = $context->so_get("${name}-selected");
  +    if ($value) {
  +        $context->so_set($name, undef, $value);
  +    }
  +}
   
   ######################################################################
   # OUTPUT METHODS
  @@ -117,8 +126,8 @@
           $context->widget("${name}-save")->html() . " " .
           $context->widget("${name}-delete")->html() . " : " .
           $context->widget("${name}-saveas")->html() . " " .
  -        $context->widget("${name}-saveas_selected")->html();
  -        # $self->callback_event_tag("change");
  +        $context->widget("${name}-saveas_selected")->html() .
  +        $self->callback_event_tag("change");
   }
   
   1;
  
  
  

Reply via email to