Changes between Version 19 and Version 20 of squeak_faq
- Timestamp:
- 10/16/2013 12:21:04 PM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
squeak_faq
v19 v20 270 270 271 271 1.) `ObjectsTool` erstellt die angezeigten Kategorien in dem es einfach alle Morphklassen nach einem bestimmten Selektor durchsucht und nur diese hinzufügt. Man benötigt also einen Morph und zwar den Morph, der das Spiel darstellt (z.B. `BlyPacmanApp`). 272 2.) Auf der Klassenseite des Morphs wird eine Kategorie "parts bin" benötigt und in dieser eine Methode `#descriptionForPartsBin . Das ist der Hook für `ObjectsToo`.272 2.) Auf der Klassenseite des Morphs wird eine Kategorie "parts bin" benötigt und in dieser eine Methode `#descriptionForPartsBin`. Das ist der Hook für `ObjectsTool`. 273 273 274 274 {{{ … … 281 281 }}} 282 282 283 Dabei kann mit einem vierten Parameter auch ein Beispielbild angegeben werden (siehe z.B. `AudioChatGUIdescriptionForPartsBin`, self ... sampleImageForm:). Ansonsten wird ein kleines Icon automatisch erstellt.284 3.) Damit sollte der Morph in dem !ObjectsToolerscheinen. Allerdings kann es sein, dass der Morph nicht richtig initialisiert wird (z.B. das Extent nicht stimmt).285 286 Wenn man ein Objekt aus dem !ObjectsToolzieht, wird der jeweiligen Klasse `#newStandAlone` als Nachricht gesendet. Die Methode dazu sieht wie folgt aus.283 Dabei kann mit einem vierten Parameter auch ein Beispielbild angegeben werden (siehe z.B. `AudioChatGUIdescriptionForPartsBin`, `self ... sampleImageForm:`). Ansonsten wird ein kleines Icon automatisch erstellt. 284 3.) Damit sollte der Morph in dem `ObjectsTool` erscheinen. Allerdings kann es sein, dass der Morph nicht richtig initialisiert wird (z.B. das Extent nicht stimmt). 285 286 Wenn man ein Objekt aus dem `ObjectsTool` zieht, wird der jeweiligen Klasse `#newStandAlone` als Nachricht gesendet. Die Methode dazu sieht wie folgt aus. 287 287 {{{ 288 288 newStandAlone … … 291 291 }}} 292 292 293 Während Morph `#initializeToStandAlone` einfach auf `#initialize` zurückführt, überschreiben andere Morphs die Methode (z.B. !PasteUpMorph)und setzen z.B. die Größe. Falls das der Fall ist, kann man die `#initializeToStandAlone` einfach überschreiben:293 Während Morph `#initializeToStandAlone` einfach auf `#initialize` zurückführt, überschreiben andere Morphs (z.B. `PasteUpMorph`) die Methode und setzen z.B. die Größe. Falls das der Fall ist, kann man die `#initializeToStandAlone` einfach überschreiben: 294 294 295 295 {{{