Chris Muller uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-cmm.770.mcz ==================== Summary ==================== Name: System-cmm.770 Author: cmm Time: 16 October 2015, 2:36:57.194 pm UUID: 207f82b0-5028-4424-9dbe-0b25a9b2e841 Ancestors: System-topa.769 - When using the inheritance (i) command, make sure the initial selection within the opened MessageSet is the method on which it was invoked. =============== Diff against System-topa.769 =============== Item was changed: ----- Method: SystemNavigation>>browseMessageList:name:autoSelect: (in category 'browse') ----- browseMessageList: messageListOrBlock name: labelString autoSelect: autoSelectString "Create and schedule a MessageSet browser on the message list. If messageListOrBlock is a block, then evaluate it to get the message list." | messageList title | messageList := messageListOrBlock isBlock ifTrue: [ Cursor wait showWhile: messageListOrBlock ] ifFalse: [ messageListOrBlock ]. messageList size = 0 ifTrue: [ ^self inform: 'There are no', String cr, labelString ]. title := messageList size > 1 ifFalse: [ labelString ] ifTrue: [ labelString, ' [', messageList size printString, ']' ]. + ^ ToolSet - ToolSet browseMessageSet: messageList name: title autoSelect: autoSelectString! Item was changed: ----- Method: SystemNavigation>>methodHierarchyBrowserForClass:selector: (in category 'browse') ----- + methodHierarchyBrowserForClass: aClass selector: selectorSymbol - methodHierarchyBrowserForClass: aClass selector: sel "Create and schedule a message set browser on all implementors of the currently selected message selector. Do nothing if no message is selected." "SystemNavigation default methodHierarchyBrowserForClass: ParagraphEditor selector: #isControlActive" - | list aClassNonMeta isMeta tab | aClass ifNil: [^ self]. aClass isTrait ifTrue: [^ self]. + selectorSymbol ifNil: [^ self]. - sel ifNil: [^ self]. aClassNonMeta := aClass theNonMetaClass. isMeta := aClassNonMeta ~~ aClass. list := OrderedCollection new. tab := ''. aClass allSuperclasses reverseDo: [:cl | + (cl includesSelector: selectorSymbol) ifTrue: + [list addLast: tab , cl name, ' ', selectorSymbol]. - (cl includesSelector: sel) ifTrue: - [list addLast: tab , cl name, ' ', sel]. tab := tab , ' ']. aClassNonMeta allSubclassesWithLevelDo: [:cl :level | | theClassOrMeta stab | theClassOrMeta := isMeta ifTrue: [cl class] ifFalse: [cl]. + (theClassOrMeta includesSelector: selectorSymbol) ifTrue: - (theClassOrMeta includesSelector: sel) ifTrue: [stab := ''. 1 to: level do: [:i | stab := stab , ' ']. + list addLast: tab , stab , theClassOrMeta name, ' ', selectorSymbol]] - list addLast: tab , stab , theClassOrMeta name, ' ', sel]] startingLevel: 0. + (self browseMessageList: list name: 'Inheritance of ' , selectorSymbol + ) model + deselectAll ; + selectReference: (aClass>>selectorSymbol) methodReference! - self browseMessageList: list name: 'Inheritance of ' , sel - - ! |
Free forum by Nabble | Edit this page |