Path: utzoo!attcan!uunet!husc6!think!ames!oliveb!amiga!jimm From: jimm@amiga.UUCP (Jim Mackraz) Newsgroups: comp.sys.amiga.tech Subject: Re: CloseScreen internals Keywords: closescreen 1.4 Message-ID: <3102@amiga.UUCP> Date: 14 Nov 88 21:24:31 GMT References: <4996@garfield.MUN.EDU> Reply-To: jimm@cloyd.UUCP (Jim Mackraz) Organization: Commodore-Amiga Inc, Los Gatos CA Lines: 33 In article <4996@garfield.MUN.EDU> john13@garfield.MUN.EDU (John Russell) writes: )I'm curious as to whether the inner workings of CloseScreen could be )changed for the better without breaking anything. I think they could. ) )Why not make the screen structure's presence dependent on a semaphore? In V1.4, CloseScreen (and OpenWindow, CloseWindow, OpenScreen, and some new ones) will support "Public Screens" which do All You Want and More. Although there is a count of "visitor windows," the mechanism isn't exactly a semaphore, although critical sections of the processing are protected by an internal Intuition semaphore. One of the tricky parts for a visitor window is determining if a screen exists, then adjusting for the screen's mode, font, depth and so on. Sound familiar? That's what GetScreenData() was all about. Well, that approach turned out kind of lame, and a more general function LockPublicScreen() gets you a pointer to the actual open screen, and a guarantee that that screen won't be closed until you unlock it and close any windows you opened while it was locked. I agree with John: this will be pretty useful. It provides, as a side effect, the ability to open workbench applications on various screens. You can have an editor, for example, which "jumps" from screen to screen, taking you with it ;^) )John jimm -- Jim Mackraz, I and I Computing amiga!jimm BIX:jmackraz Opinions are my own. Comments regarding the Amiga operating system, and all others, are not to be taken as Commodore official policy.