allow columns to consist of Text instances
authorClaus Gittinger <cg@exept.de>
Fri, 12 Jul 1996 23:33:53 +0200
changeset 211 f6e9378de69f
parent 210 1a3b06d71a03
child 212 b63b8bf60d88
allow columns to consist of Text instances
MCLEntry.st
MultiColListEntry.st
--- a/MCLEntry.st	Thu Jul 11 21:15:09 1996 +0200
+++ b/MCLEntry.st	Fri Jul 12 23:33:53 1996 +0200
@@ -17,7 +17,7 @@
 	category:'Views-Support'
 !
 
-!MultiColListEntry class methodsFor:'documentation'!
+!MultiColListEntry  class methodsFor:'documentation'!
 
 copyright
 "
@@ -266,7 +266,7 @@
 "
 ! !
 
-!MultiColListEntry class methodsFor:'instance creation'!
+!MultiColListEntry  class methodsFor:'instance creation'!
 
 fromString:aString
     ^ self fromString:aString separatedBy:Character space
@@ -388,34 +388,34 @@
 
     spec := tabSpec.
     spec isNil ifTrue:[
-	spec := self defaultTabSpec
+        spec := self defaultTabSpec
     ].
     xPos := x.
     prevString := ''.
     strings keysAndValuesDo:[:index :subString |
-	subString notNil ifTrue:[
-	    "
-	     find next tab
-	    "
-	    tabPos := spec positionOfTab:index forString:subString on:aGC.
-	    tabPos isNil ifTrue:[
-		"
-		 no tab - just continue where we are ...
-		"
-		xPos := xPos + (aGC font widthOf:prevString).
-	    ] ifFalse:[
-		xPos := tabPos + x.
-	    ].
-	    opaque ifTrue:[    
-		aGC displayOpaqueString:subString x:xPos y:y.
-	    ] ifFalse:[    
-		aGC displayString:subString x:xPos y:y.
-	    ].    
-	    prevString := subString.
-	]
+        subString notNil ifTrue:[
+            "
+             find next tab
+            "
+            tabPos := spec positionOfTab:index forString:subString on:aGC.
+            tabPos isNil ifTrue:[
+                "
+                 no tab - just continue where we are ...
+                "
+                xPos := xPos + (prevString widthOn:aGC). "/ (aGC font widthOf:prevString).
+            ] ifFalse:[
+                xPos := tabPos + x.
+            ].
+            opaque ifTrue:[    
+                aGC displayOpaqueString:subString x:xPos y:y.
+            ] ifFalse:[    
+                aGC displayString:subString x:xPos y:y.
+            ].    
+            prevString := subString.
+        ]
     ].
 
-    "Modified: 17.11.1995 / 12:21:18 / cg"
+    "Modified: 12.7.1996 / 23:03:19 / cg"
 ! !
 
 !MultiColListEntry methodsFor:'queries'!
@@ -447,17 +447,18 @@
             ] ifFalse:[
                 xPos := tabPos.
             ].
-            w := prevLen := aGC font widthOf:subString.
+            w := prevLen := subString widthOn:aGC. "/ aGC font widthOf:subString.
             xMax := xMax max:(xPos + w).
         ]
     ].
     ^ xMax
 
     "Created: 12.5.1996 / 20:38:38 / cg"
+    "Modified: 12.7.1996 / 23:01:51 / cg"
 ! !
 
-!MultiColListEntry class methodsFor:'documentation'!
+!MultiColListEntry  class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/Attic/MCLEntry.st,v 1.17 1996-05-12 19:07:06 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/Attic/MCLEntry.st,v 1.18 1996-07-12 21:33:53 cg Exp $'
 ! !
--- a/MultiColListEntry.st	Thu Jul 11 21:15:09 1996 +0200
+++ b/MultiColListEntry.st	Fri Jul 12 23:33:53 1996 +0200
@@ -17,7 +17,7 @@
 	category:'Views-Support'
 !
 
-!MultiColListEntry class methodsFor:'documentation'!
+!MultiColListEntry  class methodsFor:'documentation'!
 
 copyright
 "
@@ -266,7 +266,7 @@
 "
 ! !
 
-!MultiColListEntry class methodsFor:'instance creation'!
+!MultiColListEntry  class methodsFor:'instance creation'!
 
 fromString:aString
     ^ self fromString:aString separatedBy:Character space
@@ -388,34 +388,34 @@
 
     spec := tabSpec.
     spec isNil ifTrue:[
-	spec := self defaultTabSpec
+        spec := self defaultTabSpec
     ].
     xPos := x.
     prevString := ''.
     strings keysAndValuesDo:[:index :subString |
-	subString notNil ifTrue:[
-	    "
-	     find next tab
-	    "
-	    tabPos := spec positionOfTab:index forString:subString on:aGC.
-	    tabPos isNil ifTrue:[
-		"
-		 no tab - just continue where we are ...
-		"
-		xPos := xPos + (aGC font widthOf:prevString).
-	    ] ifFalse:[
-		xPos := tabPos + x.
-	    ].
-	    opaque ifTrue:[    
-		aGC displayOpaqueString:subString x:xPos y:y.
-	    ] ifFalse:[    
-		aGC displayString:subString x:xPos y:y.
-	    ].    
-	    prevString := subString.
-	]
+        subString notNil ifTrue:[
+            "
+             find next tab
+            "
+            tabPos := spec positionOfTab:index forString:subString on:aGC.
+            tabPos isNil ifTrue:[
+                "
+                 no tab - just continue where we are ...
+                "
+                xPos := xPos + (prevString widthOn:aGC). "/ (aGC font widthOf:prevString).
+            ] ifFalse:[
+                xPos := tabPos + x.
+            ].
+            opaque ifTrue:[    
+                aGC displayOpaqueString:subString x:xPos y:y.
+            ] ifFalse:[    
+                aGC displayString:subString x:xPos y:y.
+            ].    
+            prevString := subString.
+        ]
     ].
 
-    "Modified: 17.11.1995 / 12:21:18 / cg"
+    "Modified: 12.7.1996 / 23:03:19 / cg"
 ! !
 
 !MultiColListEntry methodsFor:'queries'!
@@ -447,17 +447,18 @@
             ] ifFalse:[
                 xPos := tabPos.
             ].
-            w := prevLen := aGC font widthOf:subString.
+            w := prevLen := subString widthOn:aGC. "/ aGC font widthOf:subString.
             xMax := xMax max:(xPos + w).
         ]
     ].
     ^ xMax
 
     "Created: 12.5.1996 / 20:38:38 / cg"
+    "Modified: 12.7.1996 / 23:01:51 / cg"
 ! !
 
-!MultiColListEntry class methodsFor:'documentation'!
+!MultiColListEntry  class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/MultiColListEntry.st,v 1.17 1996-05-12 19:07:06 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/MultiColListEntry.st,v 1.18 1996-07-12 21:33:53 cg Exp $'
 ! !