Wandering Icons

Mark Callow msc at ramoth.esd.sgi.com
Sat Sep 22 07:48:08 AEST 1990


In article <2200 at charon.cwi.nl>, dik at cwi.nl (Dik T. Winter) writes:
|> In article <2196 at charon.cwi.nl> dik at cwi.nl (I) write:
|> ... <about some corrections to litewin.ps>
|> 
|> 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 at 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."



More information about the Comp.sys.sgi mailing list