Wie referenziere (d.h. programmiere) ich einen Morph, der durch direkte Manipulation erstellt wurde, z.B. durch Ziehen eines Textfeldes aus dem Menü "Zubehör" auf den Desktop, über Squeak/Smalltalk-Code, z.B. im Arbeitsbereich? Wenn ich einen Morph über Squeak/Smalltalk-Code instanziiere, ist das in Ordnung (na ja, irgendwie schon - ich lerne Morphic gerade erst), aber ich bin ratlos, wenn ich einen Morph in die Existenz gezogen habe.
Antwort
Zu viele Anzeigen?Dank an Mike Stramba von der Squeak-Mailingliste für die folgenden Informationen:-
Ziehen und Ablegen des Morphs auf eine Arbeitsfläche ist ein guter Anfang (Sie müssen auf das "Quadrat" in der Kopfzeile des Arbeitsbereichs klicken und die Option "Textverweis auf Textverweis auf abgelegte Morpheme erstellen").
Wenn Sie den Morph erstellen, wird er außerdem der aktuellen Instanzvariablen "Desktop" (Welt) Submorphs-Instanzvariable hinzugefügt.
Sie können MMB auf dem "Desktop" aufrufen, auf die Registerkarte "Debug" klicken und die aktuelle Welt. Sie werden sehen, es ist ein PasteUpMorph.
Sie können alle PasteUpMorphs im Bild erhalten mit: p := PasteUpMorph allInstances, der ein Array mit allen Projekten zurückgibt "Desktops" im Bild zurückgibt.