From: djk Date: Fri, 2 Jul 1999 11:35:03 +0000 (+0000) Subject: detail changes in console X-Git-Tag: R_1_31~20 X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=commitdiff_plain;h=dc999e28c96ebb4589dbdda8435a548ade15a37d;p=spider.git detail changes in console --- diff --git a/Changes b/Changes index 9d98937e..42289542 100644 --- a/Changes +++ b/Changes @@ -1,9 +1,13 @@ +01Jul99======================================================================= +1. Altered priv to 5 for connect.pl to match disconnect for nodes 29Jun99======================================================================= 1. fixed merge command that I broke. 2. added some randomness in waittimes for aborted outgoing messages 3. Message Queuing now only occurs every 5 minutes (configurable if anyone wants to write the command for doing it) nad on receipt of a PC16. This is a further attempt at sorting the crossing of messages! +4. a PC33 will cause another attempt at queuing. If you are on a roll, keep +going! 28Jun99======================================================================= 1. console.pl now works with history and editting. 2. added scrolling to stuff sent by the cluster. diff --git a/cmd/connect.pl b/cmd/connect.pl index df9a4238..14f94bb3 100644 --- a/cmd/connect.pl +++ b/cmd/connect.pl @@ -5,7 +5,7 @@ my $self = shift; my $call = uc shift; my $lccall = lc $call; -return (0) if $self->priv < 8; +return (1, $self->msg('e5')) if $self->priv < 5; return (1, $self->msg('e6')) unless $call gt ' '; return (1, $self->msg('already', $call)) if DXChannel->get($call); return (1, $self->msg('conscript', $lccall)) unless -e "$main::root/connect/$lccall"; diff --git a/perl/console.pl b/perl/console.pl index 14c945a5..0cb15bd0 100755 --- a/perl/console.pl +++ b/perl/console.pl @@ -118,6 +118,15 @@ sub show_screen $top->refresh(); } +# add a line to the end of the top screen +sub addtotop +{ + my $inbuf = shift; + push @shistory, $inbuf; + shift @shistory if @shistory > $maxshist; + show_screen(); +} + # handle incoming messages sub rec_socket { @@ -129,10 +138,7 @@ sub rec_socket my ($sort, $call, $line) = $msg =~ /^(\w)(\S+)\|(.*)$/; if ($sort eq 'D') { - push @shistory, $line; - shift @shistory if @shistory > $maxshist; -# $spos = @shistory if $spos >= @shistory - 1; - show_screen(); + addtotop($line); } elsif ($sort eq 'Z') { # end, disconnect, go, away ..... cease(0); } @@ -164,6 +170,9 @@ sub rec_stdin $bot->clrtoeol(); $bot->addstr(substr($inbuf, 0, COLS)); } + + # add it to the monitor window + addtotop($inbuf) if $inbuf; # send it to the cluster $inbuf = " " unless $inbuf; @@ -252,11 +261,8 @@ sub rec_stdin $pos++; $lth++; } elsif ($r eq "\014" || $r eq "\022") { - $top->touchwin(); - $bot->touchwin(); - $scr->touchwin(); - $scr->refresh(); - $top->refresh(); +# curscr()->refresh(); + return; } elsif ($r eq "\013") { $inbuf = substr($inbuf, 0, $pos); $lth = length $inbuf;