Object subclass: #JoeBox instanceVariableNames: 'pen size name ' classVariableNames: '' poolDictionaries: '' category: 'JoeTheBox'! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 17:04'! draw self drawColor: (Color black). self drawName. (Delay forSeconds: (1/20)) wait.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:48'! drawColor: color pen color: color. 4 timesRepeat: [pen go: size; turn: 90]! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:49'! drawName (self name) = nil ifFalse: [ | displayName colorGenerator| displayName _ name asDisplayText. colorGenerator _ Random new. displayName foregroundColor: (Color r: colorGenerator next g: colorGenerator next b: colorGenerator next) backgroundColor: (Color white). displayName displayAt: (pen location)]! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:01'! grow: increment self undraw. size _ size + increment. self draw.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:44'! initialize pen _ Pen new. pen place: 100@100. size _ 50. self draw.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:45'! move: pointIncrement self undraw. pen place: (pen location) + pointIncrement. self draw.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:45'! moveTo: aPoint self undraw. pen place: aPoint. self draw.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:11'! name ^name! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:11'! name: aName name _ aName! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:45'! turn: degrees self undraw. pen turn: degrees. self draw.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 17:20'! undraw self drawColor: (World color). self undrawName.! ! !JoeBox methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 16:50'! undrawName (self name) = nil ifFalse: [ | displayName | displayName _ name asDisplayText. displayName foregroundColor: (Color white) backgroundColor: (Color white). displayName displayAt: (pen location)]! ! "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- "! JoeBox class instanceVariableNames: ''! !JoeBox class methodsFor: 'as yet unclassified' stamp: 'picxenk 2/1/2004 14:54'! new ^super new initialize ! !