ListView.st
changeset 5372 4dd658134d1d
parent 5369 6bddfe83bab9
child 5386 26b17b83a19b
child 5392 ea4f821a6c38
--- a/ListView.st	Thu Jul 09 10:14:33 2015 +0200
+++ b/ListView.st	Sun Jul 12 10:29:26 2015 +0200
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
@@ -1956,14 +1958,19 @@
      given x position in fg/bg. Clears the whole line before drawing the string.
      This is a low level entry; not meant for public use."
 
-    |y l|
+    |y l halfSpacing extraBelow|
 
     y := self yOfVisibleLine:visLineNr.
     backgroundAlreadyClearedColor == bg ifFalse:[
         self paint:bg.
-        self fillRectangleX:margin y:y - (lineSpacing//2)
+        halfSpacing := (lineSpacing//2).
+        extraBelow := 0.
+        self highlightLineSpacing ifTrue:[
+            extraBelow := halfSpacing.
+        ].
+        self fillRectangleX:margin y:y - halfSpacing
                       width:(width - (2 * margin))
-                     height:fontHeight.
+                     height:fontHeight+extraBelow.
     ].
     line notNil ifTrue:[
         self paint:fg on:bg.
@@ -1977,7 +1984,7 @@
             l := line
         ].
         self displayOpaqueString:l x:x y:(y + fontAscent)
-    ]
+    ].
 
     "Modified: / 15.12.1999 / 23:19:46 / cg"
 !
@@ -2949,6 +2956,14 @@
     ].
 !
 
+highlightLineSpacing
+    "true if the spacing between lines is to be drawn with selected color,
+     false if it remains white.
+     false for selection in list views; true for edit/text views"
+
+    ^ true
+!
+
 line:line withoutEmphasis:emphasisToRemove
     (line notNil
     and:[line isString]) ifTrue:[