Article View: comp.sys.apple2.gno
Article #243Re: Multiple Desktop Applications
From: John MacLean
Date: Tue, 29 Dec 1992 21:39
Date: Tue, 29 Dec 1992 21:39
51 lines
3024 bytes
3024 bytes
In article <bazyar.725609147@teal> bazyar@teal.csn.org (Jawaid Bazyar) writes:
>johnmac@fawlty.towers.oz.au (John MacLean) writes:
>
>>Would it be possible to:
>>[.....]
>>- In this way, have multiple applications running on the desktop under
>>GNO, with each application running in a scaleable window with a menu bar.
>>Has anyone given this (or something similar) some thought?
>
> John,
> Lots of thought. First off, there are lots of programs that people
>will (reasonably) expect to run from such an environment. The ones
>I'm referring to, like modZap, soniqTracker, Finder, synthLab, Platinum
>Paint, and many other, all write directly to the screen. This is a big
>problem and it's highly unlikely anyone will ever change these apps
>to not write directly to the screen.
>
> Other than that, what you noted above is just a few of the things
>that Switch-It! does to make its application switching environment
>work for most programs.
> Jawaid Bazyar
Just giving you a chance to plug Switch-It :-).
Seriously, I didn't think Switch-It put applications into scaleable windows,
I thought it JUST swapped out the entire screen (and all the toolset direct
pages, stack, global data, etc, etc, etc). Otherwise you would still have
the problem of programs writing directly to the screen.
What I was proposing was that tool calls were patched so that Quickdraw,
menu manager, etc, etc, were all actually only started once.
When multiple applications tried to start up screen based toolsets the
patch code would keep tables of virtual screens in windows, and only start
the toolsets if they had not already been started.
You wouldn't have direct page toolset conflict, because each toolset would
only be started once.
When toolcalls were made, the grafport etc would be set to the virtual
window of the appropriate application (determined via a getpid() and a
table lookup).
Although this is extremely complicated (as is what you have achieved), this
would allow (I would think) multiple desktop applications to multitask
PRE-EMPTIVELY.
As you suggested, this doesn't get around applications that write directly
to the screen, and more than likely there are other very serious problems
with existing applications.
--
This net: johnmac@fawlty.towers.oz.au Phone: +61 2 427 2999
That net: uunet!fawlty.towers.oz.au!johnmac Fax: +61 2 427 7072
Snail: Tower Technology, 1 Apollo Pl, Home: +61 2 449 5930
Lane Cove, NSW 2066, Australia.
Technical Details
Message-ID:
<1992Dec29.213959.1868@fawlty.towers.oz.au>Path:
arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!metro!ipso!fawlty!johnmacReferences:
<1992Dec28.220347.20730@fawlty.towers.oz.au> <bazyar.725609147@teal>Show Full Headers
Complete Article Headers
Newsgroups: comp.sys.apple2.gno Path: arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!metro!ipso!fawlty!johnmac From: johnmac@fawlty.towers.oz.au (John MacLean) Subject: Re: Multiple Desktop Applications Reply-To: johnmac@fawlty.towers.oz.au (John MacLean) Organization: Tower Technology, Sydney Date: Tue, 29 Dec 1992 21:39:59 GMT Message-ID: <1992Dec29.213959.1868@fawlty.towers.oz.au> References: <1992Dec28.220347.20730@fawlty.towers.oz.au> <bazyar.725609147@teal> Lines: 51