Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!sgi!shinobu!odin!ramoth.esd.sgi.com!msc From: msc@ramoth.esd.sgi.com (Mark Callow) Newsgroups: comp.sys.sgi Subject: Re: Wandering Icons Message-ID: <1990Sep21.214808.4211@odin.corp.sgi.com> Date: 21 Sep 90 21:48:08 GMT References: <9009181900.AA25255@aero4.larc.nasa.gov> <1990Sep19.160059.20600@odin.corp.sgi.com> <2196@charon.cwi.nl> <2200@charon.cwi.nl> Sender: news@odin.corp.sgi.com (Net News) Reply-To: msc@sgi.com Organization: Silicon Graphics Inc., Entry Systems Division Lines: 43 In article <2200@charon.cwi.nl>, dik@cwi.nl (Dik T. Winter) writes: |> In article <2196@charon.cwi.nl> dik@cwi.nl (I) write: |> ... |> |> Alas, the corrections were not correct. Although with these all would go well Thank you Dik for pointing out this bug. Alas your corrections to your corrections are not correct either. If /TidyState is not /Always and you zap a window without ever having stowed it to an icon, your /DestroyIcon function causes a PostScript error. In a one-window application, since the window is destined to die anyway, this is only noticeable as noise in the SYSLOG file. In a multi-window app it becomes a serious problem because the error causes the application to exit and all its windows to disappear. Here is my version of DestroyIcon. I've also included /TileIcon to keep the entire fix in one place. /DestroyIcon { UserProfile /TidyState get dup /Always eq Iconic? and exch /First eq IconX null ne and or { IconX IconY /lift IconTiler send } if } def /TileIcon { Iconic? { IconPlace /move self send } { UserProfile /TidyState get /Always eq { IconX IconY /lift IconTiler send } if } ifelse } def I'm attempting to get this fix into release 3.3.2. -- From the TARDIS of Mark Callow msc@ramoth.sgi.com, ...{ames,decwrl}!sgi!msc "There is much virtue in a window. It is to a human being as a frame is to a painting, as a proscenium to a play. It strongly defines its content."