Accessing Morphs as objects

Geza Lakner MD geza67 at freestart.hu
Tue Jun 4 22:01:48 UTC 2002


Dear Ned

Thank you for your valuable input.

> There's not too much connection between the world of direct
> manipulation and the world of written Smalltalk.
Sad :-((( I thought it were a two-way system.

> that's named something like "create text references to dropped
> morphs". If you select this and drop (almost) any Morph on the 
> Workspace, you'll get a new binding for that Morph. You can then use 
Sorry but I can't get it:
I open the Supplies flap, choose a Playfield - then I can drag OVER
the Workspace window, but not ONTO it.
Nothing happens, even if I open the TRanscript window. Occurs the
bindig silent - how can I check what name has been referenced to the
morph?

> You can't find those objects, since the Browser just displays a
> class-centric view.
But aren't they instances?

> You can find their classes, and those would be 
> PasteUpMorph and TextMorph, respectively.
Yes, thanks, I found these.

> You could save the constructed Morphs as prototypes, using the
> drop-on-Workspace trick and saving references to these objects 
> somewhere globally or in another object. Then when you need one, you 
I would not force this external reference thing. Just to ask: If you
want to have a dialog box with some GUI controls (buttons, text
fields) in it - how would you set up the system?

If there is no clear programmatic connection the GUI editor and its
obejct references, how do you access e.g. the contents of a text field
in your program? Or do you use only this toy-grade scripting? Or do
you drop GUI editing entirely and return the class-based classical
method to create a dialog box textually, by hand?

Sorry if these questions represent a totally confused mind, but on a
usual GUI system (e.g. Delphi) you drop an element onto the canvas,
name it and then you can use its name purely to access its methods,
flags, contents etc. What is the most elegant, Squeak-ish approach to
have e.g. GUI database forms?

> could just use #dup to get one. I do this in my Connectors package
> with the NCMakerButtons: they hold onto copies of Morphs that are 
Where can I find this instructive package to get a glance on the
source code what happens behind the curtains?

> Visually created Morphs are just instances of pre-existing Morph
> classes, until you choose to make a new subclass. (though scripting 
Now I think I came closer: IF they are instances, what is their name
(reference)? Or are they only "void", referenceless instances?

>>  I can not drop them onto a textual
>> script window (they stay afloat)
> I'm not sure what you mean by a "textual script window" here, but
I meant a script window which holds the raw textual (editable)
representation of a morph method.

> There is no interaction that I know of between the regular Smalltalk
> browsers and other tools and the tile scripting system.
Once again ... two different worlds with no apparent connection
betweem them :-((( which would make them a complete GUI-IDE system.


Cheers,
Geza




More information about the Squeak-dev mailing list