changed:
authorClaus Gittinger <cg@exept.de>
Wed, 20 Jul 2011 20:19:03 +0200
changeset 10367 e5fdd1e9e79a
parent 10366 381d075b9370
child 10368 0f22567c01c2
changed: #delayedUpdate:with:from: #update:with:from: don't push another invalidateList event, if the list is already invalid (should help when many small changes arrice quickly, as when doing coverage analysis runs)
Tools_ClassList.st
--- a/Tools_ClassList.st	Wed Jul 20 20:19:00 2011 +0200
+++ b/Tools_ClassList.st	Wed Jul 20 20:19:03 2011 +0200
@@ -805,7 +805,7 @@
 !
 
 update:something with:aParameter from:changedObject
-    |cls sel newMethod oldMethod idx classListValue|
+    |cls sel mthd newMethod oldMethod idx classListValue|
 
     self slaveMode value == true ifTrue:[
         something == #methodInClass ifTrue:[ ^ self ].
@@ -829,6 +829,22 @@
         something == #methodTrap ifTrue:[
             ^ self
         ].
+        something == #methodCoverageInfo ifTrue:[
+            mthd := aParameter.
+            listValid == true ifTrue:[
+                cls := mthd mclass.
+                cls notNil ifTrue:[
+                    classListValue size > 0 ifTrue:[
+                        ((classListValue includesIdentical:cls theNonMetaclass)
+                        or:[(classListValue includesIdentical:cls theMetaclass)]) ifTrue:[
+                            listValid := false.
+                            self enqueueDelayedUpdateList
+                        ]
+                    ]
+                ].
+            ].
+            ^ self
+        ].
         something == #lastTestRunResult ifTrue:[
             cls := aParameter at:1.
             sel := aParameter at:2.
@@ -910,7 +926,7 @@
 
     super update:something with:aParameter from:changedObject
 
-    "Modified: / 04-07-2011 / 19:06:47 / cg"
+    "Modified: / 20-07-2011 / 18:48:30 / cg"
 ! !
 
 !ClassList methodsFor:'drag & drop'!
@@ -1899,5 +1915,5 @@
 !ClassList class methodsFor:'documentation'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassList.st,v 1.53 2011-07-06 18:13:59 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_ClassList.st,v 1.54 2011-07-20 18:19:03 cg Exp $'
 ! !