[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
|