[Squeak-ev] Alignment von Morphs in einem Morph

Hannes Hirzel hirzel at spw.unizh.ch
Sam Jan 15 14:05:38 UTC 2005


Hinweis auf die Frage, wie heerausgefunden werden kann, welchewelcher Halo
welche Methode aufruft.

Im folgenden schildere ich skizzenhaft die Ueberlegungen, die ich mir
anstelle, wenn ich so etwas heraussuchen will ("Gedankenprotokoll")

Dass die farbigen Punkte mit denen man einen Morph bedienen kann 'Halo'
heissen fuehrt dazu, dass ich einem Systembrowser aufrufe und dort in der
linken oberen Kolonne ein Kontextmenu hole um eine Klasse zu suchen, die
den substring 'Halo' enthaelt.

Es gibt deren zwei:

HaloMorph
HaloSpec

Ich vermute, dass HaloMorph wohl die sichtbare Form ist, waehrend HaloSpec
beschreiben wird, wie die Halos hergestellt werden, was interessanter
erscheint.

Ich waehle also 'HaloSpec'. Die Klasse wird angezeigt; ich schaue mir den
Kommentar und die Methoden an. Es gibt nur wenige Methoden. Der Kernpunkt
der Aktivitaet kann also nicht hier sein.

Ich rufe dann den Menupunkt auf 'Class references', d.h. die Angabe von
Stellen im Sourcecode, die diese Klasse aufrufen.

Ich finde dann eine Methode auf der Klassenseite von 'Preferences'.

Ich hangle mich dann den Methodenaufrufen entlang nach oben ('senders')
bis ich zu einem Buendel von Methoden kommen, die spezifisch Halos
zusammenstellen. Sie enthalten 'literal arrays', die spezifizieren, wie
die Halos aufgebaut werden. Dort gibt es Methoden, die jeweils einen
spezifischen Halopunkt hinzufuegen. Darin sieht man dann auch, welche
Methode aufgerufen wird, wenn der Halopunkt betaetigt wird.

Interessant also: Ich kann meine eigene Halo-Kombination zusammenstellen,
d.h. also nicht hauefig gebrauchte Halos entweder hinauswerfen oder mit
etwas anderem belegen.

Um sich Methodenaufrufen entlang zu hangeln bewaehrt sich die
Tastenkombination ALT-M (Windows). Ich selektiere den Methodennamen und
druekce die Tastenkombinartion.

Wie Klaus gewuenscht hat, sind diese Angaben 'Hilfe zur Selbsthilfe', d.h.
keine pfannenfertige Antwort.

Im Grunde genommen ist der Squeak-Code ein maechtiges Hypertextsystem mit
gutem Dokumentationswert. Wie man aber darin navigiert ist nicht so
offensichtlich wie im WWW (dort ist es defacto auch nicht immer einfach).

Ein alternativer Pfad waere sicher auch das Werkzeug von Trygve Reenskaug.
Es enthaelt ein Werkzeug mit dem man Methodenaufrufe ab einer bestimmten
Stelle protokollieren kann (nach einem Ausloeser).


Viel Erfolg (und Spass)

Hannes