# HG changeset patch # User Claus Gittinger # Date 860004639 -7200 # Node ID 2bf89d832d581db98f794659c54910179430bdcf # Parent 7c2a921ae46bab5ade6d40f372295ed7b87d44b3 checkes for lost-view bug diff -r 7c2a921ae46b -r 2bf89d832d58 DevWorkst.st --- a/DevWorkst.st Wed Apr 02 15:50:26 1997 +0200 +++ b/DevWorkst.st Wed Apr 02 20:10:39 1997 +0200 @@ -4777,7 +4777,12 @@ ] ifFalse:[ freeIdx := knownViews identityIndexOf:nil. freeIdx == 0 ifTrue:[ - freeIdx := knownViews identityIndexOf:0 + freeIdx := knownViews identityIndexOf:0. + [freeIdx ~~ 0 + and:[(knownIds at:freeIdx) notNil]] whileTrue:[ + 'XXX ' print. (knownIds at:freeIdx) displayString printCR. + freeIdx := knownViews identityIndexOf:0 startingAt:(freeIdx + 1). + ]. ]. ]. @@ -4805,7 +4810,26 @@ "/ self startDispatch "/ ]. - "Modified: 1.3.1997 / 20:00:08 / cg" + "Modified: 2.4.1997 / 19:15:46 / cg" +! + +checkKnownViewId:drawableId + |idx| + + idx := idToTableIndexMapping at:drawableId ifAbsent:0. + idx == 0 ifTrue:[ + idx := knownIds indexOf:drawableId + ]. + idx ~~ 0 ifTrue:[ + (knownViews at:idx) ~~ 0 ifTrue:[ + 'drawable ' print. drawableId displayString print. + ' still known as ' print. + (knownViews at:idx) printCR + ] + ]. + + "Created: 2.4.1997 / 19:04:27 / cg" + "Modified: 2.4.1997 / 19:49:15 / cg" ! removeKnownView:aView withId:aViewId @@ -4894,38 +4918,6 @@ "Modified: 27.3.1997 / 17:13:28 / cg" ! -update:something with:aParameter from:changedObject - "this is obsolete - it will be removed" - - |id| - - "/ no longer called for ... - "/ - something == knownViews ifTrue:[ - " - some view was garbage-collected; - destroy it ... - " - 1 to:knownViews size do:[:idx | - |v| - - ((v := knownViews at:idx) isNil - or:[v == 0]) ifTrue:[ - id := knownIds at:idx. - id notNil ifTrue:[ - idToTableIndexMapping notNil ifTrue:[ - idToTableIndexMapping removeKey:id. - ]. - knownIds at:idx put:nil. - ]. - ] - ]. - ] - - "Created: 21.6.1996 / 19:21:16 / cg" - "Modified: 1.3.1997 / 19:59:32 / cg" -! - viewFromId:aWindowID "given an Id, return the corresponding view." @@ -5237,6 +5229,6 @@ !DeviceWorkstation class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libview/Attic/DevWorkst.st,v 1.195 1997-03-28 15:15:33 cg Exp $' + ^ '$Header: /cvs/stx/stx/libview/Attic/DevWorkst.st,v 1.196 1997-04-02 18:10:39 cg Exp $' ! ! DeviceWorkstation initialize! diff -r 7c2a921ae46b -r 2bf89d832d58 DeviceWorkstation.st --- a/DeviceWorkstation.st Wed Apr 02 15:50:26 1997 +0200 +++ b/DeviceWorkstation.st Wed Apr 02 20:10:39 1997 +0200 @@ -4777,7 +4777,12 @@ ] ifFalse:[ freeIdx := knownViews identityIndexOf:nil. freeIdx == 0 ifTrue:[ - freeIdx := knownViews identityIndexOf:0 + freeIdx := knownViews identityIndexOf:0. + [freeIdx ~~ 0 + and:[(knownIds at:freeIdx) notNil]] whileTrue:[ + 'XXX ' print. (knownIds at:freeIdx) displayString printCR. + freeIdx := knownViews identityIndexOf:0 startingAt:(freeIdx + 1). + ]. ]. ]. @@ -4805,7 +4810,26 @@ "/ self startDispatch "/ ]. - "Modified: 1.3.1997 / 20:00:08 / cg" + "Modified: 2.4.1997 / 19:15:46 / cg" +! + +checkKnownViewId:drawableId + |idx| + + idx := idToTableIndexMapping at:drawableId ifAbsent:0. + idx == 0 ifTrue:[ + idx := knownIds indexOf:drawableId + ]. + idx ~~ 0 ifTrue:[ + (knownViews at:idx) ~~ 0 ifTrue:[ + 'drawable ' print. drawableId displayString print. + ' still known as ' print. + (knownViews at:idx) printCR + ] + ]. + + "Created: 2.4.1997 / 19:04:27 / cg" + "Modified: 2.4.1997 / 19:49:15 / cg" ! removeKnownView:aView withId:aViewId @@ -4894,38 +4918,6 @@ "Modified: 27.3.1997 / 17:13:28 / cg" ! -update:something with:aParameter from:changedObject - "this is obsolete - it will be removed" - - |id| - - "/ no longer called for ... - "/ - something == knownViews ifTrue:[ - " - some view was garbage-collected; - destroy it ... - " - 1 to:knownViews size do:[:idx | - |v| - - ((v := knownViews at:idx) isNil - or:[v == 0]) ifTrue:[ - id := knownIds at:idx. - id notNil ifTrue:[ - idToTableIndexMapping notNil ifTrue:[ - idToTableIndexMapping removeKey:id. - ]. - knownIds at:idx put:nil. - ]. - ] - ]. - ] - - "Created: 21.6.1996 / 19:21:16 / cg" - "Modified: 1.3.1997 / 19:59:32 / cg" -! - viewFromId:aWindowID "given an Id, return the corresponding view." @@ -5237,6 +5229,6 @@ !DeviceWorkstation class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.195 1997-03-28 15:15:33 cg Exp $' + ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.196 1997-04-02 18:10:39 cg Exp $' ! ! DeviceWorkstation initialize!