# HG changeset patch # User Claus Gittinger # Date 1516907287 -3600 # Node ID c8e41a89bb1e541025a601f06926c5fe8e9872cc # Parent d67974637c74400d767bef72440010b5f5add880 #FEATURE by cg class: DictionaryInspectorView more filtering added: #doHideNonRefObjectReferences #doShowNonRefObjectReferences changed: #fieldMenu #indexListForNameSpace #initialize diff -r d67974637c74 -r c8e41a89bb1e DictionaryInspectorView.st --- a/DictionaryInspectorView.st Thu Jan 25 19:32:18 2018 +0100 +++ b/DictionaryInspectorView.st Thu Jan 25 20:08:07 2018 +0100 @@ -19,7 +19,7 @@ instanceVariableNames:'keys hideClassVars hideClasses hideUnloadedClasses hideAliases hideNilValues hideLiteralValues hideColorsAndImages hideSignalInstances hideEmptyCollections hideFreeSemaphores - hideCollectionsHoldingOnlyLiterals' + hideCollectionsHoldingOnlyLiterals hideNonRefObjectReferences' classVariableNames:'' poolDictionaries:'' category:'Interface-Inspector' @@ -96,6 +96,7 @@ hideEmptyCollections := false. hideFreeSemaphores := false. hideCollectionsHoldingOnlyLiterals := false. + hideNonRefObjectReferences := false. ! ! !DictionaryInspectorView methodsFor:'menu'! @@ -230,6 +231,15 @@ ('Hide Collections of Literals' doHideCollectionsHoldingOnlyLiterals ) ). ]. + hideNonRefObjectReferences == true ifTrue:[ + items := items , #( + ('Show References to Simple Objects' doShowNonRefObjectReferences ) + ). + ] ifFalse:[ + items := items , #( + ('Hide References to Simple Objects' doHideNonRefObjectReferences ) + ). + ]. ] ifFalse:[ items := #( @@ -397,6 +407,11 @@ self reinspect ! +doHideNonRefObjectReferences + hideNonRefObjectReferences := true. + self reinspect +! + doHideSignalInstances hideSignalInstances := true. self reinspect @@ -485,6 +500,11 @@ self reinspect ! +doShowNonRefObjectReferences + hideNonRefObjectReferences := false. + self reinspect +! + doShowSignalInstances hideSignalInstances := false. self reinspect @@ -677,8 +697,14 @@ ]. (hidden not and:[hideCollectionsHoldingOnlyLiterals == true]) ifTrue:[ o isNil ifTrue:[ o := inspectedObject at:k ifAbsent:nil ]. - (o isCollection and:[o conform:[:el | el isLiteral]]) ifTrue:[ - hidden := true + (o isCollection) ifTrue:[ + (o conform:[:el | el isLiteral]) ifTrue:[ + hidden := true + ] ifFalse:[ + (o conform:[:el | el isCollection and:[el conform:[:subEl | subEl isLiteral]]]) ifTrue:[ + hidden := true + ]. + ]. ]. ]. (hidden not and:[hideFreeSemaphores == true]) ifTrue:[ @@ -689,6 +715,15 @@ hidden := true ]. ]. + (hidden not and:[hideNonRefObjectReferences == true]) ifTrue:[ + o isNil ifTrue:[ o := inspectedObject at:k ifAbsent:nil ]. + ((o class == Point) + or:[(o class == Rectangle) + or:[(o class == Object)]] + ) ifTrue:[ + hidden := true + ]. + ]. hidden ifFalse:[keys add:k] ].