[squeak-dev] The Trunk: Tools-ar.201.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Mar 6 05:10:31 UTC 2010


Andreas Raab uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-ar.201.mcz

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

Name: Tools-ar.201
Author: ar
Time: 5 March 2010, 9:09:58.29 pm
UUID: b683e71e-8e5c-704d-ae33-9d223ac45841
Ancestors: Tools-cmm.200

Avoid dictionary protocol in Smalltalk.

=============== Diff against Tools-cmm.200 ===============

Item was changed:
  ----- Method: Browser>>recent (in category 'class list') -----
  recent
  	"Let the user select from a list of recently visited classes.  11/96 stp.
  	 12/96 di:  use class name, not classes themselves.
  	 : dont fall into debugger in empty case"
  
  	| className class recentList |
+ 	recentList := RecentClasses select: [:n | Smalltalk hasClassNamed: n].
- 	recentList := RecentClasses select: [:n | Smalltalk includesKey: n].
  	recentList size == 0 ifTrue: [^ Beeper beep].
  	className := UIManager default chooseFrom: recentList values: recentList.
  	className == nil ifTrue: [^ self].
  	class := Smalltalk at: className.
  	self selectCategoryForClass: class.
  	self classListIndex: (self classListIndexOf: class name)!

Item was changed:
  ----- Method: Browser>>copyClass (in category 'class functions') -----
  copyClass
  	| originalName copysName oldDefinition newDefinition |
  	classListIndex = 0 ifTrue: [^ self].
  	self okToChange ifFalse: [^ self].
  	originalName := self selectedClass name.
  	copysName := self request: 'Please type new class name' initialAnswer: originalName.
  	copysName = '' ifTrue: [^ self].  " Cancel returns '' "
  	copysName := copysName asSymbol.
  	copysName = originalName ifTrue: [^ self].
+ 	(Smalltalk hasClassNamed: copysName)
- 	(Smalltalk includesKey: copysName)
  		ifTrue: [^ self error: copysName , ' already exists'].
  	oldDefinition := self selectedClass definition.
  	newDefinition := oldDefinition copyReplaceAll: '#' , originalName asString with: '#' , copysName asString.
  	Cursor wait 
  		showWhile: [| class |
  					class := Compiler evaluate: newDefinition logged: true.
  					class copyAllCategoriesFrom: (Smalltalk at: originalName).
  					class class copyAllCategoriesFrom: (Smalltalk at: originalName) class].
  	self classListIndex: 0.
  	self changed: #classList!

Item was changed:
  ----- Method: Debugger>>process:controller:context: (in category 'private') -----
  process: aProcess controller: aController context: aContext
  
  	super initialize.
+ 	Smalltalk at: #MessageTally ifPresent:[:tally| tally terminateTimerProcess].
- 	Smalltalk at: #MessageTally ifPresentAndInMemory: #terminateTimerProcess.
  	contents := nil. 
  	interruptedProcess := aProcess.
  	interruptedController := aController.
  	contextStackTop := aContext.
  	self newStack: (contextStackTop stackOfSize: 1).
  	contextStackIndex := 1.
  	externalInterrupt := false.
  	selectingPC := true.
  	Smalltalk isMorphic ifTrue:
  		[errorWasInUIProcess := false]!

Item was changed:
  ----- Method: Browser>>renameClass (in category 'class functions') -----
  renameClass
  	| oldName newName obs |
  	classListIndex = 0
  		ifTrue: [^ self].
  	self okToChange
  		ifFalse: [^ self].
  	oldName := self selectedClass name.
  	newName := self request: 'Please type new class name' initialAnswer: oldName.
  	newName = ''
  		ifTrue: [^ self].
  	"Cancel returns ''"
  	newName := newName asSymbol.
  	newName = oldName
  		ifTrue: [^ self].
+ 	(self selectedClass environment includesKey: newName)
- 	(Smalltalk includesKey: newName)
  		ifTrue: [^ self error: newName , ' already exists'].
  	self selectedClass rename: newName.
  	self changed: #classList.
  	self classListIndex: (self classListIndexOf: newName).
  	obs := self systemNavigation
+ 				allCallsOn: (self selectedClass environment associationAt: newName).
- 				allCallsOn: (Smalltalk associationAt: newName).
  	obs isEmpty
  		ifFalse: [self systemNavigation
  				browseMessageList: obs
  				name: 'Obsolete References to ' , oldName
  				autoSelect: oldName]!

Item was changed:
  ----- Method: FileContentsBrowser>>packageInfo: (in category 'infoView') -----
  packageInfo: p
  	| nClasses newClasses oldClasses |
  	p isNil ifTrue:[^''].
  	nClasses := newClasses := oldClasses := 0.
  	p classes do:[:cls|
  		nClasses := nClasses + 1.
+ 		(Smalltalk hasClassNamed: cls name)
- 		(Smalltalk includesKey: (cls name asSymbol))
  			ifTrue:[oldClasses := oldClasses + 1]
  			ifFalse:[newClasses := newClasses + 1]].
  	^nClasses printString,' classes (', newClasses printString, ' new / ', oldClasses printString, ' modified)'!




More information about the Squeak-dev mailing list