Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!lll-winken!brutus.cs.uiuc.edu!wuarchive!mailrus!ncar!tank!cps3xx!usenet From: usenet@cps3xx.UUCP (Usenet file owner) Newsgroups: comp.sys.amiga.tech Subject: Re: CloseWindowSafely Message-ID: <5802@cps3xx.UUCP> Date: 14 Dec 89 22:14:52 GMT References: <5740@cps3xx.UUCP> <8976@cbmvax.commodore.com> <5016@amiga.UUCP> Reply-To: porkka@frith.UUCP (Joe Porkka) Organization: Michigan State University Lines: 36 In article <5016@amiga.UUCP> jimm@batgirl.UUCP (Jim Mackraz) writes: >In article <8976@cbmvax.commodore.com> mks@cbmvax.commodore.com (Michael Sinz - CATS) writes: Alright already! Here is the actual code extract from the hyperhelp program. It deals with fonts too, but you can cut that out yerslevs. void CWS(win,font) struct Window *win; struct TextFont *font; { struct MsgPort *mp = (struct MsgPort *)win->UserPort; struct IntuiMessage *im, *succ; if(win==0) { return; } removemenu(win); Forbid(); im = (struct IntuiMessage *)mp->mp_MsgList.lh_Head; while ( succ=(struct IntuiMessage *)im->ExecMessage.mn_Node.ln_Succ ) { if ( im->IDCMPWindow == win ) { Remove ( im ); ReplyMsg( im ); } im = succ; } win->UserPort = 0; ModifyIDCMP( win, 0L ); Permit(); CloseWindow( win ); if(font) CloseFont(font); } Joe Porkka porkka@frith.egr.msu.edu