InspectorView.st
changeset 17184 20a4ba15b83f
parent 17131 eccb24a60c2e
child 17218 95008a0da101
child 17427 b353390d1a23
--- a/InspectorView.st	Sun Dec 25 13:09:30 2016 +0100
+++ b/InspectorView.st	Sun Dec 25 17:30:59 2016 +0100
@@ -3250,9 +3250,9 @@
 
     d := self derivedFields.
     (d isDictionary) ifTrue:[
-        actionItems := d keys select:[:k | k startsWith:$!!] as:OrderedCollection .
-        valueItems := d keys select:[:k | k startsWith:$-] as:OrderedCollection.
-        otherItems := d keys select:[:k | (k startsWithAnyOf:#('!!' '-')) not] as:OrderedCollection.
+        actionItems := d keys select:[:k | k first == $!!] as:OrderedCollection .
+        valueItems := d keys select:[:k | '-¤' includes:k first] as:OrderedCollection.
+        otherItems := d keys select:[:k | ('!!-¤' includes: k first) not] as:OrderedCollection.
         ^ ((actionItems sort , valueItems sort) collect:[:k | (k copyTo:1),(k copyFrom:2) allItalic])
           ,
           otherItems sort
@@ -3861,20 +3861,24 @@
 valueAtLine:lineNr
     "helper - return the value of the selected entry"
 
-    |idx l val|
+    |idx lineEntry val|
 
     (self hasSelfEntry
     and:[lineNr == 1 or:[lineNr isNil]]) ifTrue:[
         ^ object
     ].
 
-    ((l := self listEntryAt:lineNr) startsWith:$-) ifTrue:[
-        (l ~= '-' 
-        and:[(l at:2) isSeparator not
-        and:[(l at:2) isDigit not "negative number"]]) ifTrue:[
-            ^ self valueForSpecialLine:l
+    ((lineEntry := self listEntryAt:lineNr) startsWith:$-) ifTrue:[
+        (lineEntry ~= '-' 
+          and:[(lineEntry at:2) isSeparator not
+          and:[(lineEntry at:2) isDigit not "negative number"]]
+        ) ifTrue:[
+            ^ self valueForSpecialLine:lineEntry
         ].
     ].
+    (lineEntry startsWith:$¤) ifTrue:[
+        ^ self valueForSpecialLine:lineEntry
+    ].
 
     "/ a named instVar ?
     idx := self instVarIndexForLine:lineNr.
@@ -3923,7 +3927,9 @@
         ^ self
     ].
 
-    ^ self "/ self selected - don't store
+    "/ self or special entry selected - don't store
+    self beep.
+    ^ self 
 !
 
 valueForSpecialLine:line
@@ -4086,7 +4092,7 @@
 showSelection:lineNr
     "user clicked on an instvar - show value in workspace"
 
-    |listSize val|
+    |listSize|
 
     listSize := listView list size.
     listSize == 0 ifTrue:[^ self].
@@ -4097,15 +4103,12 @@
         listView setSelection:lineNr.
     ].
 
-    self hasSelfEntry ifTrue:[
-        (self hasSelfEntry and:[lineNr == 1]) ifTrue:[
-            "selecting self also does a re-set, this allows updating the list"
-            self reinspect.
-        ].
+    (self hasSelfEntry and:[lineNr == 1]) ifTrue:[
+        "selecting self also does a re-set, this allows updating the list"
+        self reinspect.
     ].
     selectionIndex := selectedLine := lineNr.
-    val := self selection.
-    self showValue:val.
+    self showValue:(self selection).
 
     self setAcceptAction.