Merge jv
authorHG Automerge
Sat, 03 Dec 2016 09:29:15 +0000
branchjv
changeset 17140 c2a83a451e3b
parent 17139 bbe5b1ec2b88 (current diff)
parent 17131 eccb24a60c2e (diff)
child 17146 066dbce019f9
Merge
DebugView.st
InspectorView.st
Tools__Inspector2.st
extensions.st
--- a/DebugView.st	Thu Dec 01 09:29:26 2016 +0000
+++ b/DebugView.st	Sat Dec 03 09:29:15 2016 +0000
@@ -7190,8 +7190,8 @@
     |rcvr|
 
     ^ (selectedContext notNil
-        and:[ (rcvr := selectedContext receiver) isView
-              or:[ rcvr isKindOf: ApplicationModel ]])
+        and:[(rcvr := selectedContext receiver) isProtoObject not 
+        and:[rcvr isView or:[rcvr isKindOf: ApplicationModel]]])
     or:[
         self canBrowseProcessesApplication
     ]
--- a/InspectorView.st	Thu Dec 01 09:29:26 2016 +0000
+++ b/InspectorView.st	Sat Dec 03 09:29:15 2016 +0000
@@ -2896,7 +2896,7 @@
             s nextPutAll:' ...'.
             ^ s contents.
         ].
-        s := someValue classNameWithArticle.
+        s := someValue class nameWithArticle.
         displayStringMessage == #displayString ifTrue:[
             s := s , ' "error in displayString: ' , ex description , '"'
         ] ifFalse:[
@@ -2971,10 +2971,8 @@
         sel := self listEntryAt:idx.
         sel isNil ifTrue:[^ someValue].
 
-        object isProtoObject ifFalse:[
-            extraAttributes := object inspectorExtraAttributes.
-        ].
-        (extraAttributes notNil and:[extraAttributes includesKey:sel]) ifTrue:[
+        extraAttributes := self myObjectsInspectorExtraAttributes.
+        (extraAttributes includesKey:sel) ifTrue:[
             ^ someValue "(extraAttributes at:sel) value" printString
         ].
 
@@ -3273,18 +3271,7 @@
 !
 
 derivedFields
-    "the check below is not sufficient - if some proxy catches messages, for example.
-     Therefore, we do a manual lookup here:"
-
-    (object class whichClassIncludesSelector:#inspectorExtraAttributes) isNil ifTrue:[
-        ^ #()
-    ].
-    ^ [object inspectorExtraAttributes]
-                on: MessageNotUnderstood
-                do: [:ex | ex return: #() ]
-
-    "Created: / 17-07-2006 / 11:02:32 / cg"
-    "Modified: / 29-08-2006 / 13:03:31 / cg"
+    ^ self myObjectsInspectorExtraAttributes
 !
 
 extraNamedFieldNames
@@ -3638,6 +3625,21 @@
     "Created: / 16-05-2012 / 17:53:39 / cg"
 !
 
+myObjectsInspectorExtraAttributes
+
+    "the MessageNotUnderstood check below is not sufficient - if some proxy catches messages, for example.
+     Therefore, we do a manual lookup here:"
+    (object class canUnderstand:#inspectorExtraAttributes) ifFalse:[
+        ^ #()
+    ].
+    ^ [object inspectorExtraAttributes]
+                on: MessageNotUnderstood
+                do: [:ex | ex return: #() ]
+
+    "Created: / 17-07-2006 / 11:02:32 / cg"
+    "Modified: / 29-08-2006 / 13:03:31 / cg"
+!
+
 namedFieldAt:idx
     |val|
 
@@ -3927,8 +3929,8 @@
 valueForSpecialLine:line
     |idx fieldEntry extraAttributes fields|
 
-    extraAttributes := object inspectorExtraAttributes.
-    (extraAttributes notNil and:[ extraAttributes includesKey:line ]) ifTrue:[
+    extraAttributes := self myObjectsInspectorExtraAttributes.
+    (extraAttributes includesKey:line) ifTrue:[
         ^ (extraAttributes at:line) value
     ].
 
--- a/Tools__Inspector2.st	Thu Dec 01 09:29:26 2016 +0000
+++ b/Tools__Inspector2.st	Sat Dec 03 09:29:15 2016 +0000
@@ -1491,13 +1491,13 @@
     | tab |
 
     [
-        selector == #inspector2TabForBasicInspect ifTrue:[
-            "kludge for ProtoObject, which does not implement this selector
+        (selector == #inspector2TabForBasicInspect and:[theObject isProtoObject]) ifTrue:[
+            "kludge for ProtoObject, which does neither implement this selector
              nor #perform:"
             tab := Tools::Inspector2Tab new
                         priority: 90;
                         label:'Basic';
-                        view: (InspectorView new inspect:self);
+                        view: (InspectorView new inspect:theObject);
                         yourself
         ] ifFalse:[
             tab := theObject perform:selector.
--- a/extensions.st	Thu Dec 01 09:29:26 2016 +0000
+++ b/extensions.st	Sat Dec 03 09:29:15 2016 +0000
@@ -1915,11 +1915,7 @@
     "return an extra tab to be used inside an inspector"
 
     "Use Smalltalk>>at: to trick the dependency detector"
-    "/ why do we need this hack - the Tools::Inspector2Tab class and this
-    "/ extension are in the same package anyway?!!
-    ^(Smalltalk at: #'Tools::Inspector2Tab') 
-        ifNil:[self error:'Inspector2 not available!! Something is rotten...']
-        ifNotNil:[(Smalltalk at: #'Tools::Inspector2Tab') new]
+     ^ Smalltalk at: #'Tools::Inspector2Tab' new.
 ! !
 
 !OrderedCollection methodsFor:'misc ui support'!