[squeak-dev] The Trunk: EToys-tfel.246.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Sep 23 11:44:56 UTC 2016

Tim Felgentreff uploaded a new version of EToys to project The Trunk:

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

Name: EToys-tfel.246
Author: tfel
Time: 23 September 2016, 1:43:43.492418 pm
UUID: 4adda244-96f0-8d44-a558-de9db4c3bc22
Ancestors: EToys-tfel.245

- hide uniclasses from the system, so they are collected when their players go away
- fix editing and saving player scripts that refer to other players by name

=============== Diff against EToys-tfel.245 ===============

Item was changed:
  ----- Method: KedamaExamplerPlayer>>copyAllMethodsAgain2 (in category '*Etoys-Squeakland-debug support') -----
  	| c result |
  	c := turtles class.
  	result := (ClassBuilder new)
  		name: c name
  		inEnvironment: c environment
  		subclassOf: c superclass
  		type: c typeOfClass
  		instanceVariableNames: KedamaTurtleVectorPlayer2 instanceVariablesString
  		classVariableNames: KedamaTurtleVectorPlayer2 classVariablesString
  		poolDictionaries: KedamaTurtleVectorPlayer2 sharedPoolsString
  		category: Object categoryForUniclasses.
  	turtles class copyAllCategoriesUnobtrusivelyFrom: KedamaTurtleVectorPlayer2.
  	sequentialStub ifNotNil: [sequentialStub class copyAllCategoriesUnobtrusivelyFrom: KedamaSequenceExecutionStub].
+ 	self flag: #todo. self flag: #uniclasses. "Discuss if we really want to hide uniclasses again"
+ 	result environment forgetClass: result logged: false.
+ 	c superclass removeSubclass: result.

Item was changed:
  ----- Method: Player class>>setNewInstVarNames: (in category 'user-defined inst vars') -----
  setNewInstVarNames: listOfStrings
  	"Make listOfStrings be the new list of instance variable names for the receiver"
  	| disappearing firstAppearing instVarString instVarList |
  	instVarList := self instVarNames asOrderedCollection.
  	disappearing := instVarList copy.
  	disappearing removeAllFoundIn: listOfStrings.
  	disappearing do:
  		[:oldName | 	self removeAccessorsFor: oldName].
  	firstAppearing := listOfStrings copy.
  	firstAppearing removeAllFoundIn: instVarList.
  	instVarString := String streamContents:
  		[:aStream | listOfStrings do: [:aString | aStream nextPutAll: aString; nextPut: $ ]].
  	superclass subclass: self name instanceVariableNames: instVarString 
  		classVariableNames: '' poolDictionaries: '' category: self categoryForUniclasses.
+ 	self flag: #todo. self flag: #uniclasses. "Discuss if we really want to hide uniclasses again"
+ 	self environment forgetClass: self logged: false.
+ 	superclass removeSubclass: self.
  	firstAppearing do:
  		[:newName | self compileAccessorsFor: newName].

Item was added:
+ ----- Method: ScriptEncoder>>init:notifying: (in category 'as yet unclassified') -----
+ init: class notifying: parser
+ 	super init: class notifying: parser.
+ 	self referenceObject: ActiveWorld referenceWorld.!

Item was added:
+ ----- Method: ScriptParser>>encoder (in category 'public access') -----
+ encoder
+ 	^encoder ifNil:
+ 		[encoder := ScriptEncoder new]!

More information about the Squeak-dev mailing list