Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!usenet.ins.cwru.edu!tut.cis.ohio-state.edu!ucbvax!ANDREW.CMU.EDU!zs01+ From: zs01+@ANDREW.CMU.EDU (Zalman Stern) Newsgroups: comp.soft-sys.andrew Subject: Re: view_FullUpdate(view, view_Remove, ...) Message-ID: Date: 31 May 90 22:03:57 GMT References: <9005282347.AA11862@holmes.parc.xerox.com> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 25 [Bill Janssen proposes that view_LinkTree with a NULL argument should do a view_FullUpdate with type view_Remove.] FullUpdate should only be called by im, another FullUpdate routine, or an Update routine (after the visual area has been cleared). This is necessary since FullUpdate requires that there be a valid graphical context available. Synchronizing update routines to the interaction loop guarantees that the graphic and window system state will be valid. Therefore, a better solution to Bill's problem would be to fix frame to generate a view_Remove FullUpdate on the old view when the view is being switched. It is perhaps plausible that this could be piggy backed on the LinkTree/UnlinkTree protocol, but I'm not sure that it would work in all cases. The main problem here is that the view_Remove protocol (as well as the view_LinkTree, view_InitChildren, etc...) protocols were added after the fact to solve specific problems. All in all niether of them are particularly well integrated or supported (i.e. not all views do view_Remove properly). Sincerely, Zalman Stern | Internet: zs01+@andrew.cmu.edu | Usenet: I'm soooo confused... Information Technology Center, Carnegie Mellon, Pittsburgh, PA 15213-3890 *** Friends don't let friends program in C++ ***