Morphic Windows and Shared Screens

Maloney johnm at wdi.disney.com
Mon Feb 16 23:38:17 UTC 1998


>Digging into Morphic, and I have a couple of questions:
>
>- Is there anyway to resize a Morphic World?  I'd like to make it bigger,
>but rightmost menu isn't there, and dragging the corner doesn't work.
>
>- I've now tried the remote user's cursor deal, and that works really well,
>but it requires both users to be able to see the same screen.  Is there a
>mechanism in Squeak for sending the window updates to both users, or are
>people using something like Timbuktu?

Dragging the upper right corner of a Morphic world works. (Dragging the
bottom right corner works as well, but you have to first click on the
title bar and then move the cursor around the outside of the window
and approach the bottom right corner from the outside. This stems from
an interaction between the MVC/Morphic control models.

We demo-ed a simple shared-screen facility at OOPSLA, and that demo
is in the current release. Here's how it works:

1. all users start up a copy of the same exact image, then
   opens a morphic world.
2. each user uses the "local host address" menu command in
   the morphic world to find out their host address. delete
   the little token when you've noted the address.
3. each user then connects to each of the other N-1 users
   using the "connect remote user" command. you'll be asked
   to specify the initials and host address of the remote user.
   the initials will be used to label that user's cursor on your
   screen.
4. interact with Morphic. each user's actions are processed on
   all the remote machines, so the morphic worlds remain in sync.
   at least, in theory. there are still some things that result only
   in local effects, so the worlds can get out of synch. try the
   MultiUserTinyPaint demo.
5. use the "disconnect remote user" or "disconnect all remote users"
   commands to end the session.

This is only one possible way to implement a shared virtual space
using Squeak, but it is surprising how fare you can go with this
simple model.

	-- John





More information about the Squeak-dev mailing list