eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'SystemBrowser':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: SystemBrowser


Inheritance:

   Object
   |
   +--Model
      |
      +--ApplicationModel
         |
         +--SystemBrowser
            |
            +--Tools::NewSystemBrowser

Package:
stx:libtool
Category:
Interface-Browsers
Version:
rev: 1.472 date: 2024/04/09 12:33:10
user: stefan
file: SystemBrowser.st directory: libtool
module: stx stc-classLibrary: libtool

Description:


Notice: SystemBrowser has been completely rewritten to be an instance
of ApplicationModel. This rewritten version is found under Tools::NewSystemBrowser.
Because the class protocol here was used by many others, it is left here
as an instance-less functionality provider only.

written winter 89 by claus.

copyright

COPYRIGHT (c) 1989 by Claus Gittinger All Rights Reserved This software is furnished under a license and may be used only in accordance with the terms of that license and with the inclusion of the above copyright notice. This software may not be provided or otherwise made available to, or used by, any other person. No title to or ownership of the software is hereby transferred.

Class protocol:

Compatibility-ST80
o  newOnClass: aClass

accessing-history
o  addToHistory: aClass selector: aSelectorOrNil
and:[entry selector = newEntry selector]

o  checkClassHistory
checks the class history for non-existing classes

o  classHistory

o  classHistory: newCollection

o  emptyClassHistory
removes all class history entries

o  historyEntryForClass: aClass selector: aSelectorOrNil

o  lastSearchPatterns

o  rememberSearchPattern: aString

o  visitedClassNamesHistory
Tools::NewSystemBrowser visitedClassNamesHistory

defaults
o  classHistoryMaxLevels

o  classHistoryMaxSize
returns maximum size of the visited class history

o  default
convenient getter for the user's preference.
Returns his choice of browser class

Usage example(s):

  SystemBrowser default open

o  largeLabelFont

o  methodTemplate
return a method definition template string or nil

o  visitedHistoryMaxSize
the maximum number of remembered visited-class-history entries

defaults-presentation
o  emphasisForChangedCode
EmphasisForChangedCode := #underwave
EmphasisForChangedCode := #color->Color blue
EmphasisForChangedCode := #color->Color red lightened lightened lightened

o  emphasisForChangedCode: anEmphasis
self emphasisForChangedCode:#underwave
self emphasisForChangedCode:(#color->Color red lightened lightened lightened)

o  emphasisForDifferentPackage
EmphasisForDifferentPackage := nil.
EmphasisForDifferentPackage := #underwave
EmphasisForDifferentPackage := #color->Color red lightened lightened lightened

o  emphasisForDifferentPackage: anEmphasis
self emphasisForDifferentPackage:#underwave
self emphasisForDifferentPackage:(#color->Color red lightened lightened lightened)

o  emphasisForModifiedBuffer

o  emphasisForModifiedBuffer: anEmphasis

o  emphasisForObsoleteCode

o  emphasisForObsoleteCode: anEmphasis

o  emphasisForReadVariable
EmphasisForReadVariable := #underline
EmphasisForReadVariable := Array with:#underline with:#underlineColor->Color yellow

o  emphasisForReadVariable: anEmphasis
self emphasisForReadVariable:#underline
self emphasisForReadVariable:(Array with:#underline with:#underlineColor->Color yellow)

o  emphasisForWrittenVariable
EmphasisForWrittenVariable := #underline
EmphasisForWrittenVariable := Array with:#underline with:#underlineColor->Color red lightened

o  emphasisForWrittenVariable: anEmphasis
self emphasisForWrittenVariable:#underline
self emphasisForWrittenVariable:(Array with:#underline with:#underlineColor->Color red lightened)

o  iconForClass: aClass
ask the class for its browser symbol;
that's a key/selector in the ToolbarIconLibrary

o  perAnnotationTagIconsAt: annotationKey
return an annotation-specific icon or a default tag icon
(i.e. for <action>, <rest>, etc. annotations

o  perAnnotationTagIconsAt: annotationKey put: anIcon
return an annotation-specific icon or a default tag icon
(i.e. for <action>, <rest>, etc. annotations

Usage example(s):

     self perAnnotationTagIconsAt:'javanative:name:' put:(ToolbarIconLibrary javaIcon16x16)
     self perAnnotationTagIconsAt:'javanative:' put:(ToolbarIconLibrary javaIcon16x16)

o  resourceIconForMethod: aMethod
ToolbarIconLibrary tag16x16Icon

dialogs
o  askForClassNameMatching: matchStringArg inEnvironment: anEnvironmentOrClassOrNil for: aBrowserOrNil
open a dialog to ask for a class name.
env is either a nameSpace or a class (to ask for a private class)

o  listBoxTitle: title okText: okText list: aList
convenient method: setup a listBox & return it

Usage example(s):

     (self listBoxTitle:'hello world' okText:'aaa' list:#(1 2 3 4)) open

image specs
o  abstractMethodIcon

o  addBreakPointIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self addBreakPointIcon inspect
     ImageEditor openOnClass:self andSelector:#addBreakPointIcon
     Icon flushCachedIcons

o  addBreakPointIcon2

o  autoloadedClassIcon

o  breakPointedIcon
^ self breakPointedIcon2

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  canvasIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self canvasIcon inspect
     ImageEditor openOnClass:self andSelector:#canvasIcon
     Icon flushCachedIcons

o  containerClassIcon

o  defaultIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self defaultIcon inspect
     ImageEditor openOnClass:self andSelector:#defaultIcon
     Icon flushCachedIcons

o  deprecatedMethodIcon

o  disabledBreakpointIcon

o  doNotEnterIcon

o  emptyIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self emptyIcon inspect
     ImageEditor openOnClass:self andSelector:#emptyIcon
     Icon flushCachedIcons

o  errorClassIcon

o  exceptionClassIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self exceptionClassIcon inspect
     ImageEditor openOnClass:self andSelector:#exceptionClassIcon
     Icon flushCachedIcons

o  fileImageIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self fileImageIcon inspect
     ImageEditor openOnClass:self andSelector:#fileImageIcon
     Icon flushCachedIcons

o  fullBreakPointedIcon
^ self fullBreakPointedIcon2

o  fullBreakPointedIcon1
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self fullBreakPointedIcon1 inspect
     ImageEditor openOnClass:self andSelector:#fullBreakPointedIcon1
     Icon flushCachedIcons

o  fullBreakPointedIcon2
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self fullBreakPointedIcon2 inspect
     ImageEditor openOnClass:self andSelector:#fullBreakPointedIcon2
     Icon flushCachedIcons

o  greenCheckIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self greenCheckIcon inspect
     ImageEditor openOnClass:self andSelector:#greenCheckIcon
     Icon flushCachedIcons

o  greenLockIcon

o  greenThumbUpIcon

o  greenThumbUpSmallIcon

o  greyCheckIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self greyCheckIcon inspect
     ImageEditor openOnClass:self andSelector:#greyCheckIcon
     Icon flushCachedIcons

o  greyThumbUpIcon

o  helpIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self helpIcon inspect
     ImageEditor openOnClass:self andSelector:#helpIcon
     Icon flushCachedIcons

o  hierarchicalListIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self hierarchicalListIcon inspect
     ImageEditor openOnClass:self andSelector:#hierarchicalListIcon
     Icon flushCachedIcons

o  ignoredMethodIcon

o  imageIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self imageIcon inspect
     ImageEditor openOnClass:self andSelector:#imageIcon
     Icon flushCachedIcons

o  instVarOverlayXmlSpec
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self instVarOverlayXmlSpec inspect
     ImageEditor openOnClass:self andSelector:#instVarOverlayXmlSpec
     Icon flushCachedIcons

o  instrumentationIcon

o  lineBreakPointedIcon
^ self lineBreakPointedIcon2

o  lineBreakPointedIcon1
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self lineBreakPointedIcon1 inspect
     ImageEditor openOnClass:self andSelector:#lineBreakPointedIcon1
     Icon flushCachedIcons

o  lineBreakPointedIcon2
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self lineBreakPointedIcon2 inspect
     ImageEditor openOnClass:self andSelector:#lineBreakPointedIcon2
     Icon flushCachedIcons

o  lineTracePointedIcon

o  medium_methodEmptyInheritedIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self medium_methodEmptyInheritedIcon inspect
     ImageEditor openOnClass:self andSelector:#medium_methodEmptyInheritedIcon
     Icon flushCachedIcons

o  medium_methodInheritedFromAboveAndRedefinedBelowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self medium_methodInheritedFromAboveAndRedefinedBelowIcon inspect
     ImageEditor openOnClass:self andSelector:#medium_methodInheritedFromAboveAndRedefinedBelowIcon
     Icon flushCachedIcons

o  medium_methodInheritedFromAboveIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self medium_methodInheritedFromAboveIcon inspect
     ImageEditor openOnClass:self andSelector:#medium_methodInheritedFromAboveIcon
     Icon flushCachedIcons

o  medium_methodRedefinedBelowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self medium_methodRedefinedBelowIcon inspect
     ImageEditor openOnClass:self andSelector:#medium_methodRedefinedBelowIcon
     Icon flushCachedIcons

o  menuIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self menuIcon inspect
     ImageEditor openOnClass:self andSelector:#menuIcon
     Icon flushCachedIcons

o  methodEmptyInheritedIcon

o  methodInheritedFromAboveAndRedefinedBelowIcon

o  methodInheritedFromAboveIcon

o  methodIsSubclassResponsibilityAndRedefinedBelowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self methodIsSubclassResponsibilityAndRedefinedBelowIcon inspect
     ImageEditor openOnClass:self andSelector:#methodIsSubclassResponsibilityAndRedefinedBelowIcon
     Icon flushCachedIcons

o  methodIsSubclassResponsibilityIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self methodIsSubclassResponsibilityIcon inspect
     ImageEditor openOnClass:self andSelector:#methodIsSubclassResponsibilityIcon
     Icon flushCachedIcons

o  methodRedefinedBelowIcon

o  nameSpaceIcon

o  notificationClassIcon

o  obsoleteMethodIcon

o  packageIcon

o  packageIconGraySmall

o  packageIconGreenSmall

o  packageIconOrangeSmall

o  packageIconSmall

o  padLockBlackMiniIcon

o  padLockBlueMiniIcon

o  padLockGrayMiniIcon

o  padLockGreenMiniIcon

o  padLockRedMiniIcon

o  privateMethodIcon

o  programImageIcon

o  programMenuIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self programMenuIcon inspect
     ImageEditor openOnClass:self andSelector:#programMenuIcon
     Icon flushCachedIcons

o  protectedMethodIcon

o  queryClassIcon

o  redCheckIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self redCheckIcon inspect
     ImageEditor openOnClass:self andSelector:#redCheckIcon
     Icon flushCachedIcons

o  redThumbDownIcon

o  redThumbDownSmallIcon

o  removeBreakPointIcon2

o  small_methodEmptyInheritedIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self small_methodEmptyInheritedIcon inspect
     ImageEditor openOnClass:self andSelector:#small_methodEmptyInheritedIcon
     Icon flushCachedIcons

o  small_methodInheritedFromAboveAndRedefinedBelowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self small_methodInheritedFromAboveAndRedefinedBelowIcon inspect
     ImageEditor openOnClass:self andSelector:#small_methodInheritedFromAboveAndRedefinedBelowIcon
     Icon flushCachedIcons

o  small_methodInheritedFromAboveIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self small_methodInheritedFromAboveIcon inspect
     ImageEditor openOnClass:self andSelector:#small_methodInheritedFromAboveIcon
     Icon flushCachedIcons

o  small_methodRedefinedBelowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self small_methodRedefinedBelowIcon inspect
     ImageEditor openOnClass:self andSelector:#small_methodRedefinedBelowIcon
     Icon flushCachedIcons

o  startableClassIcon

o  startableVisualAppIcon

o  stopIcon

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  tabListIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self tabListIcon inspect
     ImageEditor openOnClass:self andSelector:#tabListIcon
     Icon flushCachedIcons

o  tableColumnsIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self tableColumnsIcon inspect
     ImageEditor openOnClass:self andSelector:#tableColumnsIcon
     Icon flushCachedIcons

o  testCaseClassIcon
only left here for backward compatibility...

o  testCaseClassIconFor: cls
decision moved to TestCase - see there.

o  testCaseErrorIcon
only left here for backward compatibility...

o  testCaseFailedIcon
only left here for backward compatibility...

o  testCasePassedIcon
only left here for backward compatibility...

o  testCaseSkippedIcon
only left here for backward compatibility...

o  testCaseUnknownResultIcon
only left here for backward compatibility...

o  timeIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self timeIcon inspect
     ImageEditor openOnClass:self andSelector:#timeIcon
     Icon flushCachedIcons

o  traceIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self traceIcon inspect
     ImageEditor openOnClass:self andSelector:#traceIcon
     Icon flushCachedIcons

o  uncachedImageIcon

o  underConstructionIcon

o  visualStartableClassIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self visualStartableClassIcon inspect
     ImageEditor openOnClass:self andSelector:#visualStartableClassIcon
     Icon flushCachedIcons

o  warningClassIcon

o  watchIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self watchIcon inspect
     ImageEditor openOnClass:self andSelector:#watchIcon
     Icon flushCachedIcons

o  windowClassIcon

o  windowIcon
This resource specification was automatically generated
by the ImageEditor of ST/X.

Usage example(s):

     self windowIcon inspect
     ImageEditor openOnClass:self andSelector:#windowIcon
     Icon flushCachedIcons

initialization
o  initialize
Browser configuration;
(values can be changed from your private startup file)

Usage example(s):

     CheckForInstancesWhenRemovingClasses := true
     CheckForInstancesWhenRemovingClasses := false

     SystemBrowser initialize

instance creation
o  open
launch a standard browser

Usage example(s):

     SystemBrowser default open
     SystemBrowser open

o  openInClass: aClass
launch a standard browser which immediately switches
to aClass

Usage example(s):

     SystemBrowser default openInClass:Object
     SystemBrowser openInClass:Object

o  openInClass: aClass selector: aSelector
launch a standard browser which immediately switches
to aClass » aSelector. Returns the browser

Usage example(s):

     SystemBrowser openInClass:Object selector:#at:put:
     SystemBrowser openInClass:Object selector:nil
     SystemBrowser openInClass:nil selector:nil

o  openOn: anEnvironment
open on a namespace

Usage example(s):

     SystemBrowser default openOn:Smalltalk
     SystemBrowser default openOn:Demos

     SystemBrowser openOn:Smalltalk
     SystemBrowser openOn:Demos

o  openOn: aClassEnvironment label: title
open on a namespace

o  openOn: aClassEnvironment label: title onDevice: aDisplayDevice
open on a nameSpace

o  openOnDevice: aDisplay
launch a standard browser on another display.

Usage example(s):

|d|

     d := XWorkstation new initializeFor:'porty:0'.
     d startDispatch.
     SystemBrowser openOnDevice:d

o  openOnRemoteImageOnHost: aHostName port: portOrNil
SystemBrowser openOnRemoteImageOnHost:'funkfix' port:nil
SystemBrowser openOnRemoteImageOnHost:'192.168.8.1' port:nil

o  openOnSnapShotImage: anImageFileName
SystemBrowser openOnSnapShotImage:('/tmp/stmeas.img')

interface specs
o  metaSpec
UIPainter new openOnClass: self andSelector: #metaSpec

o  methodMoveDialogSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

Usage example(s):

     UIPainter new openOnClass:SystemBrowser andSelector:#methodMoveDialogSpec
     SystemBrowser new openInterface:#methodMoveDialogSpec

interface-framework
o  pageSpecs
this method must be redefined as stated in a superclass

private-code update
o  sourceOfMethod: mthd
wrong: even if there is no source, we

private-helpers
o  askForPackageChangeFrom: oldPkg to: newPkg

o  showNoneFound

o  showNoneFound: what

private-instance creation
o  newWithLabel: aString setupBlock: aBlock
common helper method for all creation methods

o  newWithLabel: aString setupBlock: aBlock onDevice: aWorkstation
common helper method for all creation methods

o  newWithLabel: aString setupSelector: aSymbol arg: arg
common helper method for all creation methods

o  newWithLabel: aString setupSelector: aSymbol arg: arg onDevice: aWorkstation
common helper method for all creation methods

special search startup
o  allCallsOn: aSelectorString
return a collection of methods which send aSelector.
This takes some time, because source code is parsed to see
if there is really a message send inside (and not just a symbol reference)

Usage example(s):

     Time millisecondsToRun:[
         SystemBrowser allCallsOn:#at:put:
     ].            

o  allCallsOn: aSelectorString in: aCollectionOfClasses
return a collection of methods which send aSelector.
Methods from classes in aCollectionOfClasses are searched only.

o  allCallsOn: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase
return a collection of methods which send aSelector.
Methods from classes in aCollectionOfClasses are searched only.

Usage example(s):

     SystemBrowser allCallsOn:#at:put: in:(Smalltalk allClasses)

o  allCallsOn: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatchArg
return a collection of methods which send aSelector.
Methods from classes in aCollectionOfClasses are searched only.

Usage example(s):

     SystemBrowser allCallsOn:#at:put: in:(Smalltalk allClasses)

o  allCallsUsingReturnValueOn: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatchArg
return a collection of methods which send aSelector and use the return value.
Methods from classes in aCollectionOfClasses are searched only.

o  allMethodsIn: aCollectionOfClasses inst: wantInst class: wantClass where: aBlock
return a collection of methods which pass the given test.
wantInst/wantClass control if instMethods and/or classMethods are to be
considered.
Only classes in aCollectionOfClasses are inspected in the search

o  allMethodsIn: aCollectionOfClasses where: aBlock
return a collection of methods which pass the given test.
Only classes in aCollectionOfClasses are inspected in the search

o  aproposSearch: aString
browse all methods, which have aString in their selector.

o  aproposSearch: aString in: aCollectionOfClasses
browse all methods, which have aString.
This is relatively slow, since all source must be processed.

Usage example(s):

     SystemBrowser aproposSearch:'append' in:(Collection withAllSubclasses)
     SystemBrowser aproposSearch:'add'    in:(Collection withAllSubclasses)
     SystemBrowser aproposSearch:'sort'   in:(Collection withAllSubclasses)
     SystemBrowser aproposSearch:'[Aa]bsent' in:(Collection withAllSubclasses)

o  browseAllCallsOn: aSelectorString
launch a browser for all senders of aSelector.
Notice: better go via Smalltalk browseAllCallsOn:, which honors the tool-preferences

Usage example(s):

     SystemBrowser browseAllCallsOn:#+

o  browseAllCallsOn: aSelectorString in: aSetOfClasses
launch a browser for all senders of aSelector

Usage example(s):

     SystemBrowser browseAllCallsOn:#+ in:(Number withAllSubclasses)

o  browseAllCallsOn: aSelectorString in: aSetOfClasses ignoreCase: ignoreCase
launch a browser for all senders of aSelector

Usage example(s):

     SystemBrowser browseAllCallsOn:#+ in:(Number withAllSubclasses)

o  browseAllCallsOn: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: match title: titleArg
launch a browser for all senders of aSelector in aCollectionOfClasses

Usage example(s):

     SystemBrowser
        browseAllCallsOn:#+ 
        in:(Number withAllSubclasses) 
        title:'just a test'

o  browseAllCallsOn: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase title: titleArg
launch a browser for all senders of aSelector in aCollectionOfClasses

Usage example(s):

     SystemBrowser
        browseAllCallsOn:#+ 
        in:(Number withAllSubclasses) 
        title:'just a test'

o  browseAllCallsOn: aSelectorString in: aCollectionOfClasses title: title
launch a browser for all senders of aSelector in aCollectionOfClasses

Usage example(s):

     SystemBrowser
        browseAllCallsOn:#+ 
        in:(Number withAllSubclasses) 
        title:'just a test'

o  browseCallsOn: aSelectorString under: aClass
launch a browser for all senders of aSelector in aClass and subclasses

Usage example(s):

     SystemBrowser browseCallsOn:#+ under:Number

o  browseClassRefsTo: aString in: aCollectionOfClasses modificationsOnly: modsOnly
launch a browser for all methods in aClass where the classVar named
aString is referenced; if modsOnly is true, browse only methods where the
classvar is modified

o  browseClassRefsTo: varName in: aCollectionOfClasses modificationsOnly: modsOnly title: title
launch a browser for all methods in aCollectionOfClasses,
where the classVar named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  browseClassRefsTo: aString under: aClass modificationsOnly: modsOnly
launch a browser for all methods in aClass and subclasses
where the classVar named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  browseForResource: aResourceSymbol containing: item in: aCollectionOfClasses title: title
launch a browser for all methods which have a particular (or any, ifNil)
resource in aCollectionOfClasses.
If aKey is nonNil, only methods which have aKey in the (any) resourceSpec
are parsed.
I.e. to find all methods, which access the styleSheets, use:
browseForResource:#style containing:nil in:... title:...
to find methods which access the 'arrowButtonDownForm' styleSheet entry, use:
browseForResource:#style containing:'arrowButtonDownForm' in:... title:...

Usage example(s):

     SystemBrowser
        browseForResource:nil
        in:Smalltalk allClasses
        title:'methods with a resource'

Usage example(s):

     SystemBrowser
        browseForResource:#style
        containing:nil
        in:Smalltalk allClasses
        title:'methods with a #style resource'

Usage example(s):

     SystemBrowser
        browseForResource:#style
        containing:'arrowButton*'
        in:Smalltalk allClasses
        title:'methods with a #style resource'

o  browseForResource: aResourceSymbol in: aCollectionOfClasses title: title
launch a browser for all methods which have a particular (or any, ifNil)
resource in aCollectionOfClasses

Usage example(s):

     SystemBrowser
        browseForResource:#style
        in:Smalltalk allClasses
        title:'methods accessing styleSheet values'

Usage example(s):

     SystemBrowser
        browseForResource:#keyboard
        in:Smalltalk allClasses
        title:'methods handling keyboard events'

Usage example(s):

     SystemBrowser
        browseForResource:nil
        in:Smalltalk allClasses
        title:'methods with a resource'

o  browseForString: aString
launch a browser for all methods containing a string in their source.
This may be slow, since source-code has to be scanned.

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  browseForString: aString in: aCollectionOfClasses
launch a browser for all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  browseForString: aString in: aCollectionOfClasses ignoreCase: ignoreCase
launch a browser for all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  browseForSymbol: aSymbol
launch a browser for all methods referencing aSymbol

o  browseForSymbol: aSymbol in: aSetOfClasses title: title warnIfNone: doWarn
launch a browser for all methods referencing aSymbol

o  browseForSymbol: aSymbol in: aSetOfClasses title: title warnIfNone: doWarn searchFor: searchString
launch a browser for all methods referencing aSymbol

o  browseForSymbol: aSymbol title: title ifNone: actionIfNoneFound searchFor: searchString
launch a browser for all methods referencing aSymbol

o  browseForSymbol: aSymbol title: title warnIfNone: doWarn
launch a browser for all methods referencing aSymbol

o  browseForSymbol: aSymbol title: title warnIfNone: doWarn searchFor: searchString
launch a browser for all methods referencing aSymbol

o  browseImplementorsMatching: aSelectorString
launch a browser for all implementors of aSelector

o  browseImplementorsMatching: aSelectorString in: aSetOfClasses
launch a browser for all implementors of aSelector

o  browseImplementorsMatching: aSelectorString in: aSetOfClasses ignoreCase: ignoreCase
launch a browser for all implementors of aSelector

o  browseImplementorsMatching: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase title: title
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

Usage example(s):

     SystemBrowser 
        browseImplementorsMatching:'*conflict*'
        in:Smalltalk allClasses
        ignoreCase:true
        title:'some implementors'

o  browseImplementorsMatching: aSelectorString in: aCollectionOfClasses title: title
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

o  browseImplementorsMatching: aSelectorString under: aClass
launch a browser for all implementors of aSelector in aClass
and its subclasses

o  browseImplementorsOf: aSelectorString
launch a browser for all implementors of aSelector

Usage example(s):

     SystemBrowser browseImplementorsOf:#+
     NewSystemBrowser browseImplementorsOf:#+

o  browseImplementorsOf: aSelectorString in: aSetOfClasses
launch a browser for all implementors of aSelector

Usage example(s):

     SystemBrowser browseImplementorsOf:#+ in:(Number withAllSubclasses)
     NewSystemBrowser browseImplementorsOf:#+ in:(Number withAllSubclasses)

o  browseImplementorsOf: aSelectorString in: aSetOfClasses ignoreCase: ignoreCase
launch a browser for all implementors of aSelector

Usage example(s):

     SystemBrowser browseImplementorsOf:#+ in:(Number withAllSubclasses)
     NewSystemBrowser browseImplementorsOf:#+ in:(Number withAllSubclasses)

o  browseImplementorsOf: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch title: titleArg
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

o  browseImplementorsOf: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase title: titleArg
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

Usage example(s):

     SystemBrowser browseImplementorsOf:#+
                                     in:(Array with:Number
                                               with:Float
                                               with:SmallInteger)
                                  title:'some implementors of +'

     NewSystemBrowser browseImplementorsOf:#+
                                     in:(Array with:Number
                                               with:Float
                                               with:SmallInteger)
                                  title:'some implementors of +'

o  browseImplementorsOf: aSelectorString in: aCollectionOfClasses title: title
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

o  browseImplementorsOf: aSelectorString under: aClass
launch a browser for all implementors of aSelector in aClass
and its subclasses

Usage example(s):

     SystemBrowser browseImplementorsOf:#+ under:Integer
     NewSystemBrowser browseImplementorsOf:#+ under:Integer

o  browseImplementorsOfAny: setOfSelectors
launch a browser for all implementors of aSelector

Usage example(s):

     SystemBrowser browseImplementorsOfAny:#( #+ #- )
     NewSystemBrowser browseImplementorsOfAny:#( #+ #- )

o  browseImplementorsOfAny: setOfSelectors in: aSetOfClasses
launch a browser for all implementors of aSelector

o  browseImplementorsOfAny: setOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase title: title
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

o  browseImplementorsOfAny: setOfSelectors in: aCollectionOfClasses title: title
launch a browser for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses

o  browseInstRefsTo: aString in: aCollectionOfClasses modificationsOnly: modsOnly
launch a browser for all methods in aClass where the instVar named
aString is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  browseInstRefsTo: varName in: aCollectionOfClasses modificationsOnly: modsOnly title: title
launch a browser for all methods in aClass where the instVar named
varName is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  browseInstRefsTo: aString under: aClass modificationsOnly: modsOnly
launch a browser for all methods in aClass and subclasses
where the instVar named aString is referenced;
if modsOnly is true, browse only methods where the instvar is modified

o  browseReferendsOf: aGlobalName
launch a browser for all methods referencing a global
named aGlobalName. The argument may be a symbol, a string or
a matchPattern.

Usage example(s):

    UserPreferences current systemBrowserClass browseReferendsOf:#Transcript
    UserPreferences current systemBrowserClass browseReferendsOf:'Tr*'

o  browseReferendsOf: aGlobalName ifNone: actionIfNone
launch a browser for all methods referencing a global
named aGlobalName.

o  browseReferendsOf: aGlobalName in: aSetOfClasses
launch a browser for all methods referencing a global
named aGlobalName.

Usage example(s):

    Browser browseReferendsOf:#Transcript

o  browseReferendsOf: aGlobalName in: aSetOfClasses warnIfNone: doWarn
launch a browser for all methods referencing a global
named aGlobalName.

o  browseReferendsOf: aGlobalName title: title ifNone: actionIfNone
launch a browser for all methods referencing a global named aGlobalName.
If aGlobalName is inside a namespace (a private or namespace-global),
the search should be for a global named <namespace>::<aGlobalName>

Usage example(s):

     Tools::NewSystemBrowser browseReferendsOf:'SortedCollection' title:'foo' ifNone:[ self halt ]

o  browseReferendsOf: aGlobalName title: title warnIfNone: doWarn
launch a browser for all methods referencing a global named aGlobalName.
If aGlobalName is inside a namespace (a private or namespace-global),
the search should be for a global named <namespace>::<aGlobalName>

o  browseReferendsOf: aGlobalName warnIfNone: doWarn
launch a browser for all methods referencing a global named aGlobalName.
If aGlobalName is inside a namespace (a private or namespace-global),
the search should be for a global named <namespace>::<aGlobalName>

o  browseReferendsOfUnboundGlobalsWithTitle: title ifNone: actionIfNone
launch a browser for all methods referencing an unbound global.

o  browseReferendsOfUnboundGlobalsWithTitle: title warnIfNone: doWarn
launch a browser for all methods referencing an unbound global.

o  browseRefsTo: aString classVars: classVars in: aCollectionOfClasses modificationsOnly: modsOnly
launch a browser for all methods in aClass where the instVar/classVar named
aString is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  browseRefsTo: varName classVars: classVars in: aCollectionOfClasses modificationsOnly: modsOnly title: title
launch a browser for all methods in aClass where the instVar/classVar named
varName is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  browseSendersOf: aSelectorString
launch a browser for all senders of aSelector

Usage example(s):

     SystemBrowser browseSendersOf:#+
     UserPreferences current systemBrowserClass browseSendersOf:#+

o  browseSuperCallsIn: aCollectionOfClasses title: title
launch a browser for all super sends in aCollectionOfClasses

Usage example(s):

     SystemBrowser
         browseSuperCallsIn:(Array with:SortedCollection)
                      title:'superSends in SortedCollection'

o  browseSuperCallsUnder: aClass
launch a browser for all supersends in aClass and subclasses

Usage example(s):

     SystemBrowser browseSuperCallsUnder:Number

o  browseUsesOf: aClass
}

o  filterToSearchRefsTo: varName classVars: classVars access: accessType
return a searchblock for variable references (obsolete)

o  filterToSearchRefsTo: varName classVars: classVars modificationsOnly: modsOnly
return a searchblock for variable references

o  filterToSearchRefsTo: varName instVars: doInstVars classVars: doClassVars globals: doGlobals access: accessType
return a searchblock for variable references

o  filterToSearchRefsTo: varName instVars: doInstVars classVars: doClassVars globals: doGlobals poolVars: doPoolVars access: accessType
return a searchblock for variable references

o  findAnyResourceIn: aCollectionOfClasses
return a collection of all methods in aCollectionOfClasses containing any resource.

Usage example(s):

     SystemBrowser findAnyResourceIn:(ApplicationModel withAllSubclasses)

o  findClassRefsTo: aString in: aCollectionOfClasses access: accessType
return all methods in aCollectionOfClasses where the classVar named
aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findClassRefsTo: aString in: aCollectionOfClasses modificationsOnly: modsOnly
return all methods in aCollectionOfClasses where the classVar named
aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findClassRefsTo: aString inClass: aClass access: accessType
return all methods in aClass where the classVar named
aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findClassRefsTo: aString inClass: aClass modificationsOnly: modsOnly
return all methods in aClass where the classVar named
aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findClassRefsTo: aString under: aClass access: accessType
return all methods in aClass and subclasses
where the classVar named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findClassRefsTo: aString under: aClass modificationsOnly: modsOnly
return all methods in aClass and subclasses
where the classVar named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findCode: aCodeString in: aCollectionOfClasses isMethod: isMethod
return a collection of all methods in aCollectionOfClasses
containing a matching piece of code.
This may be slow, since source-code has to be scanned.

o  findCode: aCodeString inMethods: aCollectionOfMethods isMethod: isMethod
return a collection of all methods in aCollectionOfMethods
containing a matching piece of code.

o  findExceptionHandlersIn: aCollectionOfClasses
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  findExceptionHandlersInMethods: aCollectionOfMethods
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  findExceptionRaisersIn: aCollectionOfClasses
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  findExceptionRaisersInMethods: aCollectionOfMethods
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  findHelpSpecMethodsWithString: aString in: aCollectionOfClasses ignoreCase: ignoreCase
return a collection of all help-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findHelpSpecMethodsWithString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
return a collection of all help-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findImplementors: aSelectorMatchString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
search for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

o  findImplementors: aSelectorMatchString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch
search for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

o  findImplementorsMatching: aSelectorMatchString in: aCollectionOfClasses ignoreCase: ignoreCase
search for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

o  findImplementorsMatchingAny: aCollectionOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase
search for all implementors of any in aCollectionOfSelectors in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods.
CAVEAT: searches multiple times (could be tuned alot if heavily used)

Usage example(s):

     self
        findImplementorsMatchingAny:#( 'at*:' '*size')
        in:(Smalltalk allClasses) 
        ignoreCase:true

o  findImplementorsOf: aSelectorMatchString in: aCollectionOfClasses ignoreCase: ignoreCase
search for all implementors of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

Usage example(s):

     SystemBrowser findImplementorsOf:#+
                                   in:(Array with:Number
                                             with:Float
                                             with:SmallInteger)

o  findImplementorsOfAny: aCollectionOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase
search for all implementors of any in aCollectionOfSelectors in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods.
CAVEAT: searches multiple times (could be tuned alot if heavily used)

o  findInstRefsTo: aString in: aCollectionOfClasses access: accessType
return all methods in aCollectionOfClasses where the instVar named
aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findInstRefsTo: aString in: aCollectionOfClasses modificationsOnly: modsOnly
return all methods in aCollectionOfClasses where the instVar named
aString is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  findInstRefsTo: aString inClass: aClass access: accessType
return all methods in aClass where the instVar named
aString is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  findInstRefsTo: aString inClass: aClass modificationsOnly: modsOnly
return all methods in aClass where the instVar named
aString is referenced; if modsOnly is true, browse only methods where the
instvar is modified

o  findInstRefsTo: aString under: aClass access: accessType
return all methods in aClass and subclasses
where the instVar named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findInstRefsTo: aString under: aClass modificationsOnly: modsOnly
return all methods in aClass and subclasses
where the instVar named aString is referenced;
if modsOnly is true, browse only methods where the instvar is modified

o  findMenuSpecMethodsWithString: aString in: aCollectionOfClasses ignoreCase: ignoreCase
return a collection of all menu-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findMenuSpecMethodsWithString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
return a collection of all menu-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findPoolVarRefsTo: aString inClass: aClass access: accessType
return all methods in aClass where the pool variable named aString is referenced;
if modsOnly is true, browse only methods where the classvar is modified

o  findRefsTo: varName classVars: classVars in: aCollectionOfClasses access: accessType
return a list of all methods in aCollectionOfClasses where the instVar/classVar named
varName is referenced;
if modsOnly is true, browse only methods where the instvar is modified

Usage example(s):

     self
        findRefsTo:'x'
        classVars:false
        in:(Array with:Point)
        modificationsOnly:true

o  findRefsTo: varName classVars: classVars in: aCollectionOfClasses modificationsOnly: modsOnly
return a list of all methods in aCollectionOfClasses where the instVar/classVar named
varName is referenced;
if modsOnly is true, browse only methods where the instvar is modified

Usage example(s):

     self
        findRefsTo:'x'
        classVars:false
        in:(Array with:Point)
        modificationsOnly:true

o  findResource: aResourceSymbolOrCollectionOfSymbols in: aCollectionOfClassesOrMethods
return a collection of all methods in aCollectionOfClasses
containing a resource.

Usage example(s):

     SystemBrowser findResource:#image in:(ApplicationModel withAllSubclasses)
     SystemBrowser findResource:#menu in:(ApplicationModel withAllSubclasses)
     SystemBrowser findResource:#(menu programMenu) in:(ApplicationModel withAllSubclasses)

o  findResource: aStringOrEmpty match: doMatch ignoreCase: ignoreCase in: aCollectionOfClasses
return a collection of all methods in aCollectionOfClasses containing a matching resource.

Usage example(s):

     SystemBrowser findResource:'*debug*' match:true ignoreCase:true in:(GenericException withAllSubclasses)

o  findRespondersOfAll: aCollectionOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase
search for all classes which respond to all of the selectors in aCollectionOfSelectors.
Search within the classes contained in aCollectionOfClasses and their metaclasses.
This will skip over unloaded classes.
Return a collection of classes.

o  findSendersOf: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase
search for all senders of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

Usage example(s):

     SystemBrowser findSendersOf:#+
                   in:(Array with:Number
                             with:Float
                             with:SmallInteger)
                   ignoreCase:false

o  findSendersOf: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
search for all senders of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

Usage example(s):

     SystemBrowser findSendersOf:#+
                   in:(Array with:Number
                             with:Float
                             with:SmallInteger)
                   ignoreCase:false

o  findSendersOf: aSelectorString inMethods: aCollectionOfMethods ignoreCase: ignoreCase
search for all senders of aSelector in aCollectionOfMethods.
Return a collection of methods

o  findSendersOf: aSelectorString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch
search for all senders of aSelector in aCollectionOfMethods.
Return a collection of methods

o  findSendersOfAll: aCollectionOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase
search for methods which send all selectors in aCollectionOfSelectors in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods.

Usage example(s):

     SystemBrowser 
        findSendersOfAll:#(#'+' #'-')
        in:(Smalltalk allClasses)
        ignoreCase:false  

o  findSendersOfAny: aCollectionOfSelectors in: aCollectionOfClasses ignoreCase: ignoreCase
search for all senders of any selector in aCollectionOfSelectors in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods.
CAVEAT: searches multiple times (could be tuned a lot if heavily used)

Usage example(s):

     SystemBrowser findSendersOfAny:#(#'+' #'-')
                   in:(Array with:Number
                             with:Float
                             with:SmallInteger)
                   ignoreCase:false  

o  findSendersUsingReturnValueOf: aSelectorString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
search for all senders of aSelector in
the classes contained in aCollectionOfClasses and their metaclasses.
Return a collection of methods

Usage example(s):

     SystemBrowser findSendersUsingReturnValueOf:#+
                   in:(Array with:Number
                             with:Float
                             with:SmallInteger)
                   ignoreCase:false

o  findSpecMethodsFor: specSymbol withString: aString in: aCollectionOfClasses ignoreCase: ignoreCase
return a collection of all specSymbol-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findSpecMethodsFor: specSymbol withString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
return a collection of all specSymbol-spec methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findString: aString in: aCollectionOfClasses ignoreCase: ignoreCase
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

Usage example(s):

     SystemBrowser findString:'should' in:(Array with:Object) ignoreCase:false

o  findString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

Usage example(s):

     SystemBrowser 
        findString:'should'   
        in:(Array with:Object) 
        ignoreCase:false

o  findString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

Usage example(s):

     SystemBrowser findString:'should'   in:(Array with:Object) ignoreCase:false

o  findString: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

Usage example(s):

     SystemBrowser findString:'should'   in:(Array with:Object) ignoreCase:false

o  findString: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findString: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findString: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findString: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch resourceMethodsOnly: resourceMethodsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in their source.
This may be slow, since source-code has to be scanned.

o  findStringLiteral: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

Usage example(s):

     SystemBrowser findStringLiteral:'error' in:(Array with:Object) ignoreCase:true match:false

o  findStringLiteral: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

Usage example(s):

     SystemBrowser findStringLiteral:'error' in:(Array with:Object) ignoreCase:true match:false

o  findStringLiteral: aString in: aCollectionOfClasses ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

Usage example(s):

     SystemBrowser findStringLiteral:'error' in:(Array with:Object) ignoreCase:true match:false

o  findStringLiteral: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

o  findStringLiteral: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

o  findStringLiteral: aString inMethods: aCollectionOfMethods ignoreCase: ignoreCase match: doMatch fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a collection of all methods in aCollectionOfClasses
containing a string in any of their string-literals.

o  findUsingParseTreeSearcher: searcher in: aCollectionOfClasses
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  findUsingParseTreeSearcher: searcher inMethods: aCollectionOfMethods
return a collection of all methods in aCollectionOfClasses
containing an exception raiser.
This may be slow, since source-code has to be scanned.

o  resourceMethodSearchBlockFor: aStringSearchBlock
Modified (format): / 08-10-2020 / 11:10:52 / Stefan Vogel

o  searchBlockForAllCallsOn: aSelectorString ignoreCase: ignoreCase

o  searchBlockForAllCallsOn: aSelectorString ignoreCase: ignoreCase match: doMatchArg
return an optimized search block for the senders search.
Because this highly affects the speed of the senders-search in the browser,
specialized blocks are returned, depending on whether a selector-match or casesensitive
search is wanted
(these operations are executed a zillion times in an inner loop,
therefore, the speedup is noticable)

o  searchBlockForAllCallsUsingReturnValueOn: aSelectorOrSelectorString ignoreCase: ignoreCase match: doMatchArg
return an optimized search block for the senders which use the return value search.

o  searchBlockForCode: aCodeString in: aCollectionOfClasses isMethod: isMethod
return a block to search for a piece of code.
intelligent search: because parsing and the parseTree-match is a relatively
expensive operation, we try hard to reduce the amount of searched methods by:
- extracting sent messages from the pattern, and limiting the search to
methods which also send all those messages,
- extracting accessed globals from the pattern, and limiting the search to
methods which also refer to those globals

o  searchBlockForCode: aCodeString isMethod: isMethod
return a block to search for a piece of code (intelligent search).

o  searchBlockForParseTreeSearcher: searcher isMethod: isMethod
return a block to search for a piece of code (intelligent search).

o  searchBlockForReferendsOf: aGlobalName
return a block which searches for all methods which reference a global named aGlobalName,
which may be a matchpattern.
If aGlobalName is inside a namespace (a private or namespace-global),
the name should be <namespace>::<aGlobalName>

o  searchBlockForString: aString ignoreCase: ignoreCase match: doMatchArg
return a block to search for a string.

o  searchBlockForString: aString ignoreCase: ignoreCase match: doMatchArg fullWordsOnly: fullWordsOnly
return a block to search for a string.

o  searchBlockForString: aStringArg ignoreCase: ignoreCase match: doMatchArg fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a block to search for a string.

o  searchBlockForStringLiteral: aString ignoreCase: ignoreCase match: doMatchArg
return a block to search for a string-literal.

o  searchBlockForStringLiteral: aString ignoreCase: ignoreCase match: doMatchArg fullWordsOnly: fullWordsOnly
return a block to search for a string-literal.

o  searchBlockForStringLiteral: aString ignoreCase: ignoreCase match: doMatchArg fullWordsOnly: fullWordsOnly resourceMethodsOnly: resourceMethodsOnly
return a block to search for a string-literal.

o  searchBlockForSymbol: aSymbol
return a matchblock to search for all methods referencing aSymbol.
false if no such symbol exists

startup
o  browseAllSelect: aBlock
launch a browser for all methods where aBlock returns true.
The block is called with 3 arguments, class, method and selector.

Usage example(s):

     SystemBrowser browseAllSelect:[:aClass :aMethod :selector | selector numArgs == 3]

o  browseClass: aClass
launch a browser for aClass.
Notice: better go via Smalltalk browseClass:, which honors the tool-preferences

Usage example(s):

     SystemBrowser browseClass:Object

o  browseClass: aClass methodCategory: aCategory
launch a browser for all methods under aCategory in aClass

Usage example(s):

     SystemBrowser browseClass:String methodCategory:'copying'

o  browseClass: aClass selector: selector
launch a browser for the method at selector in aClass.

Usage example(s):

     SystemBrowser browseClass:Object selector:#printString
     Tools::NewSystemBrowser openInClass:Object selector:#printString

o  browseClassCategory: aClassCategory
launch a browser for all classes under aCategory

Usage example(s):

     SystemBrowser browseClassCategory:'Kernel-Objects'

o  browseClassHierarchy: aClass
launch a browser for aClass and all its superclasses.
this is different from the fullProtocol browser.

Usage example(s):

     SystemBrowser browseClassHierarchy:Number

o  browseClasses: aList label: title
launch a browser for all classes in aList

Usage example(s):

     SystemBrowser browseClasses:(Array with:Object
                                        with:Float)
                           title:'two classes'

o  browseClasses: aList label: title sort: doSort
launch a browser for all classes in aList

Usage example(s):

     SystemBrowser browseClasses:(Array with:Object
                                        with:Float)
                           title:'two classes'

o  browseClasses: aList title: title
launch a browser for all classes in aList

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  browseClasses: aList title: title sort: doSort
launch a browser for all classes in aList

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  browseFullClassProtocol: aClass
launch a browser for aClasses full protocol.
This is different from hierarchy browsing.

Usage example(s):

     SystemBrowser browseFullClassProtocol:Number

o  browseFullClasses
launch a browser showing all methods at once

Usage example(s):

SystemBrowser browseFullClasses

o  browseInstMethodsFrom: aClass where: aBlock title: title
launch a browser for all instance methods in aClass and all subclasses
where aBlock evaluates to true

o  browseInstMethodsIn: aCollectionOfClasses where: aBlock title: title
launch a browser for all instance methods of all classes in
aCollectionOfClasses where aBlock evaluates to true

o  browseInstMethodsOf: aClass where: aBlock title: title
launch a browser for all instance methods in aClass
where aBlock evaluates to true

o  browseMethod: aMethod
launch a single-method browser.

Usage example(s):

     self browseMethod:(Array compiledMethodAt:#at:)
     Tools::NewSystemBrowser browseMethod:(Array compiledMethodAt:#at:)

o  browseMethodCategory: aCategory
launch a browser for all methods where category = aCategory

Usage example(s):

     SystemBrowser browseMethodCategory:'printing & storing'
     SystemBrowser browseMethodCategory:'print*'

o  browseMethods: aListOfMethods
launch a multi-method browser.

Usage example(s):

     self 
        browseMethods:(Array with:(Array compiledMethodAt:#at:))

     self 
        browseMethods:(Array with:(Array compiledMethodAt:#at:)
                             with:(OrderedCollection compiledMethodAt:#at:))

     self 
        browseMethods:(Array with:(Array compiledMethodAt:#at:)
                             with:(Array compiledMethodAt:#at:put:))

o  browseMethods: aList title: aString
launch a browser for an explicit list of class/selectors.
Each entry in the list can be either a method, or a string
consisting of the classes name and the selector, separated by spaces.
For class methods, the string ' class' must be appended to the classname.

Usage example(s):

     SystemBrowser 
        browseMethods:#('Object printOn:' 'Collection add:')
        title:'some methods'

     SystemBrowser 
        browseMethods:#('Behavior new:' 'Setclass new:')
        title:'some new: methods'

     SystemBrowser 
        browseMethods:(Array with:(Object compiledMethodAt:#printOn:)
                             with:(Collection compiledMethodAt:#add:)
                             with:(Object class compiledMethodAt:#initialize))
        title:'some methods'

o  browseMethods: aList title: aString sort: doSort
launch a browser for an explicit list of class/selectors.
Each entry in the list can be either a method, or a string
consisting of the classes name and the selector, separated by spaces.
For class methods, the string ' class' must be appended to the classname.

Usage example(s):

     SystemBrowser 
        browseMethods:#('Object printOn:' 'Collection add:')
        title:'some methods'

     SystemBrowser 
        browseMethods:#('Behavior new:' 'Setclass new:')
        title:'some new: methods'

     SystemBrowser 
        browseMethods:(Array with:(Object compiledMethodAt:#printOn:)
                             with:(Collection compiledMethodAt:#add:)
                             with:(Object class compiledMethodAt:#initialize))
        title:'some methods'

o  browseMethodsContainingInSource: pieceOfText
open a browser on all methods where that piece is contained in the source

o  browseMethodsForWhich: filter title: title
launch a multi-method browser.

Usage example(s):

     self
        browseMethodsForWhich:[:m | m hasResource:#image]
        title:'image methods'

o  browseMethodsFrom: aClass where: aBlock title: title
launch a browser for all instance- and classmethods in aClass
and all its subclasses where aBlock evaluates to true.
The block is called with 3 arguments, class, method and seelctor.

o  browseMethodsIn: aCollectionOfClasses inst: wantInst class: wantClass where: aBlock title: title
launch a browser for all instance- (if wantInst is true) and/or
classmethods (if wantClass is true) from classes in aCollectionOfClasses,
where aBlock evaluates to true.
The block is called with 3 arguments, class, method and selector.

o  browseMethodsIn: aCollectionOfClasses inst: wantInst class: wantClass where: aBlock title: title ifNone: warnBlock
launch a browser for all instance- (if wantInst is true) and/or
classmethods (if wantClass is true) from classes in aCollectionOfClasses,
where aBlock evaluates to true.
The block is called with 3 arguments, class, method and selector.

o  browseMethodsIn: aCollectionOfClasses where: aBlock title: title
launch a browser for all instance- and classmethods from
all classes in aCollectionOfClasses where aBlock evaluates to true.
The block is called with 3 arguments, class, method and seelctor.

o  browseMethodsIn: aCollectionOfClasses where: aBlock title: title ifNone: warnBlock
launch a browser for all instance- and classmethods from
all classes in aCollectionOfClasses where aBlock evaluates to true.
The block is called with 3 arguments, class, method and seelctor.

o  browseMethodsOf: aClass where: aBlock title: title
launch a browser for all instance- and classmethods in aClass
where aBlock evaluates to true.
The block is called with 3 arguments, class, method and seelctor.

o  browseMethodsWhere: aBlock title: title
launch a browser for all methods where aBlock returns true.
The block is called with 3 arguments, class, method and seelctor.

o  browseMethodsWhere: aBlock title: title ifNone: warnBlock
launch a browser for all methods where aBlock returns true.
The block is called with 3 arguments, class, method and seelctor.

o  findMethodsIn: aCollectionOfClasses inst: wantInst class: wantClass where: aBlock
return all instance- (if wantInst is true) and/or classmethods (if wantClass is true)
from classes in aCollectionOfClasses, where aBlock evaluates to true.

o  findMethodsIn: aCollectionOfClassesOrMethods where: aBlock
return all instance- and classmethods
from either classes in aCollectionOfClasses,
or within the given list of methods,
where aBlock evaluates to true.

startup with query
o  askThenBrowseClass
SystemBrowser askThenBrowseClass
Tools::NewSystemBrowser askThenBrowseClass

o  askThenBrowseClassHierarchy
SystemBrowser askThenBrowseClassHierarchy
Tools::NewSystemBrowser askThenBrowseClassHierarchy

o  askThenBrowseFullClassProtocol
SystemBrowser askThenBrowseFullClassProtocol
Tools::NewSystemBrowser askThenBrowseFullClassProtocol

utilities
o  askForClass
Tools::NewSystemBrowser askForClass

o  askForClassName
Tools::NewSystemBrowser askForClassName

o  askForClassNameWithFilter: filterOrNil
Tools::NewSystemBrowser askForClassName

o  askForClassToSearch: doWhatByDefault single: singleClass msgTail: msgTail resources: resourcesOrNil filter: filterOrNil forBrowser: aBrowserOrNil thenDo: aBlock
utility common code for both opening a new browser on a class and
to search for a class in an existing browser.
If singleClass is true, a single class will be asked for and browsed,
otherwise, a match pattern is allowed and a multi-class browser is opened.
Moved from instance protocol for better reusability.

o  askForClassWithFilter: filterOrNil
Tools::NewSystemBrowser askForClass

o  classWithNameSimilarTo: className
helper for class-name entry; finds a class by name tolerant w.r.t. case

o  classesWithNameSimilarTo: className
helper for class-name entry; finds a class by name tolerant w.r.t. case

o  classesWithNameSimilarTo: className from: aNameSpaceOrNil
helper for class-name entry; finds classes with a name similar to the argument, className

Usage example(s):

     self classesWithNameSimilarTo:'NewSystemBrowser'
     self classesWithNameSimilarTo:'NewSzstemBrowser'
     self classesWithNameSimilarTo:'Moose::MSEAbstractOperator'

o  enterBoxForClassWithCodeSelectionTitle: title withList: listOrNil okText: okText forBrowser: aBrowserOrNil
convenient method: setup an enterBox with initial text taken
from the codeview's selection.

o  enterBoxTitle: title withList: aListOrNil okText: okText
convenient method: setup enterBox

Usage example(s):

     self enterBoxTitle:'bla' withList:#('a' 'b' 'c') okText:'gaga'

o  extractClassAndSelectorFrom: aString into: aBlock
given a string which can be either 'class>>sel' or
'class sel', extract className and selector, and call aBlock with
the result.
Useful to open browser on a method as selected in some documentation.

o  extractSelectorFrom: aString
given an arbitrary string, try to extract a useful selector.
Useful to open browser on a selected code fragment.

Usage example(s):

     self extractSelectorFrom:'at:put:'      
     self extractSelectorFrom:'#at:put:'                       
     self extractSelectorFrom:'#''at:put:'''                       
     self extractSelectorFrom:'at:something put:someValue'     
     self extractSelectorFrom:'self at:something put:someValue'
     self extractSelectorFrom:'(self at:something put:someValue)' 
     self extractSelectorFrom:'[self at:something put:someValue] value' 
     self extractSelectorFrom:'Array ยป at:put:' 
     self extractSelectorFrom:'Array>>at:put:' 
     self extractSelectorFrom:'Array>>#at:put:' 
     self extractSelectorFrom:'Array>>#''at:put:''' 

o  getClassThenPerform: aSelector
new Code:

Usage example(s):

     SystemBrowser getClassThenPerform:#browseClass:

o  resourceEditorClassFor: aResource
resources are from a methods resource-info;
return an appropriate editor class.

o  resourceEditorClassForResources: resources
resources are from a methods resource-info;
return an appropriate editor class.


Private classes:

    BrowserHistoryEntry


ST/X 7.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Mon, 30 Dec 2024 18:10:42 GMT