The Trunk: Tools-mt.955.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Tools-mt.955.mcz

commits-2
Marcel Taeumel uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-mt.955.mcz

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

Name: Tools-mt.955
Author: mt
Time: 5 March 2020, 3:19:50.650454 pm
UUID: c6edc6b3-361b-1c40-ba50-686fe7cb3e3d
Ancestors: Tools-mt.954

Complete the "#classHierarchy -> #browseClassHierarchy" rename-method refactoring, which was started in 2018 for the ObjectExplorer.

=============== Diff against Tools-mt.954 ===============

Item was added:
+ ----- Method: Browser>>browseClassHierarchy (in category 'multi-window support') -----
+ browseClassHierarchy
+ "Overridden to consider multi-window state and hierarchy browser."
+
+ | behavior newBrowser |
+ (behavior := self selectedClassOrMetaClass) isNil ifTrue:
+ [^self].
+
+ (self isPackage "PackageBrowser panes can't support a hierarchy browser; not sure why."
+ or: [self multiWindowState isNil]) ifTrue:
+ [^super browseClassHierarchy].
+
+ (newBrowser := HierarchyBrowser new initHierarchyForClass: behavior)
+ selectMessageCategoryNamed: self selectedMessageCategoryName;
+ selectMessageNamed: self selectedMessageName;
+ editSelection: editSelection.
+
+ self multiWindowState addWindow: newBrowser!

Item was removed:
- ----- Method: Browser>>classHierarchy (in category 'multi-window support') -----
- classHierarchy
- | behavior newBrowser |
- (behavior := self selectedClassOrMetaClass) isNil ifTrue:
- [^self].
-
- (self isPackage "PackageBrowser pains can't support a hierarchy browser; not sure why."
- or: [self multiWindowState isNil]) ifTrue:
- [^super classHierarchy].
-
- (newBrowser := HierarchyBrowser new initHierarchyForClass: behavior)
- selectMessageCategoryNamed: self selectedMessageCategoryName;
- selectMessageNamed: self selectedMessageName;
- editSelection: editSelection.
-
- self multiWindowState addWindow: newBrowser
- !

Item was changed:
  ----- Method: Browser>>mainMessageListMenu: (in category 'message functions') -----
  mainMessageListMenu: aMenu
  <messageListMenuShifted: false>
  ^ aMenu addList: #(
  ('what to show...' offerWhatToShowMenu)
  ('toggle break on entry' toggleBreakOnEntry)
  -
  ('browse full (b)' browseMethodFull)
+ ('browse hierarchy (h)' browseClassHierarchy)
- ('browse hierarchy (h)' classHierarchy)
  ('browse protocol (p)' browseFullProtocol)
  -
  ('fileOut' fileOutMessage)
  ('printOut' printOutMessage)
  ('copy selector (c)' copySelector)
  ('copy reference (C)' copyReference)
  -
  ('senders of... (n)' browseSendersOfMessages)
  ('implementors of... (m)' browseMessages)
  ('inheritance (i)' methodHierarchy)
  ('versions (v)' browseVersions)
  -
  ('references... (r)' browseVariableReferences)
  ('assignments... (a)' browseVariableAssignments)
  ('class refs (N)' browseClassRefs)
  -
  ('remove method (x)' removeMessage)
  ('explore method' exploreMethod)
  ('inspect method' inspectMethod));
  yourself
  !

Item was changed:
  ----- Method: CodeHolder>>messageListKey:from: (in category 'message list menu') -----
  messageListKey: aChar from: view
  "Respond to a Command key.  I am a model with a code pane, and I also
  have a listView that has a list of methods.  The view knows how to get
  the list and selection."
  | sel class |
  aChar == $D ifTrue: [^ self toggleDiffing].
  sel := self selectedMessageName.
  aChar == $m ifTrue:  "These next two put up a type in if no message selected"
  [^ self useSelector: sel orGetSelectorAndSendQuery: #browseAllImplementorsOf: to: self ].
  aChar == $n ifTrue:
  [^ self useSelector: sel orGetSelectorAndSendQuery: #browseAllCallsOn: to: self ].
  aChar == $d ifTrue: [^ self removeMessageFromBrowser].
  "The following require a class selection"
  (class := self selectedClassOrMetaClass) ifNil: [^ self arrowKey: aChar from: view].
  aChar == $b ifTrue: [^ ToolSet browse: class selector: sel].
  aChar == $N ifTrue: [^ self browseClassRefs].
  aChar == $i ifTrue: [^ self methodHierarchy].
+ aChar == $h ifTrue: [^ self browseClassHierarchy].
- aChar == $h ifTrue: [^ self classHierarchy].
  aChar == $p ifTrue: [^ self browseFullProtocol].
  aChar == $r ifTrue: [^ self browseVariableReferences].
  aChar == $a ifTrue: [^ self browseVariableAssignments].
  (aChar == $Y and: [self canShowMultipleMessageCategories])
  ifTrue: [^ self showHomeCategory].
  "The following require a method selection"
  sel ifNotNil:
  [aChar == $o ifTrue: [^ self fileOutMessage].
  aChar == $c ifTrue: [^ self copySelector].
  aChar == $v ifTrue: [^ self browseVersions].
  aChar == $x ifTrue: [^ self removeMessage].
  aChar == $C ifTrue: [ self copyReference ]].
  ^ self arrowKey: aChar from: view!

Item was changed:
  ----- Method: CodeHolder>>optionalButtonPairs (in category 'controls') -----
  optionalButtonPairs
  "Answer a tuple (formerly pairs) defining buttons, in the format:
  button label
  selector to send
  help message"
 
  | aList |
 
  aList := #(
  ('browse' browseMethodFull 'view this method in a browser')
  ('senders' browseSendersOfMessages 'browse senders of...')
  ('implementors' browseMessages 'browse implementors of...')
  ('versions' browseVersions 'browse versions')),
 
  (Preferences decorateBrowserButtons
  ifTrue:
  [{#('inheritance' methodHierarchy 'browse method inheritance
  green: sends to super
  tan: has override(s)
  mauve: both of the above
  pink: is an override but doesn''t call super
  pinkish tan: has override(s), also is an override but doesn''t call super' )}]
  ifFalse:
  [{#('inheritance' methodHierarchy 'browse method inheritance')}]),
 
  #(
+ ('hierarchy' browseClassHierarchy 'browse class hierarchy')
- ('hierarchy' classHierarchy 'browse class hierarchy')
  ('vars' browseVariableReferences 'references...')).
 
  ^ aList!

Item was added:
+ ----- Method: Debugger>>browseClassHierarchy (in category 'toolbuilder') -----
+ browseClassHierarchy
+ "Create and schedule a class list browser on the receiver's hierarchy."
+
+ (self selectedMessageName = #doesNotUnderstand: and: [ self selectedClassOrMetaClass = Object ])
+ ifTrue:
+ [ self systemNavigation
+ spawnHierarchyForClass: self receiverClass
+ selector: self selectedMessageName ]
+ ifFalse: [ super browseClassHierarchy ]!

Item was removed:
- ----- Method: Debugger>>classHierarchy (in category 'toolbuilder') -----
- classHierarchy
- "Create and schedule a class list browser on the receiver's hierarchy."
- (self selectedMessageName = #doesNotUnderstand: and: [ self selectedClassOrMetaClass = Object ])
- ifTrue:
- [ self systemNavigation
- spawnHierarchyForClass: self receiverClass
- selector: self selectedMessageName ]
- ifFalse: [ super classHierarchy ]!

Item was changed:
  ----- Method: Debugger>>shiftedContextStackMenu: (in category 'context stack menu') -----
  shiftedContextStackMenu: aMenu
  "Set up the menu appropriately for the context-stack-list, shifted"
  <contextStackMenuShifted: true>
  ^ aMenu addList: #(
+ ('browse class hierarchy' browseClassHierarchy)
- ('browse class hierarchy' classHierarchy)
  ('browse class' browseClass)
  ('implementors of sent messages' browseAllMessages)
  ('change sets with this method' findMethodInChangeSets)
  -
  ('inspect instances' inspectInstances)
  ('inspect subinstances' inspectSubInstances)
  -
  ('revert to previous version' revertToPreviousVersion)
  ('remove from current change set' removeFromCurrentChanges)
  ('revert & remove from changes' revertAndForget));
  yourself
  !

Item was changed:
  ----- Method: Inspector>>inspectorKey:from: (in category 'menu commands') -----
  inspectorKey: aChar from: view
  "Respond to a Command key issued while the cursor is over my field list"
 
  aChar == $i ifTrue: [^ self selection inspect].
  aChar == $I ifTrue: [^ self selection explore].
  aChar == $b ifTrue: [^ self browseClass].
+ aChar == $h ifTrue: [^ self browseClassHierarchy].
- aChar == $h ifTrue: [^ self classHierarchy].
  aChar == $c ifTrue: [^ self copyName].
  aChar == $p ifTrue: [^ self browseFullProtocol].
  aChar == $N ifTrue: [^ self browseClassRefs].
  aChar == $t ifTrue: [^ self tearOffTile].
  aChar == $v ifTrue: [^ self viewerForValue].
 
  ^ self arrowKey: aChar from: view!

Item was changed:
  ----- Method: Inspector>>mainFieldListMenu: (in category 'menu commands') -----
  mainFieldListMenu: aMenu
  "Arm the supplied menu with items for the field-list of the receiver"
  <fieldListMenu>
  "gets overriden by subclasses, _whithout_ the <fieldListMenu>"
  aMenu addStayUpItemSpecial.
 
  aMenu addList: #(
  ('inspect (i)' inspectSelection)
  ('explore (I)' exploreSelection)).
 
  self addCollectionItemsTo: aMenu.
 
  aMenu addList: #(
  -
  ('method refs to this inst var' referencesToSelection)
  ('methods storing into this inst var' defsOfSelection)
  ('objects pointing to this value' objectReferencesToSelection)
  ('chase pointers' chasePointers)
  ('explore pointers' explorePointers)
  -
  ('browse full (b)' browseClass)
+ ('browse hierarchy (h)' browseClassHierarchy)
- ('browse hierarchy (h)' classHierarchy)
  ('browse protocol (p)' browseFullProtocol)
  -
  ('references... (r)' browseVariableReferences)
  ('assignments... (a)' browseVariableAssignments)
  ('class refs (N)' browseClassRefs)
  -
  ('copy name (c)' copyName)
  ('basic inspect' inspectBasic)).
 
  Smalltalk isMorphic ifTrue:
  [aMenu addList: #(
  -
  ('tile for this value (t)' tearOffTile)
  ('viewer for this value (v)' viewerForValue))].
 
  ^ aMenu
 
 
  " -
  ('alias for this value' aliasForValue)
  ('watcher for this slot' watcherForSlot)"
 
  !

Item was changed:
  ----- Method: MessageSet>>mainMessageListMenu: (in category 'message list') -----
  mainMessageListMenu: aMenu
  "Answer the message-list menu"
  <messageListMenuShifted: false>
  aMenu addList: #(
  ('what to show...' offerWhatToShowMenu)
  ('toggle break on entry' toggleBreakOnEntry)
  -
  ('browse full (b)' browseMethodFull)
+ ('browse hierarchy (h)' browseClassHierarchy)
- ('browse hierarchy (h)' classHierarchy)
  ('browse protocol (p)' browseFullProtocol)
  -
  ('fileOut' fileOutMessage)
  ('printOut' printOutMessage)
  ('copy selector (c)' copySelector)
  ('copy reference (C)' copyReference)
  -
  ('senders of... (n)' browseSendersOfMessages)
  ('implementors of... (m)' browseMessages)
  ('inheritance (i)' methodHierarchy)
  ('versions (v)' browseVersions)
  -
  ('references... (r)' browseVariableReferences)
  ('assignments... (a)' browseVariableAssignments)
  ('class refs (N)' browseClassRefs)
  -
  ('remove method (x)' removeMessage)
  ('explore method' exploreMethod)
  ('inspect method' inspectMethod)).
  ^ aMenu!

Item was changed:
  ----- Method: ObjectExplorer>>browseClassHierarchy (in category 'menus - actions') -----
  browseClassHierarchy
  "Create and schedule a class list browser on the receiver's hierarchy."
 
  self systemNavigation
  spawnHierarchyForClass: self selectedClass
+ selector: nil.!
- selector: nil
- !

Item was added:
+ ----- Method: StringHolder>>browseClassHierarchy (in category '*Tools') -----
+ browseClassHierarchy
+ "Create and schedule a class list browser on the receiver's hierarchy."
+
+ self systemNavigation
+ spawnHierarchyForClass: self selectedClassOrMetaClass "OK if nil"
+ selector: self selectedMessageName!

Item was removed:
- ----- Method: StringHolder>>classHierarchy (in category '*Tools') -----
- classHierarchy
- "Create and schedule a class list browser on the receiver's hierarchy."
-
- self systemNavigation
- spawnHierarchyForClass: self selectedClassOrMetaClass "OK if nil"
- selector: self selectedMessageName
- !

Item was changed:
  ----- Method: StringHolder>>messageListKey:from: (in category '*Tools') -----
  messageListKey: aChar from: view
  "Respond to a Command key.  I am a model with a code pane, and I also
  have a listView that has a list of methods.  The view knows how to get
  the list and selection."
 
  | sel class |
  aChar == $D ifTrue: [^ self toggleDiffing].
 
  sel := self selectedMessageName.
  aChar == $m ifTrue:  "These next two put up a type in if no message selected"
  [^ self useSelector: sel orGetSelectorAndSendQuery: #browseAllImplementorsOf: to: self systemNavigation].
  aChar == $n ifTrue:
  [^ self useSelector: sel orGetSelectorAndSendQuery: #browseAllCallsOn: to: self systemNavigation].
 
  "The following require a class selection"
  (class := self selectedClassOrMetaClass) ifNil: [^ self arrowKey: aChar from: view].
  aChar == $b ifTrue: [^ ToolSet browse: class selector: sel].
  aChar == $N ifTrue: [^ self browseClassRefs].
  aChar == $i ifTrue: [^ self methodHierarchy].
+ aChar == $h ifTrue: [^ self browseClassHierarchy].
- aChar == $h ifTrue: [^ self classHierarchy].
  aChar == $p ifTrue: [^ self browseFullProtocol].
 
  "The following require a method selection"
  sel ifNotNil:
  [aChar == $o ifTrue: [^ self fileOutMessage].
  aChar == $c ifTrue: [^ self copySelector].
  aChar == $C ifTrue: [^ self copyReference].
  aChar == $v ifTrue: [^ self browseVersions].
  aChar == $x ifTrue: [^ self removeMessage]].
 
  ^ self arrowKey: aChar from: view!