eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'Tools::BrowserList':

Home

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

Class: BrowserList (in Tools)


Inheritance:

   Object
   |
   +--Model
      |
      +--ApplicationModel
         |
         +--Tools::NavigatorModel
            |
            +--Tools::BrowserList
               |
               +--Tools::BrowserListWithFilter
               |
               +--Tools::ClassCategoryList
               |
               +--Tools::ClassGeneratorList
               |
               +--Tools::ClassList
               |
               +--Tools::LintRuleList
               |
               +--Tools::MethodCategoryList
               |
               +--Tools::MethodList
               |
               +--Tools::NamespaceList
               |
               +--Tools::ProjectList
               |
               +--Tools::VariableList

Package:
stx:libtool
Category:
Interface-Browsers-New
Version:
rev: 1.99 date: 2019/03/30 11:24:01
user: cg
file: Tools__BrowserList.st directory: libtool
module: stx stc-classLibrary: libtool
Author:
Claus Gittinger (cg@exept.de)

Description:


embeddable application displaying a browser's list.
I am a pluggable component, which gets an input collection
(typically a generator/iterator), which tells me what to display
in the list.
When an item is selected, I provides a similar outputGenerator, 
which enumerates the selected sub-items.
Concrete subclasses exist, to present lists of:
    class-categories (and generate a list of classes),
    packages (and generate a list of classes),
    namespaces (generates a list of classes),
    classes (and generate a list of methods+method category,
    method-categories (and generate a list of methods),
    methods


[instance variables:]
    can someone please write a  few words here...

    menuHolder 
    inGeneratorHolder 
    outGeneratorHolder
    selectionChangeCondition 
    immediateUpdate 
    doubleClickChannel
    filter                          a filterblock by the one who embedds this
    updateTrigger 
    forceGeneratorTrigger 
    hideUnloadedClasses
    showClassPackages 
    selectionHolder 
    packageFilter 
    nameSpaceFilter
    organizerMode 
    slaveMode                       I am just following passively (used for hidden
                                    organized lists (for example: package list, while hidden
                                    when another mode is active, to prevent it from sending
                                    out change requests etc.)
    listValid 
    pseudoListLabelHolder 
    icons
    sortBy 
    autoSelect 
    showAllClassesInNameSpaceOrganisation
    nameFilter                      a string or glob pattern (from the user, if a GUI for that is present)


Class protocol:

image specs
o  checkedIcon
TODO: cg: ask the checkbox for its icon, to ensure a common look

usage example(s):

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

o  checkedIconDisabled
TODO: cg: ask the checkbox for its icon, to ensure a common look

o  nameSpaceIcon

o  packageIcon

o  padLockBlueMiniIcon

o  padLockGrayMiniIcon

o  padLockGreenMiniIcon

o  padLockRedMiniIcon

o  programImageIcon

o  protectedMethod

o  uncheckedIcon
TODO: cg: ask the checkbox for its icon, to ensure a common look

usage example(s):

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

o  uncheckedIconDisabled
TODO: cg: ask the checkbox for its icon, to ensure a common look

usage example(s):

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

queries
o  isAbstract


Instance protocol:

accessing
o  nameFilter: aStringOrPattern

aspects
o  autoUpdateOnChange
automatic update of the list, when the system changes.
For some (slow) search lists (such as string-search), autoupdate is
disabled as it would otherwise make the browser unusable.
Those lists need an explicit menu-update action.

o  autoUpdateOnChange: aBoolean
automatic update of the list, when the system changes.
For some (slow) search lists (such as string-search), autoupdate is
disabled as it would otherwise make the browser unusable.
Those lists need an explicit menu-update action.

o  defaultSlaveModeValue

o  doubleClickChannel

o  doubleClickChannel: aChannel

o  filter: aValueHolder

o  forceGeneratorTrigger

o  forceGeneratorTrigger: aTriggerValue

o  hideUnloadedClasses

o  hideUnloadedClasses: aValueHolder

o  menuHolder

o  menuHolder: aValueHolder

o  nameSpaceFilter

o  nameSpaceFilter: aValueHolder

o  organizerMode

o  organizerMode: aValueHolder

o  packageFilter
debug-check only

usage example(s):

packageFilter onChangeEvaluate:[packageFilter value isValueModel ifTrue:[self halt:'debug halt']].

o  packageFilter: aValueHolder
debug-check only

o  pseudoListLabelHolder

o  selectionChangeCondition: aBlockOrValueHolder

o  selectionHolder

o  selectionHolder: aValueHolder
update

o  showAllClassesInNameSpaceOrganisation

o  showAllClassesInNameSpaceOrganisation: aValueHolder

o  showClassPackages

o  showClassPackages: aValueHolder

o  showCoverageInformation

o  showCoverageInformation: aValueHolder

o  slaveMode

o  slaveMode: aValueHolder

o  sortBy

o  sortBy: aValueHolder

o  updateTrigger

o  updateTrigger: aTriggerValue

change & update
o  applicationIsActive
true if I am the active view

o  delayedUpdate: something with: aParameter from: changedObject
if any of my subclasses want those, they should look for them.

o  enqueueDelayedUpdateList

o  enqueueDelayedUpdateOutputGenerator
listValid := false.

o  environmentChanged
(comment from inherited method)
My environment has changed. Update cached environment value.
Subclasses may need to override and invalidate it's contents.

o  forceReselect

o  forceSelectionClear

o  forceUpdateList
|listView|

o  immediateUpdate: aBooleanOrBooleanHolder

o  prioDelayedUpdate: something with: aParameter from: changedObject

o  selectionChangeAllowed

o  selectionChanged
self updateOutputGenerator.

o  selectionChangedByClick

o  syncDelayedUpdateList

o  update: something with: aParameter from: changedObject
must check, as it could be nested...

o  updateListInBackground

drag & drop
o  canDrop: aDropContext

o  doDrop: aDropContext

o  dropClassFiles: files

o  objectsAreClassFiles: objects

generators
o  inGeneratorHolder

o  inGeneratorHolder: aConditionBlockHolder
self window shown

o  makeGenerator

** This method raises an error - it must be redefined in concrete classes **

o  outGeneratorHolder

o  outGeneratorHolder: aConditionBlockHolder

o  updateOutputGenerator
create a generator which enumerates my elements,
and place it into the outputGenerator holder

icons
o  abstractMethodIcon
answer an icon to mark abstract methods

o  breakPointedIcon
answer an icon to mark breakPointed methods

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

o  canvasIcon
answer an icon to mark canvas spec methods

o  deprecatedMethodIcon

o  disabledBreakpointIcon
answer an icon to mark methods with disabled breakpoints

o  fetchIcon: name selector: fetchSelector
answer an icon to mark methods

o  fileImageIcon
answer an icon to mark file-image spec methods

o  fullBreakPointedIcon
answer an icon to mark breakPointed methods

o  helpIcon
answer an icon to mark help spec methods

o  hierarchicalListIcon
answer an icon to mark hierarchicalList spec methods

o  ignoredMethodIcon
answer an icon to mark ignored methods

o  imageIcon
answer an icon to mark image spec methods

o  instrumentationIcon
answer an icon to mark instrumented methods

o  lineBreakPointedIcon
answer an icon to mark breakPointed methods

o  lineTracePointedIcon
answer an icon to mark tracePointed methods

o  menuIcon
answer an icon to mark menu spec methods

o  methodEmptyInheritedIcon

o  methodInheritedFromAboveAndRedefinedBelowIcon

o  methodInheritedFromAboveIcon

o  methodIsSubclassResponsibilityAndRedefinedBelowIcon

o  methodIsSubclassResponsibilityIcon

o  methodRedefinedBelowIcon

o  privateMethodIcon
answer an icon to mark private methods

o  programImageIcon
answer an icon to mark image spec methods

o  programMenuIcon
answer an icon to mark program generated menu methods

o  protectedMethodIcon
answer an icon to mark protected methods

o  stopIcon
answer an icon to mark breakPointed methods

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

o  tabListIcon
answer an icon to mark tabList spec methods

o  tableColumnsIcon
answer an icon to mark tableColumns spec methods

o  timeIcon
answer an icon to mark timed methods

o  traceIcon
answer an icon to mark traced methods

initialize-release
o  commonPostBuild
/// listValid ifFalse:[self enqueueDelayedUpdateList "updateList"].

o  commonPostOpen
self breakPoint:#cg.

o  initialize

o  release
(comment from inherited method)
remove all references to objects that may refer to self.
Subclasses may redefine this method but should do a 'super release'.

misc
o  invalidateList

private
o  browserNameList

o  classesToProcessForClasses: classes withVisibility: visibility
for methodCategory and methodList, depending on the setting
of visibility (allButObject, includeAllSupers or class only),
return a combined hull set of classes for a given set.

o  colorize: aString with: emphasis

o  colorizeForChangedCode: someString

o  colorizeForChangedCodeInSmallTeam: someString

o  colorizeForDifferentPackage: someString

o  colorizeForInstrumentedFullyCoveredCode: someString

o  colorizeForInstrumentedNeverCalledCode: someString

o  colorizeForInstrumentedPartiallyCoveredCode: someString

o  colorizeGrey: someString

o  emphasizeForChangedCode: someString

o  emphasizeForDifferentPackage: someString
allItalic

o  executeInBackground: aBlock
used to update when I do not have the focus (i.e. being iconified or non-active).
Run aBlock at userBackgroundPrio, but go back to normal prio, if I get the focus

o  inSlaveMode

o  inSlaveModeOrInvisible
self slaveMode value isNil ifTrue:[

o  isClass: aClass shownWithNameSpaceFilter: nameSpaceFilter

o  isClass: aClass shownWithPackageFilter: packageFilter

o  makeDependent

** This method raises an error - it must be redefined in concrete classes **

o  makeIndependent

** This method raises an error - it must be redefined in concrete classes **

o  releaseAsSubCanvas
(comment from inherited method)
a subcanvas is closed or switching to a new application.
Can be redefined to perform a self release in this case.

o  setListValid: aBoolean

o  updateList

o  updateListFor: newList
update the browsers list in a way which avoids scrolls
and flicker; returns true, if the newList is the same.

queries
o  supportsSearch

setup
o  autoSelect: aBoolean


Private classes:

    SearchHandler


ST/X 7.2.0.0; WebServer 1.670 at bd0aa1f87cdd.unknown:8081; Fri, 26 Apr 2024 19:46:11 GMT