class: Tools::MethodList
authorClaus Gittinger <cg@exept.de>
Fri, 22 Mar 2013 12:37:03 +0100
changeset 12505 4aa49cb74a22
parent 12504 abf0ab5f5941
child 12506 4a4124eb9bcb
class: Tools::MethodList changed: #listEntryForMethod:selector:class:showClass:showCategory:classFirst:suppressInheritanceInfo: #update:with:from: show breakpointed methods
Tools_MethodList.st
--- a/Tools_MethodList.st	Fri Mar 22 12:36:48 2013 +0100
+++ b/Tools_MethodList.st	Fri Mar 22 12:37:03 2013 +0100
@@ -763,7 +763,7 @@
 !
 
 update:something with:aParameter from:changedObject
-    |cls mthd mustFlushInheritanceInfo|
+    |cls sel mthd mustFlushInheritanceInfo|
 
     mustFlushInheritanceInfo := true.
 
@@ -817,12 +817,20 @@
             self window shown ifFalse:[
                 "JV@2011-11-17: Do not break the dependency here,
                  because then the window won't get updates once
-                 deiconified -> leads to confusing behavior (browser
-                 shows obsolete info)"
+                 deiconified -> leads to confusing behavior
+                 (browser shows obsolete info)"
                 "/changedObject removeDependent:self. "/ ?????
                 self invalidateList.
                 ^ self
             ].
+            sel := aParameter at:2.
+            mthd := cls compiledMethodAt:sel.
+            (mthd isWrapped or:[mthd isMethodWithBreakpoints]) ifTrue:[
+                (methodList includes:mthd originalMethod) ifTrue:[
+                    methodList replaceAll:mthd originalMethod with:mthd.
+                    lastSelectedMethods replaceAll:mthd originalMethod with:mthd.
+                ]
+            ].
             mustFlushInheritanceInfo := false.    
         ].
         something == #newClass ifTrue:[
@@ -1576,7 +1584,7 @@
     ].
 
     "/
-    "/ wrap icons (i.e. break- or trace points)
+    "/ wrap icons (i.e. break- or trace points on the method)
     "/ have higher prio ...
     "/
     (aMethod notNil and:[aMethod isWrapped]) ifTrue:[
@@ -1594,6 +1602,15 @@
         ].
     ].
 
+    "/
+    "/ breakpoint icons (i.e. break- or trace points inside)
+    "/
+    icn isNil ifTrue:[
+        (aMethod notNil and:[aMethod isMethodWithBreakpoints]) ifTrue:[
+            icn := self breakPointedIcon
+        ].
+    ].
+
     icn isNil ifTrue:[
         self showImageResourceMethodsImages value ~~ false ifTrue:[
             (aMethod hasImageResource) ifTrue:[
@@ -1797,9 +1814,10 @@
 !MethodList class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodList.st,v 1.75 2012-12-17 10:45:26 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodList.st,v 1.76 2013-03-22 11:37:03 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodList.st,v 1.75 2012-12-17 10:45:26 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_MethodList.st,v 1.76 2013-03-22 11:37:03 cg Exp $'
 ! !
+