eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'Tools::TagsBrowser':

Home

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

Class: TagsBrowser (in Tools)


Inheritance:

   Object
   |
   +--Model
      |
      +--ApplicationModel
         |
         +--Tools::TagsBrowser

Package:
stx:libtool
Category:
Interface-Tools-File-Tags
Version:
rev: 1.98 date: 2023/05/28 14:47:35
user: cg
file: Tools__TagsBrowser.st directory: libtool
module: stx stc-classLibrary: libtool

Description:


a simple tag-support view, which can be plugged into another (file) application
for indexing.
Supports a bunch of languages somehow, but none really perfect.
Uses ctags if present, if not, has naive fallback tag generation support,
so it can be used without additional tool support (somewhat less precise).

Good enough for me, doing work in other (programming) languages 
(of course, is not able to compete with specialized tools like notepad++, emacs or similar).

copyright

COPYRIGHT (c) 2002 by eXept Software AG 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:

help specs
o  helpSpec
(comment from inherited method)
default is: no help-spec (should be redefined by concrete class if help is wanted).

interface specs
o  windowSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

Usage example(s):

     UIPainter new openOnClass:Tools::TagsBrowser andSelector:#windowSpec
     Tools::TagsBrowser new openInterface:#windowSpec
     Tools::TagsBrowser open

menu specs
o  assemblerMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#assemblerMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser assemblerMenuSlice)) startUp

o  cMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#cMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser cMenuSlice)) startUp

o  dartMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#dartMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser dartMenuSlice)) startUp

o  htmlMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#htmlMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser htmlMenuSlice)) startUp

o  javaMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#javaMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser javaMenuSlice)) startUp

o  javaScriptMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#javaScriptMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser javaScriptMenuSlice)) startUp

o  lispMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#lispMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser lispMenuSlice)) startUp

o  luaMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#luaMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser luaMenuSlice)) startUp

o  makefileMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#makefileMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser makefileMenuSlice)) startUp

o  middleButtonMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#middleButtonMenu
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser middleButtonMenu)) startUp

o  objcMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#objcMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser objcMenuSlice)) startUp

o  ozMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#ozMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser ozMenuSlice)) startUp

o  pythonMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#pythonMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser pythonMenuSlice)) startUp

o  smalltalkMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#smalltalkMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser smalltalkMenuSlice)) startUp

o  tclMenuSlice
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#tclMenuSlice
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser tclMenuSlice)) startUp

o  toolBarMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:Tools::TagsBrowser andSelector:#toolBarMenu
     (Menu new fromLiteralArrayEncoding:(Tools::TagsBrowser toolBarMenu)) startUp


Instance protocol:

accessing
o  editedFile

o  editedFile: aFilename

o  editedFileHolder
gets the holder, which keeps the current edited file

o  editedFileHolder: aHolder
gets the holder, which keeps the current edited file

o  filter: aString

o  tagsMenu: aMenuOrNil
set the menu to be shown in the tag list

o  tagsValid

o  tempDirectory

accessing presentation aspects
o  groupedByType

o  groupedByType: aBool

o  isSorted

o  isSorted: aBool

o  sorted
marked as obsolete by exept MBP at 28-05-2023

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

o  sorted: aBool
marked as obsolete by exept MBP at 28-05-2023

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

o  sortedByLineNumber

o  sortedByLineNumber: aBool

o  sortedByName

o  sortedByName: aBool

o  sortedByNameIgnoringCase

o  sortedByNameIgnoringCase: aBool

o  sortedByNameIgnoringLeadingUnderscores

o  sortedByNameIgnoringLeadingUnderscores: aBool

o  sortedByNameIgnoringLeadingUnderscoresAndCase

o  sortedByNameIgnoringLeadingUnderscoresAndCase: aBool

o  sortedByType

o  sortedByType: aBool

accessing-behavior
o  action: aOneArgBlock
set the action, which is called with the selected tag,
if the user selects one

accessing-filters
o  anchorsOnly

o  anchorsOnly: aBool
aBool ifTrue:[

o  classesAndFunctionsOnly

o  classesAndFunctionsOnly: aBool

o  classesAndMethodsOnly

o  classesAndMethodsOnly: aBool

o  classesFunctionsAndVariablesOnly

o  classesFunctionsAndVariablesOnly: aBool

o  classesOnly

o  classesOnly: aBool

o  dartClassesAndMethodsOnly
^ tagList dartClassesAndMethodsOnly

o  dartClassesAndMethodsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList dartClassesAndMethodsOnly:aBool.

o  dartClassesOnly
^ tagList dartClassesOnly

o  dartClassesOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList dartClassesOnly:aBool.

o  dartMethodsOnly
^ tagList dartMethodsOnly

o  dartMethodsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList dartMethodsOnly:aBool.

o  definesOnly

o  definesOnly: aBool

o  documentationOnly

o  documentationOnly: aBool

o  functionsAndVariablesOnly

o  functionsAndVariablesOnly: aBool

o  functionsOnly

o  functionsOnly: aBool

o  headlinesOnly

o  headlinesOnly: aBool
aBool ifTrue:[

o  hideClasses

o  hideClasses: aBool

o  hideDartClasses
^ tagList hideDartClasses

o  hideDartClasses: aBool
tagList hideDartClasses:aBool.

o  hideDartFields
^ tagList hideDartFields

o  hideDartFields: aBool
tagList hideDartFields:aBool.

o  hideDartInterfaces
^ tagList hideDartInterfaces

o  hideDartInterfaces: aBool
tagList hideDartInterfaces:aBool.

o  hideDartMethods
^ tagList hideDartMethods

o  hideDartMethods: aBool
tagList hideDartMethods:aBool.

o  hideDartPackages
^ tagList hideDartPackages

o  hideDartPackages: aBool
tagList hideDartPackages:aBool.

o  hideDataLabels

o  hideDataLabels: aBool

o  hideDefines

o  hideDefines: aBool

o  hideDocumentation

o  hideDocumentation: aBool

o  hideFields

o  hideFields: aBool

o  hideFunctionProtoTypes

o  hideFunctionProtoTypes: aBool

o  hideFunctions

o  hideFunctions: aBool

o  hideIncludes

o  hideIncludes: aBool

o  hideInterfaces

o  hideInterfaces: aBool

o  hideJavaClasses
^ tagList hideJavaClasses

o  hideJavaClasses: aBool
tagList hideJavaClasses:aBool.

o  hideJavaFields
^ tagList hideJavaFields

o  hideJavaFields: aBool
tagList hideJavaFields:aBool.

o  hideJavaInterfaces
^ tagList hideJavaInterfaces

o  hideJavaInterfaces: aBool
tagList hideJavaInterfaces:aBool.

o  hideJavaMethods
^ tagList hideJavaMethods

o  hideJavaMethods: aBool
tagList hideJavaMethods:aBool.

o  hideJavaPackages
^ tagList hideJavaPackages

o  hideJavaPackages: aBool
tagList hideJavaPackages:aBool.

o  hideLabels

o  hideLabels: aBool

o  hideLispConstants

o  hideLispConstants: aBool

o  hideLispEvaluations

o  hideLispEvaluations: aBool

o  hideLispMacros

o  hideLispMacros: aBool

o  hideLispMethods

o  hideLispMethods: aBool

o  hideLocalLabels

o  hideLocalLabels2

o  hideLocalLabels2: aBool

o  hideLocalLabels3

o  hideLocalLabels3: aBool

o  hideLocalLabels: aBool

o  hideLuaFunctions
^ tagList hideLuaFunctions

o  hideLuaFunctions: aBool
tagList hideLuaFunctions:aBool.

o  hideLuaVariables
^ tagList hideLuaVariables

o  hideLuaVariables: aBool
tagList hideLuaVariables:aBool.

o  hideMethods

o  hideMethods: aBool

o  hideObjcClasses
^ tagList hideObjcClasses

o  hideObjcClasses: aBool
tagList hideObjcClasses:aBool.

o  hideOzClasses
^ tagList hideOzClasses

o  hideOzClasses: aBool
tagList hideOzClasses:aBool.

o  hideOzFunctions
^ tagList hideOzFunctions

o  hideOzFunctions: aBool
tagList hideOzFunctions:aBool.

o  hideOzMethods
^ tagList hideOzMethods

o  hideOzMethods: aBool
tagList hideOzMethods:aBool.

o  hidePackages

o  hidePackages: aBool

o  hidePythonClasses
^ tagList hidePythonClasses

o  hidePythonClasses: aBool
tagList hidePythonClasses:aBool.

o  hidePythonFunctions
^ tagList hidePythonFunctions

o  hidePythonFunctions: aBool
tagList hidePythonFunctions:aBool.

o  hidePythonMethods
^ tagList hidePythonMethods

o  hidePythonMethods: aBool
tagList hidePythonMethods:aBool.

o  hideStatic

o  hideStatic: aBool

o  hideStructMembers

o  hideStructMembers: aBool

o  hideStructures

o  hideStructures: aBool

o  hideTextLabels

o  hideTextLabels: aBool

o  hideTypedefs

o  hideTypedefs: aBool

o  hideVariables

o  hideVariables: aBool

o  javaClassesAndMethodsOnly
^ tagList javaClassesAndMethodsOnly

o  javaClassesAndMethodsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList javaClassesAndMethodsOnly:aBool.

o  javaClassesOnly
^ tagList javaClassesOnly

o  javaClassesOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList javaClassesOnly:aBool.

o  javaMethodsOnly
^ tagList javaMethodsOnly

o  javaMethodsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList javaMethodsOnly:aBool.

o  luaFunctionsOnly
^ tagList luaFunctionsOnly

o  luaFunctionsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList luaFunctionsOnly:aBool.

o  macrosOnly

o  macrosOnly: aBool

o  methodsOnly

o  methodsOnly: aBool

o  pythonClassesOnly
^ tagList pythonClassesOnly

o  pythonClassesOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList pythonClassesOnly:aBool.

o  pythonFunctionsOnly
^ tagList pythonFunctionsOnly

o  pythonFunctionsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList pythonFunctionsOnly:aBool.

o  pythonMethodsOnly
^ tagList pythonMethodsOnly

o  pythonMethodsOnly: aBool
aBool ifTrue:[

Usage example(s):

tagList pythonMethodsOnly:aBool.

o  structsOnly

o  structsOnly: aBool

o  tagTypesPresent

o  tagTypesPresentHolder

o  targetsOnly

o  targetsOnly: aBool

o  typesOnly

o  typesOnly: aBool

o  variablesOnly

o  variablesOnly: aBool

aspects
o  editedFileHasAssemblerSuffix

o  editedFileHasCSuffix

o  editedFileHasDartSuffix

o  editedFileHasEiffelSuffix

o  editedFileHasFortranSuffix

o  editedFileHasHtmlSuffix

o  editedFileHasJavaScriptSuffix

o  editedFileHasJavaSuffix

o  editedFileHasLispSuffix

o  editedFileHasLuaSuffix

o  editedFileHasObjcSuffix

o  editedFileHasOzSuffix

o  editedFileHasPythonSuffix

o  editedFileHasRubySuffix

o  editedFileHasSmalltalkSuffix

o  editedFileHasTCLSuffix

o  editedFileIsMakefile

o  functionsOnlyHolder

o  remoteCtagsModel

o  sortIsByLineNumber

o  sortIsByName

o  sourceFilterHolder

o  structsOnlyHolder

o  structsOnlyVisibleHolder

o  tagFilterFieldVisibleHolder

o  tagFilterPatternHolder

o  tagList
returns the tagList

o  tagView
returns the widget which shows the tags

change & update
o  delayedEditedFileChanged
called when the current editing file has changed.
Update the valueHolders which keep track of the edited files type (i.e. language)

o  editedFileChanged

o  tagFilterChanged
self updateTagList

o  tagFilterVisibilityChanged
self windowGroup

o  update: something with: aparameter from: changedObject
(comment from inherited method)
dependent is notified of some change -
Default is to try update:with:

o  updateFileTypeHolders
called when the current editing file has changed.
Update the valueHolders which keep track of the edited files type (i.e. language)

o  updateForLine: lineNr
highlight the tag for a particular line in the edittext

o  updateForLine: lineNr filtering: tagFilterOrNil
highlight the tag for a particular line in the edittext
called via a hook via the masterapp from the editView...
The filter can be used eg. to find only function tags
(i.e. to ignore case and goto labels in C)

hooks for ccbrowser
o  buildTarget

o  tagForFunction: functionName

o  tagForMacro: typeName

o  tagForType: typeName

hooks for embedding
o  tagListGenerator: aBlockOrValueHolder
to use a tagsBrowser as a component in another application,
this hook allows for the tag list to be provided by that application.
If non-nil, it will be evaluated to generate the tagList instead of
reading the tags from the editedFile

menu actions
o  keepingSelectionDo: aBlock

o  middleButtonMenu

o  sortByLineNumber

o  sortByName
sortedByName:

o  updateTagList
regenerate tags

startup & release
o  assignFocusToTagFilterInputField
(self builder componentAt:#TagFilterInputField) takeFocus

o  cloneWith: anApplication
|browser|

o  initialize
(comment from inherited method)
nothing done here;
but can be redefined in concrete applications

o  postBuildWith: aBuilder
(comment from inherited method)
this is sent after an interface is built from a spec,
but only iff the appModel is not the same as the topView's app
(i.e. if it is not a build for the same appModel again).
In the other case, postBuildAsSubcanvasWith is invoked.
Can be redefined in subclasses for additional setup after
the view has been built, but not yet opened.

o  tagListSelectionChangedTo: idx


Private classes:

    TagView


ST/X 7.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Tue, 10 Dec 2024 09:26:35 GMT