----------------------------------------------------------------------
AtomMorph demo
- BouncingAtoms new openInWorld
- meta-click>open explorer
- select some submorphs>AtomMorph and inspect it
- self color: Color red
- self velocity: 0@0
- drag out the red AtomMorph
- make it larger
- copy it
- inspect it
- self velocity: 2@3
- drag it back to the BouncingAtomsMorph
- click on the red Menu handle and embed it
- self browse the AtomMorph
- browse velocity:
- browse senders of velocity: -> browse #bounceIn:
- modify to beep after bounce:
bounced ifTrue: [self velocity: vx @ vy. Beeper beep ].
- very noisy, so add test for color red
	bounced ifTrue: [self velocity: vx @ vy.
		self color = Color red ifTrue: [Beeper beep] ].
----------------------------------------------------------------------
Alternative: (not used)
- create a subclass of AtomMorph with a different colour that beeps
- define BeepingAtomMorph
- bounceIn: aRect
	| bounced |
	bounced := super bounceIn: aRect.
	bounced ifTrue: [ Beeper beep ].
	^ bounced
- defaultColor
	^ Color red
- BeepingAtomMorph new openInWorld 
- instantiate it and embed it ...
- Doesn't work -- why not?!
- find senders of bounceIn:
- see BouncingAtomMorph>>step tests AtomMorph class
- we can change BouncingAtomMorph>>step or BeepingAtomMorph as follows:
- isMemberOf: aClass
	^AtomMorph == aClass
----------------------------------------------------------------------
