Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!sdd.hp.com!ucsd!ames!sgi!shinobu!odin!ramoth.esd.sgi.com!msc From: msc@ramoth.esd.sgi.com (Mark Callow) Newsgroups: comp.sys.sgi Subject: Re: Window Murder Message-ID: <1990Nov26.192003.7871@odin.corp.sgi.com> Date: 26 Nov 90 19:20:03 GMT References: <9011220303.AA04608@karron.med.nyu.edu> Sender: news@odin.corp.sgi.com (Net News) Reply-To: msc@sgi.com Organization: Silicon Graphics Inc., Entry Systems Division Lines: 37 In article <9011220303.AA04608@karron.med.nyu.edu>, karron@KARRON.MED.NYU.EDU writes: |> |> If there is a single window associated with the process,then clicking on the |> zap icon on the upper right hand corner of the window kills (sends a |> SIGKILL signal) to the process controlling the window. The window is not |> a separate process. If you have multiple windows, then the SIGKILL is not |> sent unless you kill the first window created by the process, the wid of the |> first winopen(); You can not kill the process by killing subwindows or secondary |> windows. They process is not really a parent process, nothing is forked for |> each new window after the initial winopen. Clicking the lightning bolt is equivalent to selecting "Close" from the window frame menu. "Close" does nothing unless you have queued WINSHUT. In that case your program receives a WINSHUT token in its queue after "Close" has been selected. When you select "Close" on the last remaining window of an application (or the only window in a single window app.) it does the same thing as "Quit". "Quit" sends SIGKILL unless you have queued WINQUIT. In the latter case your program receives a WINQUIT token. |> |> If there is NO primary window(not really parent window) because the main |> program loop starts up with a noport() call, then you can not kill the |> program, except from another shell window and doing an explicit kill or |> killall. You can kill it by expressing interest in WINSHUT events (qdevice WINSHUT) and then have your main loop can exit when it receives WINSHUT from your last remaining visible window. I don't know whether the problem with noport() windows and "Close" will be fixed. As I said in my earlier posting noport() is basically a hack. -- From the TARDIS of Mark Callow msc@ramoth.sgi.com, ...{ames,decwrl}!sgi!msc "Spirits of genius are always opposed by mediocre minds" - Albert Einstein