(FILECREATED " 4-Jul-86 20:58:33" {QV}<NOTECARDS>1.3K>RHTPATCH053.;2 6204         changes to:  (VARS RHTPATCH053COMS)		   (FNS NC.GETPROMPTWINDOW)      previous date: " 4-Jul-86 18:46:54" {QV}<NOTECARDS>1.3K>RHTPATCH053.;1)(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)(PRETTYCOMPRINT RHTPATCH053COMS)(RPAQQ RHTPATCH053COMS ((* * Change to NCINTERFACE)			  (FNS NC.GETPROMPTWINDOW)))(* * Change to NCINTERFACE)(DEFINEQ(NC.GETPROMPTWINDOW  (LAMBDA (MAINWINDOW #LINES FONT DONTCREATE MINWIDTH)     (* rht: " 4-Jul-86 18:44")          (* makes sure that MAINWINDOW has an attached promptwindow and returns it. If one already exists, it is shaped to 	  be at least #LINES high. If FONT is NIL, the font of the main window is used for the promptwindow.)          (* * fgh 6/6/86 Adapted from system GETPROMPTWINDOW. Added MINWIDTH arg.)          (* * rht 7/2/86: Now attaches prompt window on right if near right edge of screen.)          (* * rht 7/4/86: Yanked out PositionOnEdge localvar. Put code in place.)    (PROG ((PWINDOWPROP (WINDOWPROP MAINWINDOW (QUOTE PROMPTWINDOW)))	     (PWINDOWMINWIDTH (WINDOWPROP MAINWINDOW (QUOTE PROMPTWINDOWMINWIDTH)))	     (MAINWINDOWREGION (WINDOWPROP MAINWINDOW (QUOTE REGION)))	     PWINDOW PWINDOWREGION WIDTH HEIGHT OBSCUREDHEIGHT PWINDOW.PWINDOW)	    (COND	      (DONTCREATE (RETURN (CAR PWINDOWPROP)))	      (PWINDOWPROP (SETQ PWINDOW (CAR PWINDOWPROP))			   (COND			     ((NOT (OPENWP PWINDOW))			       (ATTACHWINDOW PWINDOW MAINWINDOW (QUOTE TOP)					       (if (GREATERP (PLUS (fetch (REGION LEFT)									    of MAINWINDOWREGION)									 (WIDTHIFWINDOW									   (OR MINWIDTH 										 PWINDOWMINWIDTH)))								 SCREENWIDTH)						   then (QUOTE RIGHT)						 else (QUOTE LEFT))					       (QUOTE LOCALCLOSE))))			   (if (SETQ PWINDOW.PWINDOW (WINDOWPROP PWINDOW (QUOTE PROMPTWINDOW))				   )			       then                        (* This prompt window has a prompt window of its own.							     Close and detach it.)				      (FREEATTACHEDWINDOW (CAR PWINDOW.PWINDOW))				      (CLOSEW (CAR PWINDOW.PWINDOW)))			   (WINDOWPROP PWINDOW (QUOTE MAXSIZE)					 (CONS 64000 64000))			   (WINDOWPROP PWINDOW (QUOTE MINSIZE)					 (CONS 1 1))			   (SETQ HEIGHT (HEIGHTIFWINDOW (TIMES (OR #LINES (CDR PWINDOWPROP)									   1)								     (FONTPROP (DSPFONT NIL 											  PWINDOW)										 (QUOTE HEIGHT)))))			   (SETQ WIDTH (MAX (WIDTHIFWINDOW (OR MINWIDTH PWINDOWMINWIDTH 1))						(fetch (REGION WIDTH) of MAINWINDOWREGION)))			   (SETQ PWINDOWREGION (WINDOWPROP PWINDOW (QUOTE REGION)))			   (COND			     ((OR (NOT (EQP HEIGHT (fetch (REGION HEIGHT) of PWINDOWREGION))					   )				    (NOT (EQP WIDTH (fetch (REGION WIDTH) of PWINDOWREGION))))                                                             (* Window exists, but not right size.)			       (SHAPEW PWINDOW					 (if (LEQ (PLUS (fetch (REGION LEFT) of 										 MAINWINDOWREGION)							      (WIDTHIFWINDOW (OR MINWIDTH 										  PWINDOWMINWIDTH)))						      SCREENWIDTH)					     then (create REGION						       using PWINDOWREGION HEIGHT _ HEIGHT WIDTH _ 							       WIDTH)					   else (create REGION							    BOTTOM _(fetch (REGION BOTTOM)								       of PWINDOWREGION)							    LEFT _(DIFFERENCE							      (PLUS (fetch (REGION LEFT)									 of MAINWINDOWREGION)								      (fetch (REGION WIDTH)									 of MAINWINDOWREGION))							      WIDTH)							    HEIGHT _ HEIGHT							    WIDTH _ WIDTH)))			       (RPLACD PWINDOWPROP #LINES)                                                             (* Fall through to check visibility)			       )))	      (T (SETQ PWINDOW (CREATEW (create REGION						      LEFT _ 0						      BOTTOM _ 0						      WIDTH _(MAX (OR MINWIDTH 1)								    (fetch (REGION WIDTH)								       of MAINWINDOWREGION))						      HEIGHT _(SETQ HEIGHT							(HEIGHTIFWINDOW							  (TIMES (OR #LINES (SETQ #LINES 1))								   (FONTPROP (OR FONT										     (SETQ FONT										       (DSPFONT											 NIL 										       MAINWINDOW)))									       (QUOTE HEIGHT))))))					    NIL NIL T))		 (DSPSCROLL T PWINDOW)		 (DSPFONT FONT PWINDOW)		 (WINDOWPROP PWINDOW (QUOTE PAGEFULLFN)			       (QUOTE NILL))		 (ATTACHWINDOW PWINDOW MAINWINDOW (QUOTE TOP)				 (if (GREATERP (PLUS (fetch (REGION LEFT) of 										 MAINWINDOWREGION)							   (WIDTHIFWINDOW (OR MINWIDTH 										  PWINDOWMINWIDTH)))						   SCREENWIDTH)				     then (QUOTE RIGHT)				   else (QUOTE LEFT))				 (QUOTE LOCALCLOSE))		 (WINDOWPROP MAINWINDOW (QUOTE PROMPTWINDOW)			       (CONS PWINDOW #LINES))		 (WINDOWPROP PWINDOW (QUOTE OPENFN)			       (FUNCTION \PROMPTWINDOW.OPENFN))))	    (COND	      ((ILESSP (SETQ OBSCUREDHEIGHT (IDIFFERENCE SCREENHEIGHT							       (fetch (REGION TOP)								  of (WINDOWPROP PWINDOW										     (QUOTE REGION))									)))			 0)                                  (* Promptwindow off screen at top, so slip window 							     group down to make it visible)		(RELMOVEW MAINWINDOW (create POSITION						 XCOORD _ 0						 YCOORD _ OBSCUREDHEIGHT))))	    (WINDOWPROP PWINDOW (QUOTE MINSIZE)			  (CONS 1 HEIGHT))	    (WINDOWPROP PWINDOW (QUOTE MAXSIZE)			  (CONS 64000 HEIGHT))	    (WINDOWPROP MAINWINDOW (QUOTE PROMPTWINDOWMINWIDTH)			  (OR MINWIDTH 1))	    (OPENW PWINDOW)	    (RETURN PWINDOW)))))(PUTPROPS RHTPATCH053 COPYRIGHT ("Xerox Corporation" 1986))(DECLARE: DONTCOPY  (FILEMAP (NIL (460 6122 (NC.GETPROMPTWINDOW 470 . 6120)))))STOP