A new version of SystemEditor was added to project SystemEditor:
http://www.squeaksource.com/SystemEditor/SystemEditor-mtf.147.mcz
==================== Summary ====================
Name: SystemEditor-mtf.147
Author: mtf
Time: 28 October 2008, 10:33 pm
UUID: ef6cea33-6b13-4f5b-aea5-86ab35bb4320
Ancestors: SystemEditor-mtf.146
An idea to simplify ClassExporter by having each editor implement edPostLoad. I don't think it will work, since after the atomic swap, the old instances should not be available. I plan on persuing a different route to make ClassExporter not so tied to ClassEditor
=============== Diff against SystemEditor-mtf.146 ===============
Item was added:
+ ----- Method: SystemEditor>>edPostLoad (in category 'building') -----
+ edPostLoad
+ additions do: [:ea | ea edPostLoad]!
Item was changed:
----- Method: ClassExporter>>export: (in category 'private') -----
export: aClass
- ((aClass isBehavior) and: [aClass superclass notNil]
- "Don't add aClass as subclass if a subclass exists that will become: aClass.
- This can be checked by comparing the names. Otherwise, redundent
- subclass entries appear, which makes
- SystemNavigation>>allBehaviorsDo: find classes twice"
- and: [aClass superclass subclasses noneSatisfy: [:ea | ea name = aClass name]])
- ifTrue: [aClass superclass addSubclass: aClass].
(environment includesKey: aClass name)
+ ifTrue: [self replace: aClass]!
- ifTrue: [self replace: aClass]
- ifFalse: [environment at: aClass name put: aClass]!
Item was added:
+ ----- Method: ClassEditor>>edPostLoad (in category 'building') -----
+ edPostLoad
+ self product superclass ifNotNil: [self product superclass addSubclass: self product].
+ self environment subject at: self product name put: self product.
+ self decoratorsDo: [:ea | ea edPostLoad]!
Item was changed:
Object subclass: #ClassExporter
instanceVariableNames: 'environment classes oldClasses newClasses'
classVariableNames: ''
poolDictionaries: ''
category: 'SystemEditor-Editors'!
+
+ !ClassExporter commentStamp: 'mtf 10/28/2008 18:55' prior: 0!
+ This class does a few things.
+ - The second step (becomeForward:)of ClassBuilder>>update:to:
+ - add each class to its superclass's subclasses list
+ - add each class to the SystemDictionary Smalltalk!
Stéphane Ducasse uploaded a new version of InstallerAll to project Installer:
http://www.squeaksource.com/Installer/InstallerAll-stephane.ducasse.2.mcz
==================== Summary ====================
Name: InstallerAll-stephane.ducasse.2
Author: stephane.ducasse
Time: 27 October 2008, 8:09:33 pm
UUID: e1dddcaa-d2a5-497f-b9ce-354fe7a5205d
Ancestors: InstallerAll-md.1
after the refactoring of matthew.
The excellent refactoring!
=============== Diff against InstallerAll-md.1 ===============