ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/src/ActiveDoc/UserQuery.pm
(Generate patch)

Comparing COMP/SCRAM/src/ActiveDoc/UserQuery.pm (file contents):
Revision 1.1 by williamc, Wed Sep 1 14:52:39 1999 UTC vs.
Revision 1.3 by williamc, Thu Sep 23 10:35:02 1999 UTC

# Line 7 | Line 7
7   # ---------
8   # new(UserInterface)    : A new query object with a specific interface
9   # setparam(name,value)  : set a parameter
10 + # setifundef(name,value) : only set param to value if undefined
11   # getparam(name)        : return value of named parameter
12   # clearquery()          : remove all queries to be asked
13 < # setquery($type,$parameter,@args) : register a query of type for $parameter
13 > # setquery($type,$parameter,$string,@args) : register a query of type for
14 > #                                               $parameter
15 > # querycheck(name, checkobject) : Set a checksum to be made on each query
16 > # addquerymessage(name,string) : Add an extra message to the query for name
17   # askuser()             : Ask user registered queries
18   # formatquery(args)     : apply formatting information for display
19   #                                 of the query . args dependent on implemtation
# Line 37 | Line 41 | sub setparam {
41          $self->{params}{$name}=$value;
42   }
43  
44 + sub setifundef {
45 +        my $self=shift;
46 +        my $name=shift;
47 +        my $value=shift;
48 +
49 +        if ( ! defined $self->getparam($name) ) {
50 +          $self->setparam($name, $value);
51 +        }
52 + }
53 +
54   sub getparam {
55          my $self=shift;
56          my $name=shift;
# Line 66 | Line 80 | sub setquery {
80          }
81   }
82  
83 + sub querycheck {
84 +        my $self=shift;
85 +        my $name=shift;
86 +        my $check=shift;
87 +
88 +        $self->{querycheck}{$name}=$check;
89 + }
90 +
91 + sub addquerymessage {
92 +        my $self=shift;
93 +        my $name=shift;
94 +        my $string=shift;
95 +        $self->{querystring}{$name}=$self->{querystring}{$name}.$string;        
96 + }
97 +
98   sub formatquery {
99          my $self=shift;
100  
# Line 77 | Line 106 | sub askuser {
106          my $self=shift;
107          my $string=shift;
108  
109 <        $self->{UserInterface}->startform();
109 >        $self->{UserInterface}->startform($string);
110          foreach $query ( @{$self->{queries}} ) {
111 <          $self->{UserInterface}->runquery($self->{querytype}{$query},
112 <                $query, $self->{querystring}{$query},
113 <                $self->{queryvars}{$query}, $self->{queryformat}{$name});
111 >          my @rqargs=($self->{querytype}{$query}, $query,
112 >                $self->{querystring}{$query},
113 >                $self->{queryvars}{$query}, $self->{queryformat}{$query});
114 >          if ( exists $self->{querycheck}{$query} ) {
115 >             $self->{UserInterface}->runcheckedquery(  
116 >                                $self->{querycheck}{$query}, @rqargs);
117 >          }
118 >          else {
119 >             $self->{UserInterface}->runquery(@rqargs);
120 >          }
121          }
122          $self->{UserInterface}->endform($self);
123   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines