;skip 1 ;vsp 6 ;squish ;lftmar 0 ;topmar 0 ;botmar 0 ;rgtmar 0 ;dfont TIMESROMAN10,TIMESROMAN10,TIMESROMAN10I,HELVETICA10,TIMESROMAN18B,TIMESROMAN12B,TIMESROMAN12B,GACHA10,GACHA10B,MATH10,HIPPO10 "‡"A  New Window System q1 yFrames "`  1. Frames "( PFrames‚are‚windows‚that‚control‚the‚size‚and‚position‚of‚their‚inferiors.‚They‚provide‚the   ability‚to‚easily‚create‚complicated‚window‚congurations.‚Windows‚that‚are‚inferior‚to‚frames,   and‚that‚are‚controlled‚by‚the‚frames,‚are‚called‚panes.‚Frames‚may‚also‚have‚inferiors‚that   are‚înot‚îdirectly‚îcontrolled‚îby‚îthe‚îframe,‚and‚îthese‚îwill‚înever‚îbe‚îreferred‚îto‚îas‚îpanes.‚   "@  1.1 Flavors that apply to all frames   "   tv:basic-frame‚(Flavor  The‚îavor‚îthat‚should‚be‚included‚at‚the‚base‚of‚all‚frames.‚It‚denes‚the‚tv:selected-  pane‚îinstance‚îvariable,‚and‚appropriate‚messages‚to‚handle‚selection‚correctly‚[see‚].‚tv:basic-frame‚also‚denes‚the‚instance‚variable‚tv:recursion,‚which‚is  looked‚at‚by‚the‚:inferior-expose,‚:inferior-deexpose,‚and‚:inferior-set-edges‚methods  to‚determine‚whether‚the‚message‚transmission‚is‚an‚internal‚or‚external‚request.‚This  avor‚does‚not‚actually‚supply‚a‚non-noop‚denition‚of‚these‚messages,‚though  Wrappers‚are‚dened‚on‚:expose‚and‚:deexpose‚to‚bind‚tv:recursion‚to‚t‚so‚that  individual‚îmethods‚îdon't‚îneed‚îto‚îbe‚îconcerned‚îwith‚îthis‚îissue.‚This‚avor‚also‚redenes  the‚î:screen-manage-restore-area‚îmethod,‚to‚îrestore‚îa‚îset‚îof‚îrectangles‚on‚the‚frame‚by  restoring‚îpieces‚îof‚îits‚îinferiors‚îif‚îthe‚îframe‚îdoes‚înot‚îhave‚îa‚îbit-array‚.‚This‚allows‚much  exibility‚in‚determining‚where‚to‚put‚the‚bit‚arrays‚for‚a‚particular‚application‚(either  associated‚îwith‚îthe‚îframe‚îitself‚îor‚îon‚îthe‚îindividual‚îpanes).‚   "   :select-pane‚pane  Causes‚the‚selected-pane‚to‚be‚set‚to‚pane‚,‚which‚must‚be‚a‚pane‚of‚the‚frame.  Makes‚îthat‚îpane‚the‚selected‚window‚now‚if‚the‚previously‚selected‚pane‚is‚the‚selected  window,‚and‚îmakes‚îthat‚îpane‚îthe‚îselected‚îwindow‚îany‚îtime‚îa‚î:select‚îmessage‚îis‚sent‚to  the‚îframe.‚   "   :selected-pane  Returns‚îthe‚îcurrently‚îselected‚îpane.‚   "   tv:frame-pane-mixin‚(Flavor  This‚avor‚is‚used‚when‚the‚only‚windows‚inferior‚to‚a‚frame‚are‚panes‚that‚are  directly‚controlled‚by‚the‚frame‚itself.‚It‚turns‚o‚most‚screen‚management‚for‚the  frame,‚and‚îprovides‚îhandlers‚îfor‚îthe‚î:inferior-expose‚îand‚î:inferior-deexpose‚îmessages.‚   "   :inferior-expose‚inferior  This‚îmessage‚îis‚îsent‚îto‚îthe‚îframe‚îwhenever‚îa‚îpane‚îis‚îsent‚îan‚î:expose‚îmessage,‚and‚the  pane‚îincludes‚îthe‚îtv:pane-mixin‚îavor.‚If‚tv:recursion‚is‚nil,‚then‚an‚:expose‚message  is‚sent‚to‚the‚frame,‚and‚afterwards‚nil‚is‚returned.‚Returning‚nil‚informs‚the‚caller  that‚the‚message‚has‚been‚handled,‚and‚therefore‚the‚methods‚should‚not‚be‚run.‚If  tv:recursion‚is‚non-nil,‚then‚t‚is‚returned‚indicating‚to‚the‚pane‚that‚it‚should‚perform ":  DSK:LMWIND;FRAME 4 E20-AUG-80î "‡"A  New Window System q2 hFlavors that apply to all frames "` its‚normal‚:expose‚actions.‚Since‚it‚is‚only‚legal‚to‚send‚a‚non-recursive‚:expose  message‚to‚an‚active‚pane,‚inferior‚is‚checked‚against‚the‚list‚of‚active‚inferiors,‚which  is‚dened‚to‚be‚the‚list‚in‚the‚instance‚variable‚tv:exposed-inferiors.‚!Therefore,  sending‚îa‚î:expose‚îmessage‚îto‚îan‚îactive‚îpane‚îhas‚îthe‚îeect‚îof‚îexposing‚îthe‚îframe.‚   "   :inferior-deexpose‚inferior  Same‚îas‚î:inferior-expose,‚but‚îfor‚îthe‚î:deexpose‚îmessage.‚ "‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"  DSK:LMWIND;FRAME 4 E20-AUG-80î "‡"A  New Window System q3 9Flavor Index "` uFlavor Index   "d  tv:basic-frame L. l.  . ,. L. l.  . ,. L. l.  . ,.1   tv:frame-pane-mixin ,. L. l.  . ,. L. l.  . ,.1 "*   E20-AUG-80î "‡"A  New Window System q4 #Message Index "` \Message Index   "d  :inferior-deexpose  . ,. L. l.  . ,. L. l.  . ,.2   :inferior-expose l.  . ,. L. l.  . ,. L. l.  . ,.1   :select-pane ,. L. l.  . ,. L. l.  . ,. L. l.  . ,.1   :selected-pane L. l.  . ,. L. l.  . ,. L. l.  . ,.1 "*   E20-AUG-80î "‡"A  New Window System q1 Table of Contents "` >Table of Contents "d  1. Frames ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ".1   1.1 Flavors that apply to all frames b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ".1 "  Flavor Index B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ".3   Message Index b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ". B. b. . ".4 "‡"‡"‡"‡"‡"‡"‡"‡"‡"‡"1   E20-AUG-80î