Tools__TagsBrowser.st
changeset 14544 fe117e846d33
parent 14543 779a760b08a1
child 14546 7c54bb39884a
--- a/Tools__TagsBrowser.st	Mon Jun 23 15:07:11 2014 +0200
+++ b/Tools__TagsBrowser.st	Mon Jun 23 17:12:24 2014 +0200
@@ -73,13 +73,16 @@
 'Sort by line number'
 
 #functionsOnly
-'Show only Functions (see Popup Menu for more Options)'
+'Show only Functions (see popup menu for more Options)'
+
+#structsOnly
+'Show only Structures (see popup menu for more Options)'
 
 #toggleTagFilter
-'Toggle Tag Filter'
+'Toggle name filter'
 
 #tagFilter
-'Pattern to Filter Tags'
+'Pattern to filter tags by name'
 
     )
 
@@ -1244,10 +1247,11 @@
             labelImage: (ResourceRetriever ToolbarIconLibrary functionsOnly16x16Icon)
           )
          (MenuItem
-            activeHelpKey: functionsOnly
+            activeHelpKey: structsOnly
             label: 'StructsOnly'
             itemValue: structsOnly:
             isButton: true
+            isVisible: structsOnlyVisibleHolder
             indication: structsOnlyHolder
             labelImage: (ResourceRetriever ToolbarIconLibrary structsOnly16x16Icon)
           )
@@ -1451,7 +1455,8 @@
 functionsOnly:aBool
     self functionsOnlyHolder value:aBool.
     aBool ifTrue:[
-	tagList hideFunctions:false.
+        self structsOnlyHolder value:false.
+        tagList hideFunctions:false.
     ].
     tagList functionsOnly:aBool.
     self updateTagList
@@ -1950,10 +1955,13 @@
 !
 
 structsOnly:aBool
+    self structsOnlyHolder value:aBool.
+    aBool ifTrue:[
+        self functionsOnlyHolder value:false.
+        tagList hideStructures:false.
+    ].
     tagList structsOnly:aBool.
     self updateTagList
-
-    "Created: / 25-06-2010 / 10:54:52 / cg"
 !
 
 tagTypesPresent
@@ -2180,6 +2188,14 @@
     "Created: / 03-08-2011 / 11:17:52 / cg"
 !
 
+structsOnlyHolder
+    ^ builder booleanValueAspectFor: #structsOnly
+!
+
+structsOnlyVisibleHolder
+    ^ builder booleanValueAspectFor: #structsOnlyVisible
+!
+
 tagFilterFieldVisibleHolder
     |holder|
 
@@ -2282,33 +2298,34 @@
 
     mime := TagList tagMimeTypeForFile:edFile.
 
-	 "/ valueHolder                 mime(s)
+         "/ valueHolder                 mime(s)
     #(
-	  (editedFileHasJavaSuffix      ('text/java' 'application/x-java-source'))
-	  (editedFileHasJavaScriptSuffix ('text/javaScript' 'text/javascript' 'application/x-javascript' 'application/x-javascript-source') )
-	  (editedFileHasDartSuffix      ('text/dart' 'application/x-dart' 'application/x-dart-source') )
-	  (editedFileHasCSuffix         ('text/c' 'application/x-c-source'))
-	  (editedFileHasEiffelSuffix    ('text/eiffel' 'application/x-eiffel-source'))
-	  (editedFileHasFortranSuffix   ('text/fortran' 'application/x-fortran-source'))
-	  (editedFileHasPythonSuffix    ('text/python' 'application/x-python-source'))
-	  (editedFileHasOzSuffix        ('text/oz' 'application/x-oz-source'))
-	  (editedFileHasLuaSuffix       ('text/lua' 'application/x-lua-source'))
-	  (editedFileHasLispSuffix      ('text/lisp' 'text/lisp-arc' 'text/scheme' 'application/x-lisp-source' 'application/x-scheme-source') )
-	  (editedFileHasSmalltalkSuffix ('text/smalltalk' 'application/x-smalltalk-source'))
-	  (editedFileHasTCLSuffix       ('text/tcl' 'application/x-tcl-source') )
-	  (editedFileHasAssemblerSuffix ('text/asm' 'application/x-assembler-source'))
-	  (editedFileIsMakefile         'text/make')
-	  (editedFileHasRubySuffix      ('text/ruby' 'application/x-ruby-source'))
+          (editedFileHasJavaSuffix      ('text/java' 'application/x-java-source'))
+          (editedFileHasJavaScriptSuffix ('text/javaScript' 'text/javascript' 'application/x-javascript' 'application/x-javascript-source') )
+          (editedFileHasDartSuffix      ('text/dart' 'application/x-dart' 'application/x-dart-source') )
+          (editedFileHasCSuffix         ('text/c' 'application/x-c-source'))
+          (editedFileHasEiffelSuffix    ('text/eiffel' 'application/x-eiffel-source'))
+          (editedFileHasFortranSuffix   ('text/fortran' 'application/x-fortran-source'))
+          (editedFileHasPythonSuffix    ('text/python' 'application/x-python-source'))
+          (editedFileHasOzSuffix        ('text/oz' 'application/x-oz-source'))
+          (editedFileHasLuaSuffix       ('text/lua' 'application/x-lua-source'))
+          (editedFileHasLispSuffix      ('text/lisp' 'text/lisp-arc' 'text/scheme' 'application/x-lisp-source' 'application/x-scheme-source') )
+          (editedFileHasSmalltalkSuffix ('text/smalltalk' 'application/x-smalltalk-source'))
+          (editedFileHasTCLSuffix       ('text/tcl' 'application/x-tcl-source') )
+          (editedFileHasAssemblerSuffix ('text/asm' 'application/x-assembler-source'))
+          (editedFileIsMakefile         'text/make')
+          (editedFileHasRubySuffix      ('text/ruby' 'application/x-ruby-source'))
     ) pairsDo:[:holderName :mimeTypeOrTypes |
-	|holder|
-
-	holder := self perform:holderName.
-	mimeTypeOrTypes isString ifTrue:[
-	    holder value:(mime = mimeTypeOrTypes)
-	] ifFalse:[
-	    holder value:(mimeTypeOrTypes includes:mime)
-	].
+        |holder|
+
+        holder := self perform:holderName.
+        mimeTypeOrTypes isString ifTrue:[
+            holder value:(mime = mimeTypeOrTypes)
+        ] ifFalse:[
+            holder value:(mimeTypeOrTypes includes:mime)
+        ].
     ].
+    self structsOnlyVisibleHolder value:(self editedFileHasCSuffix value).
 
     "Modified: / 21-08-2012 / 20:54:08 / cg"
 !
@@ -2824,14 +2841,14 @@
 !TagsBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__TagsBrowser.st,v 1.53 2014-06-23 13:07:11 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__TagsBrowser.st,v 1.54 2014-06-23 15:12:24 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__TagsBrowser.st,v 1.53 2014-06-23 13:07:11 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__TagsBrowser.st,v 1.54 2014-06-23 15:12:24 cg Exp $'
 !
 
 version_SVN
-    ^ '$Id: Tools__TagsBrowser.st,v 1.53 2014-06-23 13:07:11 cg Exp $'
+    ^ '$Id: Tools__TagsBrowser.st,v 1.54 2014-06-23 15:12:24 cg Exp $'
 ! !