Etoys: Etoys-kfr.58.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Etoys: Etoys-kfr.58.mcz

commits-2
Karl Ramberg uploaded a new version of Etoys to project Etoys:
http://source.squeak.org/etoys/Etoys-kfr.58.mcz

==================== Summary ====================

Name: Etoys-kfr.58
Author: kfr
Time: 17 May 2011, 5:54:47 pm
UUID: 5ea13608-698c-8947-8414-ff08c4a1500f
Ancestors: Etoys-bf.57

If you delete an object its scripts disappear, but its watcher's remain
http://tracker.squeakland.org/browse/SQ-885

=============== Diff against Etoys-bf.57 ===============

Item was changed:
  ----- Method: Player>>noteDeletionOf:fromWorld: (in category 'customevents-misc') -----
  noteDeletionOf: aMorph fromWorld: aWorld
  "aMorph, while pointing to me as its costumee, has been deleted"
  "This may be too aggressive because deletion of a morph may not really mean deletion of its associated player -- in light of hoped-for multiple viewing"
 
+ | viewers scriptors viewerFlaps watchers |
+ viewers := OrderedCollection new.
+ viewerFlaps := OrderedCollection new.
+ scriptors := OrderedCollection new.
+ watchers := OrderedCollection new.
- | viewers scriptors viewerFlaps |
- viewers _ OrderedCollection new.
- viewerFlaps _ OrderedCollection new.
- scriptors _ OrderedCollection new.
  aWorld allMorphs do:
  [:m | m isAViewer ifTrue: [viewers add: m].
  ((m isKindOf: ViewerFlapTab) and: [m scriptedPlayer == self])
  ifTrue:
  [viewerFlaps add: m].
  ((m isKindOf: ScriptEditorMorph) and: [m myMorph == aMorph])
+ ifTrue: [scriptors add: m].
+ ((m isKindOf: WatcherWrapper) and: [m associatedPlayer == self])
+ ifTrue: [watchers add: m]
+ ].
- ifTrue: [scriptors add: m]].
 
  aMorph  removeAllEventTriggersFor: self.
  aWorld removeAllEventTriggersFor: self.
  viewers do: [:v |  v noteDeletionOf: aMorph].
  viewerFlaps do: [:v  | v dismissViaHalo].
+ scriptors do: [:s | s privateDelete].
+ watchers do: [:s | s privateDelete]!
- scriptors do: [:s | s privateDelete] !

_______________________________________________
etoys-dev mailing list
[hidden email]
http://lists.squeakland.org/mailman/listinfo/etoys-dev