6. make set/isolate and acc/route mutually exclusive (and issue appropriate
[spider.git] / perl / DXUtil.pm
index 56e36d4220ba05bc43a6bd3195c4efa672a19b81..10b3538767822ef46735fb4cc2a8b267e7a8c024 100644 (file)
@@ -12,6 +12,16 @@ use Date::Parse;
 use IO::File;
 use Data::Dumper;
 
+use strict;
+
+use vars qw($VERSION $BRANCH);
+$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
+$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ ) || 0;
+$main::build += $VERSION;
+$main::branch += $BRANCH;
+
+use vars qw(@month %patmap @ISA @EXPORT);
+
 require Exporter;
 @ISA = qw(Exporter);
 @EXPORT = qw(atime ztime cldate cldatetime slat slong yesno promptf 
@@ -20,6 +30,7 @@ require Exporter;
                         is_qra is_freq is_digits is_pctext is_pcflag insertitem deleteitem
             );
 
+
 @month = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
 %patmap = (
                   '*' => '.*',
@@ -184,15 +195,17 @@ sub print_all_fields
        my @out;
        my @fields = $ref->fields;
        my $field;
+       my $width = $self->width - 1;
+       $width ||= 80;
 
        foreach $field (sort {$ref->field_prompt($a) cmp $ref->field_prompt($b)} @fields) {
                if (defined $ref->{$field}) {
                        my ($priv, $ans) = promptf($ref->field_prompt($field), $ref->{$field});
                        my @tmp;
-                       if (length $ans > 79) {
+                       if (length $ans > $width) {
                                my ($p, $a) = split /: /, $ans, 2;
                                my $l = (length $p) + 2;
-                               my $al = 79 - $l;
+                               my $al = ($width - 1) - $l;
                                my $bit;
                                while (length $a > $al ) {
                                        ($bit, $a) = unpack "A$al A*", $a;