[Q][Morphic][presentation] Selecting several morphs for dragging

Hannes Hirzel hirzel at spw.unizh.ch
Mon Mar 4 16:12:08 UTC 2002


On Mon, 4 Mar 2002, Alan Kay wrote:

> There is a multiple selection mode that can be turned on in the preferences.
> 
> I do a lot of presentation work in Squeak, and this has led me to a 
> somewhat different way to think about this. Because I tend to do 
> "builds" (gradual reveals of items in a "slide") I have found that 
> using playfields as holders for each stage of the build is really 
> useful (and a heck of a lot more conventient and flexible than the 
> standard grouping and ungrouping mechanisms on most systems).

Thank you for the tip on using the playfield for presentation
purposes. It's name led me to think of _not_ using it for this purposes.
But it's actually handy for this purpose - one just has to set the
color to transparent and later the border width to 0.

> gradual reveals of items in a "slide"

This is an interesting technique which helps to explain things as one can
point the attention of the audience gradually to the topics one likes
them to be aware of and does not overwhelm them with to much information
in the beginning. (Basically the technique when using a black or white
board)

I would do this now the following way:

- get a RectangleMorph (or playfield) from the supplies flap
- resize it
- name it (by bringing up its halo and editing the name, e.g. HHRectangle)
- put StringMorphs and ImageMorphs into it.
- put the following code into a Workspace (which is discarded later)
  and evaluate the code

 s := SimpleButtonMorph new.
 s target: (World submorphNamed: 'HHRectangle').
 s label: 'show'.
 s position: 60 @ (Display height - 40).
 s actionSelector: #show.
 s openInWorld.

 s := SimpleButtonMorph new.
 s target: (World submorphNamed: 'HHRectangle').
 s label: 'hide'.
 s position: 100 @ (Display height - 40).
 s actionSelector: #hide.
 s openInWorld.

- resize and reposition the buttons


Do you use a similar technique? I could imagine that there are even
simpler ways of doing this by using e-toys. Could you point me at an
example project or a web page which explains the steps.


>       Also, since any morphic object can have other objects embedded 
> in it (the simplest way is to turn on "drag and drop" on such an 
> object) and will allow the brown handles to move its embedded objects 
> even outside its boundaries, often you don't need the playfield, but 
> only such a base object with dNd turned on.

I always wondered about the difference between the black and brown
halo. They both move objects. This explains it. The black one additionaly
picks them up.


Thanks again for your answer. Using Squeak as a presentation system is an
area where one can use Squeak with some configuration as an everyday 
application that offers new possibilities not found elsewhere.


Cheers
Hannes Hirzel






More information about the Squeak-dev mailing list