--- a/Tools__NewSystemBrowser.st Fri Oct 21 14:45:09 2011 +0200
+++ b/Tools__NewSystemBrowser.st Wed Oct 26 18:51:11 2011 +0200
@@ -14,38 +14,38 @@
"{ NameSpace: Tools }"
SystemBrowser subclass:#NewSystemBrowser
- instanceVariableNames:'navigationState bufferNameList selectedBuffer buffers
- bufferUsageOrder browserCanvas immediateUpdate showClassPackages
- lastMethodCategory lastMethodMoveClass browserCanvasType
- syntaxColoringProcessRunning syntaxColoringProcess
- methodInfoProcess browsletShowHideLabelHolder browserPageCanvas'
- classVariableNames:'LastNewProtocols LastProtocolRenames LastCategoryRenames
- LastCategoryRenameOld LastCategoryRenameNew LastProjectMoves
- LastNameSpaceMove LastMethodMoveOrCopyTargetClass
- LastSearchPatterns LastClassFilterBlockString
- LastMethodFilterBlockString LastBreakPointConditionString
- LastIndividualChecks LastAcceptPackage LastVariableRenames
- LastVisitorClassName LastTemporaryVariableName BookMarks
- FindHistory CheckForInstancesWhenRemovingClasses
- SynchronousUpdate DoubleClickIsOpenBrowser
- ShowMethodTemplateWhenProtocolIsSelected
- DefaultShowMethodTemplate DefaultShowMethodInheritance
- DefaultEmphasizeUnloadedClasses DefaultImmediateSyntaxColoring
- DefaultImmediateExplaining DefaultSyntaxColoring
- DefaultToolBarVisible DefaultCodeInfoVisible
- DefaultShortNameInTabs DefaultHideUnloadedClasses
- DefaultMarkApplications DefaultAutoFormat
- DefaultShowMethodComplexity DefaultShowMethodTypeIcon
- DefaultShowSpecialResourceEditors SharedMethodCategoryCache
- LastMethodProcessingBlockString LastLoadedPackages
- DefaultShortAllClassesInNameSpaceOrganisation LastTag
- LastBaseVersionTag DefaultShowPseudoProtocols
- DefaultShowMultitabMode LastRenamedOld LastRenamedNew
- LastImportedPackage LastLintRules NewNavigationHistory
- DefaultSortByNameAndInheritance LastLiteralReplacementType
- LastLiteralReplacementNewName LastLiteralReplacementOldLiteral'
- poolDictionaries:''
- category:'Interface-Browsers-New'
+ instanceVariableNames:'navigationState bufferNameList selectedBuffer buffers
+ bufferUsageOrder browserCanvas immediateUpdate showClassPackages
+ lastMethodCategory lastMethodMoveClass browserCanvasType
+ syntaxColoringProcessRunning syntaxColoringProcess
+ methodInfoProcess browsletShowHideLabelHolder browserPageCanvas'
+ classVariableNames:'LastNewProtocols LastProtocolRenames LastCategoryRenames
+ LastCategoryRenameOld LastCategoryRenameNew LastProjectMoves
+ LastNameSpaceMove LastMethodMoveOrCopyTargetClass
+ LastSearchPatterns LastClassFilterBlockString
+ LastMethodFilterBlockString LastBreakPointConditionString
+ LastIndividualChecks LastAcceptPackage LastVariableRenames
+ LastVisitorClassName LastTemporaryVariableName BookMarks
+ FindHistory CheckForInstancesWhenRemovingClasses
+ SynchronousUpdate DoubleClickIsOpenBrowser
+ ShowMethodTemplateWhenProtocolIsSelected
+ DefaultShowMethodTemplate DefaultShowMethodInheritance
+ DefaultEmphasizeUnloadedClasses DefaultImmediateSyntaxColoring
+ DefaultImmediateExplaining DefaultSyntaxColoring
+ DefaultToolBarVisible DefaultCodeInfoVisible
+ DefaultShortNameInTabs DefaultHideUnloadedClasses
+ DefaultMarkApplications DefaultAutoFormat
+ DefaultShowMethodComplexity DefaultShowMethodTypeIcon
+ DefaultShowSpecialResourceEditors SharedMethodCategoryCache
+ LastMethodProcessingBlockString LastLoadedPackages
+ DefaultShortAllClassesInNameSpaceOrganisation LastTag
+ LastBaseVersionTag DefaultShowPseudoProtocols
+ DefaultShowMultitabMode LastRenamedOld LastRenamedNew
+ LastImportedPackage LastLintRules NewNavigationHistory
+ DefaultSortByNameAndInheritance LastLiteralReplacementType
+ LastLiteralReplacementNewName LastLiteralReplacementOldLiteral'
+ poolDictionaries:''
+ category:'Interface-Browsers-New'
!
!NewSystemBrowser class methodsFor:'documentation'!
@@ -11775,6 +11775,12 @@
submenuChannel: implementedMessagesMenu
)
(MenuItem
+ label: 'Globals'
+ translateLabel: true
+ "/ isVisible: hasSingleMethodSelectedHolder
+ submenuChannel: globalReferencesMenu
+ )
+ (MenuItem
label: 'String Search...'
itemValue: browseMenuMethodsWithString
translateLabel: true
@@ -11790,6 +11796,8 @@
nil
nil
)
+
+ "Modified: / 26-10-2011 / 18:08:38 / cg"
!
selectorMenuSpawnSlice
@@ -16816,6 +16824,7 @@
"Created: / 24.2.2000 / 23:28:06 / cg"
! !
+
!NewSystemBrowser methodsFor:'aspects-organization'!
categoryMenuVisible
@@ -20123,6 +20132,7 @@
^ UserPreferences current useSearchBarInBrowser or:[self codeView searchBarActionBlock notNil]
! !
+
!NewSystemBrowser methodsFor:'change & update'!
categorySelectionChanged
@@ -28003,6 +28013,12 @@
]
!
+spawnBrowserOnClass:cls
+ self spawnClassBrowserFor:(Array with:cls) in:#newBuffer
+
+ "Created: / 26-10-2011 / 18:28:21 / cg"
+!
+
spawnClassBrowserFor:classes in:where
"browse selected class(es);
where is: #newBrowser - open a new browser showing the classes
@@ -28052,7 +28068,7 @@
meta := singleClass isMeta.
doSelect := true.
] ifFalse:[
- spec := #multipleClassBrowserSpec.
+ spec := #fullBrowserSpec. "/#multipleClassBrowserSpec.
meta := self meta value ? false.
].
@@ -28090,7 +28106,7 @@
brwsr meta onChangeEvaluate:[ brwsr classListGenerator changed ].
]
- "Modified: / 1.3.2000 / 11:54:08 / cg"
+ "Modified: / 26-10-2011 / 18:49:25 / cg"
!
spawnClassBrowserForSearch:searchBlock sortBy:sortByWhat in:openHow label:lbl
@@ -42018,6 +42034,7 @@
"Modified: / 25-06-2010 / 10:08:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
+
!NewSystemBrowser methodsFor:'menu actions-variables'!
browseVarRefsOrModsWithTitle:browserTitle boxTitle:boxTitle variables:varType access:accessType all:browseAll
@@ -43841,6 +43858,49 @@
].
!
+globalReferencesMenu
+ "a menu allowing to browse the referenced globals (typically: classes) of the
+ selected method(s)"
+
+ |classes m|
+
+ classes := Set new.
+
+ self selectedMethodsDo:[:m |
+ m literalsDo:[:lit |
+ |cls ns|
+
+ lit isSymbol ifTrue:[
+ (((cls := Smalltalk at:lit) notNil and:[ cls isBehavior ])
+ or:[ (ns := m mclass nameSpace) notNil
+ and:[ ns ~= Smalltalk
+ and:[ (cls := ns at:lit) notNil and:[ cls isBehavior ]]]])
+ ifTrue:[
+ classes add:cls
+ ]
+ ]
+ ].
+ ].
+ classes isEmpty ifTrue:[
+ ^ nil
+ ].
+
+ classes := classes asOrderedCollection sort:[:a :b | a name < b name].
+
+ m := Menu new.
+ classes do:[:each |
+ |item|
+
+ item := MenuItem label:each name.
+ item value:#'spawnBrowserOnClass:'.
+ item argument:each.
+ m addItem:item.
+ ].
+ ^ m
+
+ "Created: / 26-10-2011 / 18:15:01 / cg"
+!
+
goBackInGlobalHistoryMenu
<resource: #programMenu>
@@ -48884,6 +48944,7 @@
^ navigationState projectListApplication
! !
+
!NewSystemBrowser methodsFor:'private-history'!
lastSearchPatterns
@@ -54031,11 +54092,11 @@
!NewSystemBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1644 2011-10-19 14:53:36 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1645 2011-10-26 16:51:11 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1644 2011-10-19 14:53:36 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1645 2011-10-26 16:51:11 cg Exp $'
!
version_SVN