(FILECREATED "24-Aug-84 13:52:17" {ERIS}<LISPUSERS>YAPFF.;1 3309 changes to: (VARS YAPFFCOMS PAGEFULLFLASHSHADE PAGEFULLTITLESHADE PAGEFULLFLASHCOUNT PAGEFULLFLASHINTERVAL) (FNS NPAGEFULLFN SHIFTDOWN? WAITFORSHIFTUP WAITFORSHIFTDOWN)) (* Copyright (c) by NIL. All rights reserved.) (PRETTYCOMPRINT YAPFFCOMS) (RPAQQ YAPFFCOMS [(FNS NPAGEFULLFN WAITFORSHIFTUP SHIFTDOWN?) (VARS PAGEFULLFLASHCOUNT PAGEFULLFLASHSHADE PAGEFULLTITLESHADE PAGEFULLFLASHINTERVAL) (P (AND (GETD (QUOTE NPAGEFULLFN)) (/MOVD (QUOTE NPAGEFULLFN) (QUOTE PAGEFULLFN]) (DEFINEQ (NPAGEFULLFN [LAMBDA (STREAM) (* lmm "24-Aug-84 13:52") (COND [(AND [SETQ STREAM (DISPLAYSTREAMP (OR STREAM (TTYDISPLAYSTREAM] (SETQ STREAM (WFROMDS STREAM T))) (* got a window) (if [OR (SHIFTDOWN?) (AND (NOT (READP T)) (NOT (WINDOWPROP STREAM (QUOTE NOPAGEHOLD] then (RESETLST (PROGN (RESETSAVE (SETDISPLAYHEIGHT T)) (* * first change the title to show "Holding: ") (RESETSAVE WINDOWTITLESHADE WINDOWTITLESHADE) [SETQ WINDOWTITLESHADE (PROG1 WINDOWTITLESHADE (SETQ WINDOWTITLESHADE PAGEFULLTITLESHADE) (RESETSAVE NIL (LIST (FUNCTION [LAMBDA (W TITLE) (WINDOWPROP W (QUOTE TITLE) TITLE]) STREAM (PUTWINDOWPROP STREAM (QUOTE TITLE) (CONCAT "Holding: " (OR (GETWINDOWPROP STREAM (QUOTE TITLE)) ""] (* * then flash the window until the shift is down or there is typeahead) ) (bind (I ← PAGEFULLFLASHCOUNT) TIMER until (OR (READP T) [AND (WAIT.FOR.TTY PAGEFULLFLASHINTERVAL) (bind WAITTIME do (if (OR (READP T) (SHIFTDOWN?)) then (RETURN T) else (BLOCK)) repeatwhile (NOT (TIMEREXPIRED? (OR WAITTIME (SETQ WAITTIME (SETQ TIMER (SETUPTIMER PAGEFULLFLASHINTERVAL TIMER] (AND I (LESSP (add I -1) 0))) do (FLASHWINDOW STREAM NIL NIL PAGEFULLFLASHSHADE)) (* * now, wait for shift to go up. If both shifts are down, set NOPAGEHOLD on this window) (WAITFORSHIFTUP STREAM] (T (do (BLOCK) while (SHIFTDOWN?]) (WAITFORSHIFTUP [LAMBDA (STREAM) (* lmm "24-Aug-84 13:37") (if (SHIFTDOWN?) then (bind BOTHDOWN do (AND (KEYDOWNP (QUOTE LSHIFT)) (KEYDOWNP (QUOTE RSHIFT)) (SETQ BOTHDOWN T)) (BLOCK) repeatwhile (SHIFTDOWN?) finally (AND STREAM (WINDOWP STREAM) (PUTWINDOWPROP STREAM (QUOTE NOPAGEHOLD) BOTHDOWN]) (SHIFTDOWN? [LAMBDA NIL (* lmm "24-Aug-84 13:41") (OR (KEYDOWNP (QUOTE LSHIFT)) (KEYDOWNP (QUOTE RSHIFT]) ) (RPAQQ PAGEFULLFLASHCOUNT NIL) (RPAQQ PAGEFULLFLASHSHADE 1) (RPAQQ PAGEFULLTITLESHADE 7) (RPAQQ PAGEFULLFLASHINTERVAL 4000) (AND (GETD (QUOTE NPAGEFULLFN)) (/MOVD (QUOTE NPAGEFULLFN) (QUOTE PAGEFULLFN))) (DECLARE: DONTCOPY (FILEMAP (NIL (595 3053 (NPAGEFULLFN 605 . 2455) (WAITFORSHIFTUP 2457 . 2882) (SHIFTDOWN? 2884 . 3051) )))) STOP