Merge jv
authorJan Vrany <jan.vrany@fit.cvut.cz>
Fri, 29 Jul 2016 22:05:57 +0100
branchjv
changeset 5810 ff31884ac479
parent 5809 a5cecde02b21 (current diff)
parent 5807 fdfb746e2499 (diff)
child 5812 c80f679b5b46
Merge
EditTextView.st
ListView.st
Make.proto
SelectionInListView.st
TextCollector.st
TextView.st
bc.mak
mingwmake.bat
vcmake.bat
--- a/Button.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/Button.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
@@ -1916,7 +1918,7 @@
     buttonStyle := styleSheet at:'button.style' default:nil.
     ((self class == Button) and:[ buttonStyle == #MacOSX ]) ifTrue:[
         borderStyle := styleSheet at:'button.borderStyle'.
-        self border:( (Smalltalk at:borderStyle asSymbol) color:Color black ).
+        self border:( (Smalltalk at:borderStyle asSymbol) color:self blackColor).
         self viewBackground:(View defaultViewBackgroundColor).
     ].
 
--- a/CheckToggle.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/CheckToggle.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1991 by Claus Gittinger
 	      All Rights Reserved
@@ -722,7 +724,7 @@
 drawEdges
 
     self isFlat ifTrue:[
-        self paint: Color black.
+        self paint:self blackColor.
         self displayRectangleX:0 y:0 width:width height:height.
         ^self.
     ].
--- a/EditTextView.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/EditTextView.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
               All Rights Reserved
@@ -6327,8 +6329,8 @@
 
     aBoolean ifTrue:[
         learnedMacro := OrderedCollection new.
-        fg := Color white.
-        bg := Color black.
+        fg := self whiteColor.
+        bg := self blackColor.
     ] ifFalse:[
         cursorFgColor := fg := (DefaultCursorForegroundColor ? bgColor).
         cursorBgColor := bg := (DefaultCursorBackgroundColor ? fgColor).
--- a/EditTextViewCompletionSupport.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/EditTextViewCompletionSupport.st	Fri Jul 29 22:05:57 2016 +0100
@@ -18,7 +18,7 @@
     Individual completion engines may create a subclass of 
     EditTextCompletionSupport and customize it.
 
-    Basucally, they have to implement #computeCompletions
+    Basically, they have to implement #computeCompletions
 
     [author:]
         Claus Gittinger
--- a/ListView.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/ListView.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
@@ -87,10 +89,10 @@
     (especially: attributed Text and labelAndIcon-like entities).
 
     The internal version of the text has tabulators expanded to blanks. ListView is not prepared
-    to deal with them. When text is exchanged with an external medium (i.e. reading/writing files), 
-    these are expanded/compressed assuming a tab-setting of 8. 
+    to deal with them. When text is exchanged with an external medium (i.e. reading/writing files),
+    these are expanded/compressed assuming a tab-setting of 8.
     This is done independent of the user's tab setting, which is used ONLY for positioning,
-    while the text is edited. 
+    while the text is edited.
     Thus, even if the tab setting is multiple of 4's, tabs are
     written in multiples of 8 when the text is saved. Since this is the default on all ascii
     terminals and printers, this assures that the text looks correctly indented when finally printed.
@@ -104,11 +106,11 @@
     views. The general scrolling code (in View) uses the transformation for transparent scrolling
     using the viewOrigin (transparent means, that the code does not need to know - it simply draws
     as if all of the text was visible).
-    Here in ListView, the transformation is not used, instead it is done again, and different, 
+    Here in ListView, the transformation is not used, instead it is done again, and different,
     by keeping the firstLineShown (i.e. vertical offset) and leftOffset (horizontal offset).
-    Even worse: the firstLineShown is a line-index, the most annoying consequence of this is that 
-    scrolling is done by lines here, whereas it is done in pixels in the View class. 
-    Thus, be very careful, when changing things (better: don't touch it ;-). 
+    Even worse: the firstLineShown is a line-index, the most annoying consequence of this is that
+    scrolling is done by lines here, whereas it is done in pixels in the View class.
+    Thus, be very careful, when changing things (better: don't touch it ;-).
     Also, the viewOrigin variable is only valid for the x coordinate. The viewOrigin's y is always 0 !!
 
     Also, all controller functionality is completely performed by the listView
@@ -145,15 +147,15 @@
     [Instance variables:]
 
       list                <aCollection>           the text strings, a collection of lines.
-                                                  Nils may be used for empty lines.
+						  Nils may be used for empty lines.
 
       firstLineShown      <Number>                the index of the 1st visible line (1 ..)
       leftOffset          <Number>                left offset for horizontal scroll
 
       nFullLinesShown     <Number>                the number of unclipped lines in visible area
-                                                  (internal; updated on size changes)
+						  (internal; updated on size changes)
       nLinesShown         <Number>                the number of lines in visible area, incl. partial
-                                                  (internal; updated on size changes)
+						  (internal; updated on size changes)
 
       fgColor             <Color>                 color to draw characters
       bgColor             <Color>                 the background
@@ -171,39 +173,39 @@
       fontWidth           <Number>                width of space (internal)
       lineSpacing         <Number>                pixels between lines
       lastSearchPattern   <String>                last pattern for searching
-                                                  (kept to provide a default for next search)
+						  (kept to provide a default for next search)
       lastSearchIgnoredCase   <Boolean>           last search ignored case
-                                                  (kept to provide a default for next search)
+						  (kept to provide a default for next search)
       wordCheck           <Block>                 rule used for check for word boundaries in word select
-                                                  The default rule is to return true for alphaNumeric characters.
-                                                  (can be changed to allow for underscore and other
-                                                   characters to be treated as alphaCharacters)
+						  The default rule is to return true for alphaNumeric characters.
+						  (can be changed to allow for underscore and other
+						   characters to be treated as alphaCharacters)
 
       autoScrollBlock     <Block>                 block installed as timeoutBlock when doing an
-                                                  autoScroll (internal)
+						  autoScroll (internal)
       autoScrollDeltaT                            computed scroll time delta in seconds (internal)
 
       includesNonStrings                          cached flag if any non-strings are in list
       widthOfWidestLine                           cached width of widest line
       listMsg                                     if view has a model and listMsg is non-nil,
-                                                  this is sent to the model to acquired a new contents
-                                                  whenever a change of the aspect  (aspectMsg) occurs.
+						  this is sent to the model to acquired a new contents
+						  whenever a change of the aspect  (aspectMsg) occurs.
 
       viewOrigin                                  the current origin
 
       backgroundAlreadyClearedColor               internal; speedup by avoiding
-                                                  multiple fills when drawing
-                                                  internal lines
+						  multiple fills when drawing
+						  internal lines
 
       scrollWhenUpdating
-                                <Symbol>        defines how the view is scrolled if the
-                                                model changes its value by some outside activity
-                                                (i.e. not by user input).
-                                                Can be one of:
-                                                    #keep / nil     -> stay unchanged
-                                                    #endOfText      -> scroll to the end
-                                                    #beginOfText    -> scroll to the top
-                                                The default is #beginOfText (i.e. scroll to top).
+				<Symbol>        defines how the view is scrolled if the
+						model changes its value by some outside activity
+						(i.e. not by user input).
+						Can be one of:
+						    #keep / nil     -> stay unchanged
+						    #endOfText      -> scroll to the end
+						    #beginOfText    -> scroll to the top
+						The default is #beginOfText (i.e. scroll to top).
 
     [StyleSheet parameters:]
 
@@ -213,10 +215,10 @@
       textTabPositions                            defaults to #(1 9 17 25 ...)
 
     [author:]
-        Claus Gittinger
+	Claus Gittinger
 
     [see also:]
-        TextView EditTextView
+	TextView EditTextView
 
 "
 !
@@ -229,215 +231,215 @@
     anyway, here are a few examples:
 
      basic simple setup:
-                                                                        [exBegin]
-        |top l|
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        l list:#('one' 'two' 'three').
-
-        top open
-                                                                        [exEnd]
+									[exBegin]
+	|top l|
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	l list:#('one' 'two' 'three').
+
+	top open
+									[exEnd]
 
 
 
       specifying textMargins (these have NOTHING to do with the viewInset):
-                                                                        [exBegin]
-        |top l|
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        l list:#('one' 'two' 'three').
-        l topMargin:10.
-        l leftMargin:20.
-
-        top open
-                                                                        [exEnd]
+									[exBegin]
+	|top l|
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	l list:#('one' 'two' 'three').
+	l topMargin:10.
+	l leftMargin:20.
+
+	top open
+									[exEnd]
 
 
 
       globally set the fg/bg colors:
-                                                                        [exBegin]
-        |top l|
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        l list:#('one' 'two' 'three').
-        l foregroundColor:(Color white).
-        l backgroundColor:(Color blue).
-
-        top open
-                                                                        [exEnd]
+									[exBegin]
+	|top l|
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	l list:#('one' 'two' 'three').
+	l foregroundColor:(Color white).
+	l backgroundColor:(Color blue).
+
+	top open
+									[exEnd]
 
 
 
       non-string (text) entries:
-                                                                        [exBegin]
-        |top list l|
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        list := #('all' 'of' 'your' 'preferred' 'colors')
-                with:#(red green blue 'orange' cyan)
-                collect:[:s :clr |
-                            Text string:s
-                                 emphasis:(Array with:#bold
-                                                 with:(#color->(Color name:clr))) ].
-        l list:list.
-
-        top open
-                                                                        [exEnd]
+									[exBegin]
+	|top list l|
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	list := #('all' 'of' 'your' 'preferred' 'colors')
+		with:#(red green blue 'orange' cyan)
+		collect:[:s :clr |
+			    Text string:s
+				 emphasis:(Array with:#bold
+						 with:(#color->(Color name:clr))) ].
+	l list:list.
+
+	top open
+									[exEnd]
 
 
 
       generic non-string entries:
       (notice: ColoredListEntry is obsoleted by Text)
-                                                                        [exBegin]
-        |top list l|
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        list := #('all' 'of' 'your' 'preferred' 'colors')
-                with:#(red green blue 'orange' cyan)
-                collect:[:s :clr | ColoredListEntry string:s color:(Color name:clr) ].
-        l list:list.
-
-        top open
-                                                                        [exEnd]
+									[exBegin]
+	|top list l|
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	list := #('all' 'of' 'your' 'preferred' 'colors')
+		with:#(red green blue 'orange' cyan)
+		collect:[:s :clr | ColoredListEntry string:s color:(Color name:clr) ].
+	l list:list.
+
+	top open
+									[exEnd]
 
 
 
       using a model (default listMessage is aspectMessage):
-                                                                        [exBegin]
-        |top model l theModelsText|
-
-        model := Plug new.
-        model respondTo:#modelsAspect
-                   with:[ theModelsText ].
-
-        top := StandardSystemView new.
-        top extent:100@200.
-
-        l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
-        l model:model.
-        l aspect:#modelsAspect.
-
-        top open.
-
-        Delay waitForSeconds:3.
-        theModelsText := #('foo' 'bar' 'baz').
-        model changed:#modelsAspect.
-                                                                        [exEnd]
+									[exBegin]
+	|top model l theModelsText|
+
+	model := Plug new.
+	model respondTo:#modelsAspect
+		   with:[ theModelsText ].
+
+	top := StandardSystemView new.
+	top extent:100@200.
+
+	l := ListView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:top.
+	l model:model.
+	l aspect:#modelsAspect.
+
+	top open.
+
+	Delay waitForSeconds:3.
+	theModelsText := #('foo' 'bar' 'baz').
+	model changed:#modelsAspect.
+									[exEnd]
 
 
 
       using a model with different aspects
       for two listViews:
-                                                                        [exBegin]
-        |top model l1 l2 plainText|
-
-        plainText := #('').
-
-        model := Plug new.
-        model respondTo:#modelsUppercaseText
-                   with:[ plainText asStringCollection
-                              collect:[:l | l asUppercase]].
-        model respondTo:#modelsLowercaseText
-                   with:[ plainText asStringCollection
-                              collect:[:l | l asLowercase]].
-
-        top := StandardSystemView extent:200@200.
-
-        l1 := ListView origin:0.0 @ 0.0 corner:1.0 @ 0.5 in:top.
-        l1 model:model.
-        l1 aspect:#modelsAspect.
-        l1 listMessage:#modelsUppercaseText.
-
-        l2 := ListView origin:0.0 @ 0.5 corner:1.0 @ 1.0 in:top.
-        l2 model:model.
-        l2 aspect:#modelsAspect.
-        l2 listMessage:#modelsLowercaseText.
-
-        top open.
-
-        Delay waitForSeconds:3.
-        plainText := #('foo' 'bar' 'baz').
-        model changed:#modelsAspect.
-                                                                        [exEnd]
+									[exBegin]
+	|top model l1 l2 plainText|
+
+	plainText := #('').
+
+	model := Plug new.
+	model respondTo:#modelsUppercaseText
+		   with:[ plainText asStringCollection
+			      collect:[:l | l asUppercase]].
+	model respondTo:#modelsLowercaseText
+		   with:[ plainText asStringCollection
+			      collect:[:l | l asLowercase]].
+
+	top := StandardSystemView extent:200@200.
+
+	l1 := ListView origin:0.0 @ 0.0 corner:1.0 @ 0.5 in:top.
+	l1 model:model.
+	l1 aspect:#modelsAspect.
+	l1 listMessage:#modelsUppercaseText.
+
+	l2 := ListView origin:0.0 @ 0.5 corner:1.0 @ 1.0 in:top.
+	l2 model:model.
+	l2 aspect:#modelsAspect.
+	l2 listMessage:#modelsLowercaseText.
+
+	top open.
+
+	Delay waitForSeconds:3.
+	plainText := #('foo' 'bar' 'baz').
+	model changed:#modelsAspect.
+									[exEnd]
 
       using a big list (100000 lines),
       wrapping in a ScrollableView:
-                                                                        [exBegin]
-        |bigList top lv|
-
-        bigList := (1 to:100000) collect:[:lineNr | 'List line Nr. ' , lineNr printString].
-        bigList at:10 put:('Some Text ' asText , 'with Bold part' allBold).
-        bigList at:20 put:('Some Text ' asText , 'with Italic part' allItalic).
-
-        top := StandardSystemView extent:200@200.
-
-        lv := HVScrollableView for:ListView in:top.
-        lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
-        lv list:bigList expandTabs:false scanForNonStrings:false includesNonStrings:false.
-
-        top open.
-                                                                        [exEnd]
+									[exBegin]
+	|bigList top lv|
+
+	bigList := (1 to:100000) collect:[:lineNr | 'List line Nr. ' , lineNr printString].
+	bigList at:10 put:('Some Text ' asText , 'with Bold part' allBold).
+	bigList at:20 put:('Some Text ' asText , 'with Italic part' allItalic).
+
+	top := StandardSystemView extent:200@200.
+
+	lv := HVScrollableView for:ListView in:top.
+	lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
+	lv list:bigList expandTabs:false scanForNonStrings:false includesNonStrings:false.
+
+	top open.
+									[exEnd]
 
       using a huge virtual list (1 mio simulated lines),
       wrapping in a ScrollableView:
-                                                                        [exBegin]
-        |virtualList top lv|
-
-        virtualList := Plug new.
-        virtualList inheritFrom:SequenceableCollection.
-        virtualList respondTo:#size with:[ 1000000 ].
-        virtualList respondTo:#at:  with:[:lineNr | 'List line Nr. ' , lineNr printString ].
-
-        top := StandardSystemView extent:200@200.
-
-        lv := ScrollableView for:ListView in:top.
-        lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
-        lv list:virtualList expandTabs:false scanForNonStrings:false includesNonStrings:false.
-
-        top open.
-                                                                        [exEnd]
+									[exBegin]
+	|virtualList top lv|
+
+	virtualList := Plug new.
+	virtualList inheritFrom:SequenceableCollection.
+	virtualList respondTo:#size with:[ 1000000 ].
+	virtualList respondTo:#at:  with:[:lineNr | 'List line Nr. ' , lineNr printString ].
+
+	top := StandardSystemView extent:200@200.
+
+	lv := ScrollableView for:ListView in:top.
+	lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
+	lv list:virtualList expandTabs:false scanForNonStrings:false includesNonStrings:false.
+
+	top open.
+									[exEnd]
 
 
       using a huge virtual array (1 mio simulated lines),
       wrapping in a ScrollableView.
       To simulate an expensive computation, a delay is planted into the line generator;
       Startup and display of page full of lines should not take longer than the number of lines shown:
-                                                                        [exBegin]
-        |virtualList top lv|
-
-        virtualList := VirtualArray new.
-        virtualList 
-            setSize:1000000; 
-            generator:[:index | Transcript showCR:index.
-                                Delay waitForSeconds:0.5.
-                                '%1 -> %2' bindWith:index with:index squared].
-
-        top := StandardSystemView extent:200@200.
-
-        lv := ScrollableView for:ListView in:top.
-        lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
-        lv expandTabsWhenUpdating:false.
-        lv checkLineEndConventionWhenUpdating:false.
-        lv checkedLinesForWidthOfContentsComputation:-1.
-        lv list:virtualList.
-
-        top open.
-                                                                        [exEnd]
+									[exBegin]
+	|virtualList top lv|
+
+	virtualList := VirtualArray new.
+	virtualList
+	    setSize:1000000;
+	    generator:[:index | Transcript showCR:index.
+				Delay waitForSeconds:0.5.
+				'%1 -> %2' bindWith:index with:index squared].
+
+	top := StandardSystemView extent:200@200.
+
+	lv := ScrollableView for:ListView in:top.
+	lv origin:0.0 @ 0.0 corner:1.0 @ 1.0.
+	lv expandTabsWhenUpdating:false.
+	lv checkLineEndConventionWhenUpdating:false.
+	lv checkedLinesForWidthOfContentsComputation:-1.
+	lv list:virtualList.
+
+	top open.
+									[exEnd]
 "
 ! !
 
@@ -499,8 +501,8 @@
     "extract values from the styleSheet and cache them in class variables"
 
     <resource: #style (#'text.foregroundColor' #'text.backgroundColor'
-                       #'text.tabPositions'
-                       #'text.font')>
+		       #'text.tabPositions'
+		       #'text.font')>
 
     DefaultForegroundColor := StyleSheet colorAt:'text.foregroundColor' default:Color black.
     DefaultBackgroundColor := StyleSheet colorAt:'text.backgroundColor' default:Color white.
@@ -596,14 +598,14 @@
 
 compareModelWhenUpdating
     "return the compare when updating behavior.
-     If true (the default), the list of lines as given due to a model update 
-     is processed and compared against the currently shown text. 
+     If true (the default), the list of lines as given due to a model update
+     is processed and compared against the currently shown text.
      If they are the same, no action is taken.
      This behavior is ok in 99.99% of all applications.
      However, you may turn this off iff:
-        - it is very expensive to process the list (for example, because the list
-          is defined by a virtual array, which computes the lines dynamically, on
-          the fly).
+	- it is very expensive to process the list (for example, because the list
+	  is defined by a virtual array, which computes the lines dynamically, on
+	  the fly).
      One use where this flag should be turned off is in the hex-memory display,
      which is able to simulate texts with millions of lines, but they are actually
      simulated by generating the presented lines dynamically, as they are displayed."
@@ -613,14 +615,14 @@
 
 compareModelWhenUpdating:aBoolean
     "define the compare when updating behavior.
-     If true (the default), the list of lines as given due to a model update 
-     is processed and compared against the currently shown text. 
+     If true (the default), the list of lines as given due to a model update
+     is processed and compared against the currently shown text.
      If they are the same, no action is taken.
      This behavior is ok in 99.99% of all applications.
      However, you may turn this off iff:
-        - it is very expensive to process the list (for example, because the list
-          is defined by a virtual array, which computes the lines dynamically, on
-          the fly).
+	- it is very expensive to process the list (for example, because the list
+	  is defined by a virtual array, which computes the lines dynamically, on
+	  the fly).
      One use where this flag should be turned off is in the hex-memory display,
      which is able to simulate texts with millions of lines, but they are actually
      simulated by generating the presented lines dynamically, as they are displayed."
@@ -630,15 +632,15 @@
 
 expandTabsWhenUpdating
     "return the tab expansion behavior.
-     If true (the default), the list of lines as given via #list: or 
+     If true (the default), the list of lines as given via #list: or
      due to a model update is processed and lines are replaced by lines with
      tabs expanded.
      This behavior is ok in 99.99% of all applications.
      However, you may turn this off iff:
-        - you are certain, that no tabs are in the passed in list
-        - it is very expensive to process the list (for example, because the list
-          is defined by a virtual array, which computes the lines dynamically, on
-          the fly).
+	- you are certain, that no tabs are in the passed in list
+	- it is very expensive to process the list (for example, because the list
+	  is defined by a virtual array, which computes the lines dynamically, on
+	  the fly).
      One use where this flag should be turned off is in the hex-memory display,
      which is able to simulate texts with millions of lines, but they are actually
      simulated by generating the presented lines dynamically, as they are displayed."
@@ -648,15 +650,15 @@
 
 expandTabsWhenUpdating:aBoolean
     "define the tab expansion behavior.
-     If true (the default), the list of lines as given via #list: or 
+     If true (the default), the list of lines as given via #list: or
      due to a model update is processed and lines are replaced by lines with
      tabs expanded.
      This behavior is ok in 99.99% of all applications.
      However, you may turn this off iff:
-        - you are certain, that no tabs are in the passed in list
-        - it is very expensive to process the list (for example, because the list
-          is defined by a virtual array, which computes the lines dynamically, on
-          the fly).
+	- you are certain, that no tabs are in the passed in list
+	- it is very expensive to process the list (for example, because the list
+	  is defined by a virtual array, which computes the lines dynamically, on
+	  the fly).
      One use where this flag should be turned off is in the hex-memory display,
      which is able to simulate texts with millions of lines, but they are actually
      simulated by generating the presented lines dynamically, as they are displayed."
@@ -727,22 +729,22 @@
     list add:aString.
 
     includesNonStrings ifFalse:[
-        includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
-        includesNonStrings ifTrue:[
-            fontHeightBefore := fontHeight.
-            self getFontParameters.
-            fontHeightBefore ~~ fontHeight ifTrue:[
-                self invalidate
-            ].
-        ].
+	includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
+	includesNonStrings ifTrue:[
+	    fontHeightBefore := fontHeight.
+	    self getFontParameters.
+	    fontHeightBefore ~~ fontHeight ifTrue:[
+		self invalidate
+	    ].
+	].
     ].
 
     widthOfWidestLine notNil ifTrue:[
-        self recomputeWidthOfWidestLineFor:aString old:nil.
+	self recomputeWidthOfWidestLineFor:aString old:nil.
     ].
 
     shown ifTrue:[
-        self redrawLine:(self size).
+	self redrawLine:(self size).
     ].
     self enqueueDelayedContentsChangedNotification.             "recompute scrollbars"
 
@@ -758,29 +760,29 @@
     list add:aString beforeIndex:index.
 
     widthOfWidestLine notNil ifTrue:[
-        self recomputeWidthOfWidestLineFor:aString old:nil.
+	self recomputeWidthOfWidestLineFor:aString old:nil.
     ].
 
     includesNonStrings ifFalse:[
-        includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
+	includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
 "/        includesNonStrings ifTrue:[self getFontParameters].
     ].
     shown ifTrue:[
-        lastShown := self lastLineShown.
-        index <= 2 ifTrue:[
-            self invalidate
-        ] ifFalse:[
-            index to:lastShown do:[:eachLine |
-                self invalidateLine:eachLine
-            ].
-        ].
+	lastShown := self lastLineShown.
+	index <= 2 ifTrue:[
+	    self invalidate
+	] ifFalse:[
+	    index to:lastShown do:[:eachLine |
+		self invalidateLine:eachLine
+	    ].
+	].
     ].
     self enqueueDelayedContentsChangedNotification.  "recompute scrollbars"
 
     (scrollWhenUpdating == #end or:[scrollWhenUpdating == #endOfText]) ifTrue:[
-        "/ self selection isNil ifTrue:[
-            self scrollToBottom.
-        "/ ]
+	"/ self selection isNil ifTrue:[
+	    self scrollToBottom.
+	"/ ]
     ].
 
     "Modified: / 25-07-2012 / 12:00:42 / cg"
@@ -793,43 +795,43 @@
 
     list isNil ifTrue:[list := OrderedCollection new].
     aCollectionOfLines do:[:eachLine |
-        list addAll:aCollectionOfLines beforeIndex:index.
+	list addAll:aCollectionOfLines beforeIndex:index.
     ].
     includesNonStrings ifFalse:[
-        includesNonStrings := 
-            aCollectionOfLines 
-                contains:[:someLine |
-                    someLine notNil and:[(someLine isSingleByteString) not].
-                ]
+	includesNonStrings :=
+	    aCollectionOfLines
+		contains:[:someLine |
+		    someLine notNil and:[(someLine isSingleByteString) not].
+		]
     ].
 
     widthOfWidestLine notNil ifTrue:[
-        aCollectionOfLines do:[:eachLine |
-            self recomputeWidthOfWidestLineFor:eachLine old:nil.
-        ].
+	aCollectionOfLines do:[:eachLine |
+	    self recomputeWidthOfWidestLineFor:eachLine old:nil.
+	].
     ].
 "/    widthOfWidestLine := nil. "/ i.e. unknown
     self textChanged.
 
     shown ifTrue:[
-        lastShown := self lastLineShown.
-        ((index-1) <= lastShown) ifTrue:[
-            index <= 2 ifTrue:[
-                self invalidate
-            ] ifFalse:[
-                index-1 to:lastShown do:[:eachLine |
-                    self invalidateLine:eachLine
-                ].
-                "/  self redrawFromLine:index-1.
-            ].
-        ].
+	lastShown := self lastLineShown.
+	((index-1) <= lastShown) ifTrue:[
+	    index <= 2 ifTrue:[
+		self invalidate
+	    ] ifFalse:[
+		index-1 to:lastShown do:[:eachLine |
+		    self invalidateLine:eachLine
+		].
+		"/  self redrawFromLine:index-1.
+	    ].
+	].
     ].
     self enqueueDelayedContentsChangedNotification.  "recompute scrollbars"
 
     (scrollWhenUpdating == #end or:[scrollWhenUpdating == #endOfText]) ifTrue:[
-        "/ self selection isNil ifTrue:[
-            self scrollToBottom.
-        "/ ]
+	"/ self selection isNil ifTrue:[
+	    self scrollToBottom.
+	"/ ]
     ].
 
     "Modified: / 25-07-2012 / 12:00:54 / cg"
@@ -854,12 +856,12 @@
     self withoutRedrawAt:index put:aString.
 
     shown ifTrue:[
-        fontHeightBefore ~= fontHeight ifTrue:[
-            "/ must redraw everything
-            self invalidate.
-            ^ self
-        ].
-        self redrawLine:index.
+	fontHeightBefore ~= fontHeight ifTrue:[
+	    "/ must redraw everything
+	    self invalidate.
+	    ^ self
+	].
+	self redrawLine:index.
 
 "/ the code below is wrong - we really have to redraw everything, if the
 "/ fontHeight changes (due to a labelAndIcon in the list).
@@ -877,16 +879,16 @@
 "/            self redrawLine:index
 "/        ].
 
-        "/ asynchronous:
+	"/ asynchronous:
 "/        visibleLine := self listLineToVisibleLine:index.
 "/        visibleLine notNil ifTrue:[
 "/            y := self yOfVisibleLine:visibleLine.
 "/            self invalidate:((margin @ y) extent:(width@fontHeight))
 "/        ].
 
-        widthBefore ~~ widthOfWidestLine ifTrue:[
-            self enqueueDelayedContentsChangedNotification
-        ]
+	widthBefore ~~ widthOfWidestLine ifTrue:[
+	    self enqueueDelayedContentsChangedNotification
+	]
     ]
 
     "Modified: / 25-07-2012 / 12:01:46 / cg"
@@ -935,17 +937,17 @@
     list isNil ifTrue:[^ ''].
 
     self lineEndCRLF ifTrue:[
-        lineEnd := String crlf.
+	lineEnd := String crlf.
     ] ifFalse:[
-        lineEnd := Character cr.
+	lineEnd := Character cr.
     ].
 
     stringCollection := list asStringCollection.
-    ^ stringCollection 
-        asStringWith:lineEnd
-        from:1 to:stringCollection size 
-        compressTabs:false 
-        final:lineEnd
+    ^ stringCollection
+	asStringWith:lineEnd
+	from:1 to:stringCollection size
+	compressTabs:false
+	final:lineEnd
 
     "Modified: / 04-07-2006 / 19:18:47 / fm"
 !
@@ -1035,7 +1037,7 @@
      (remembered to optimize later redraws)."
 
     self
-        list:aCollection expandTabs:expand scanForNonStrings:scan includesNonStrings:nil
+	list:aCollection expandTabs:expand scanForNonStrings:scan includesNonStrings:nil
 
     "Modified: 5.6.1997 / 12:40:35 / cg"
 !
@@ -1048,12 +1050,12 @@
      otherwise, take the information from the nonStrings arg.
      (the nonStrings information is remembered to optimize later redraws & height computations)."
 
-    self 
-        list:aCollection 
-        expandTabs:expand 
-        scanForNonStrings:scan 
-        includesNonStrings:nonStringsIfNoScan 
-        redraw:true
+    self
+	list:aCollection
+	expandTabs:expand
+	scanForNonStrings:scan
+	includesNonStrings:nonStringsIfNoScan
+	redraw:true
 !
 
 list:aCollection expandTabs:expand scanForNonStrings:scan includesNonStrings:nonStringsIfNoScan redraw:doRedraw
@@ -1073,61 +1075,61 @@
     "/ notice, that it may be very expensive to ask aCollection for each line
     "/ for example, iff the lines are generated on the fly by an algorithm
     false ifTrue:[
-        "/ see if there is a change at all.
-        "/ use to compare using =, but that's not enough in case of emphasis change.
-        aCollection size == list size ifTrue:[
-            same := true.
-            aCollection size > 0 ifTrue:[
-                aCollection with:list do:[:eachNewLine :eachOldLine |
-                    (eachNewLine == eachOldLine)
-                    ifFalse:[
-                        same := false.
-                    ]
-                ]
-            ].
-            same ifTrue:[^ self].
-        ].
+	"/ see if there is a change at all.
+	"/ use to compare using =, but that's not enough in case of emphasis change.
+	aCollection size == list size ifTrue:[
+	    same := true.
+	    aCollection size > 0 ifTrue:[
+		aCollection with:list do:[:eachNewLine :eachOldLine |
+		    (eachNewLine == eachOldLine)
+		    ifFalse:[
+			same := false.
+		    ]
+		]
+	    ].
+	    same ifTrue:[^ self].
+	].
     ].
 
     scrollToTop := scrollWhenUpdating == #begin or:[scrollWhenUpdating == #beginOfText].
     scrollToEnd := scrollWhenUpdating == #end or:[scrollWhenUpdating == #endOfText].
 
     (aCollection isEmptyOrNil and:[list isEmptyOrNil]) ifTrue:[
-        "no contents change"
-        list := aCollection.
-        scrollLocked ifFalse:[
-            scrollToTop ifTrue:[
-                self scrollToTop.
-            ] ifFalse:[
-                scrollToEnd ifTrue:[
-                    self scrollToBottom.
-                ]
-            ].
-            self scrollToLeft.
-        ].
-        ^ self
+	"no contents change"
+	list := aCollection.
+	scrollLocked ifFalse:[
+	    scrollToTop ifTrue:[
+		self scrollToTop.
+	    ] ifFalse:[
+		scrollToEnd ifTrue:[
+		    self scrollToBottom.
+		]
+	    ].
+	    self scrollToLeft.
+	].
+	^ self
     ].
 
     checkLineEndConventionWhenUpdating ifTrue:[
-        "Check if the we use DOS/Windows line end convention with CR LF.
-         The LF has already been consumed by the conversion to a StringCollection,
-         now check for and remove the trailing left over CRs"
-
-        lineEndCRLF := (aCollection size > 0
-                        and:[(firstLine := aCollection at:1) isString
-                        and:[firstLine notEmpty
-                        and:[firstLine string endsWith:Character return]]]).
+	"Check if the we use DOS/Windows line end convention with CR LF.
+	 The LF has already been consumed by the conversion to a StringCollection,
+	 now check for and remove the trailing left over CRs"
+
+	lineEndCRLF := (aCollection size > 0
+			and:[(firstLine := aCollection at:1) isString
+			and:[firstLine notEmpty
+			and:[firstLine string endsWith:Character return]]]).
     ].
     lineEndCRLF ifTrue:[
-        list := aCollection
-                    collect:[:eachLineWithCROrNil |
-                        eachLineWithCROrNil isNil
-                            ifTrue:nil
-                            ifFalse:[(eachLineWithCROrNil endsWith:Character return)
-                                     ifTrue:[eachLineWithCROrNil copyButLast:1]
-                                     ifFalse:[eachLineWithCROrNil]]].
+	list := aCollection
+		    collect:[:eachLineWithCROrNil |
+			eachLineWithCROrNil isNil
+			    ifTrue:nil
+			    ifFalse:[(eachLineWithCROrNil endsWith:Character return)
+				     ifTrue:[eachLineWithCROrNil copyButLast:1]
+				     ifFalse:[eachLineWithCROrNil]]].
     ] ifFalse:[
-        list := aCollection.
+	list := aCollection.
     ].
 
     nonStringsBefore := includesNonStrings.
@@ -1135,18 +1137,18 @@
     includesNonStrings := false.
 
     list notNil ifTrue:[
-        expand ifTrue:[
-            self expandTabs
-        ] ifFalse:[
-            scan ifTrue:[
-                includesNonStrings := list contains:[:e | e isString not].
-            ] ifFalse:[
-                includesNonStrings := nonStringsIfNoScan ? nonStringsBefore
-            ]
-        ].
+	expand ifTrue:[
+	    self expandTabs
+	] ifFalse:[
+	    scan ifTrue:[
+		includesNonStrings := list contains:[:e | e isString not].
+	    ] ifFalse:[
+		includesNonStrings := nonStringsIfNoScan ? nonStringsBefore
+	    ]
+	].
     ].
     (includesNonStrings ~~ nonStringsBefore) ifTrue:[
-        self getFontParameters.
+	self getFontParameters.
     ].
 
     widthOfWidestLine := nil.   "/ i.e. unknown
@@ -1154,49 +1156,49 @@
     oldLeft := viewOrigin x.
 
     (includesNonStrings ~~ nonStringsBefore) ifTrue:[
-        self computeNumberOfLinesShown.
+	self computeNumberOfLinesShown.
     ].
 
     scrollLocked ifFalse:[
-        newLeftOffset := viewOrigin x.
-        scrollToTop ifTrue:[
-            firstLineShown := 1.
-            newLeftOffset := 0.
-        ] ifFalse:[
-            scrollToEnd ifTrue:[
-                firstLineShown := (list size - nFullLinesShown + 1) max:1.
-                newLeftOffset := 0.
-            ]
-        ].
-        newLeftOffset > 0 ifTrue:[
-            wText := self widthOfContents.
-            (viewOrigin x + self innerWidth) > wText ifTrue:[
-                newLeftOffset := (wText - self innerWidth) max:0.
-            ].
-        ].
-        newLeftOffset ~= oldLeft ifTrue:[
-            viewOrigin := newLeftOffset @ viewOrigin y.
-        ].
+	newLeftOffset := viewOrigin x.
+	scrollToTop ifTrue:[
+	    firstLineShown := 1.
+	    newLeftOffset := 0.
+	] ifFalse:[
+	    scrollToEnd ifTrue:[
+		firstLineShown := (list size - nFullLinesShown + 1) max:1.
+		newLeftOffset := 0.
+	    ]
+	].
+	newLeftOffset > 0 ifTrue:[
+	    wText := self widthOfContents.
+	    (viewOrigin x + self innerWidth) > wText ifTrue:[
+		newLeftOffset := (wText - self innerWidth) max:0.
+	    ].
+	].
+	newLeftOffset ~= oldLeft ifTrue:[
+	    viewOrigin := newLeftOffset @ viewOrigin y.
+	].
     ].
 
     realized ifTrue:[
-        self contentsChanged.
-        scrollLocked ifFalse:[
-            "
-             don't use scroll here to avoid double redraw
-            "
-            viewOrigin := viewOrigin isNil ifTrue:[0@0] ifFalse:[(viewOrigin x) @ 0].
-            gc transformation:nil.
-
-            oldFirst ~~ firstLineShown ifTrue:[
-                self originChanged:0 @ ((oldFirst - 1) * fontHeight negated).
-            ].
-        ].
-        doRedraw ifTrue:[
-            shown ifTrue:[
-                self invalidate.
-            ]
-        ]
+	self contentsChanged.
+	scrollLocked ifFalse:[
+	    "
+	     don't use scroll here to avoid double redraw
+	    "
+	    viewOrigin := viewOrigin isNil ifTrue:[0@0] ifFalse:[(viewOrigin x) @ 0].
+	    gc transformation:nil.
+
+	    oldFirst ~~ firstLineShown ifTrue:[
+		self originChanged:0 @ ((oldFirst - 1) * fontHeight negated).
+	    ].
+	].
+	doRedraw ifTrue:[
+	    shown ifTrue:[
+		self invalidate.
+	    ]
+	]
     ]
 
     "Modified: / 30-08-1995 / 19:07:13 / claus"
@@ -1232,20 +1234,20 @@
     list removeFromIndex:startLineNr toIndex:(endLineNr min:list size).
 
     widthOfWidestLine == widestLineRemoved ifTrue:[
-        widthOfWidestLine := nil. "/ i.e. unknown
+	widthOfWidestLine := nil. "/ i.e. unknown
     ].
     self textChanged.
 
     ((startLineNr <= self lastLineShown)
     and:[endLineNr >= firstLineShown]) ifTrue:[
-        startLineNr to:self lastLineShown do:[:eachLine |
-            self invalidateLine:eachLine
-        ].
+	startLineNr to:self lastLineShown do:[:eachLine |
+	    self invalidateLine:eachLine
+	].
     ].
 
     nLines := list size.
     (firstLineShown >= nLines) ifTrue:[
-        self makeLineVisible:nLines
+	self makeLineVisible:nLines
     ].
     self enqueueDelayedContentsChangedNotification.
 
@@ -1308,7 +1310,7 @@
     list removeIndex:lineNr.
 
     lineNr < firstLineShown ifTrue:[
-        firstLineShown := firstLineShown - 1
+	firstLineShown := firstLineShown - 1
     ].
     self enqueueDelayedContentsChangedNotification.
     ^ true
@@ -1320,7 +1322,7 @@
     "replace some lines"
 
     list isNil ifTrue:[
-        list := OrderedCollection new.
+	list := OrderedCollection new.
     ].
     list replaceFrom:startLineNr to:endLineNr with:aCollection startingAt:replStartIndex.
 
@@ -1329,7 +1331,7 @@
 
     ((startLineNr <= self lastLineShown)
     and:[endLineNr >= firstLineShown]) ifTrue:[
-        self invalidate.
+	self invalidate.
     ].
 
     self enqueueDelayedContentsChangedNotification.
@@ -1383,9 +1385,9 @@
      This can be used to update a self-changing list
      (for example: a file list being shown, without disturbing the user too much)"
 
-    self 
-        setList:aCollection expandTabs:expandTabs scanForNonStrings:true includesNonStrings:nil
-        redraw:doRedraw
+    self
+	setList:aCollection expandTabs:expandTabs scanForNonStrings:true includesNonStrings:nil
+	redraw:doRedraw
 !
 
 setList:aCollection expandTabs:expandTabs scanForNonStrings:scan includesNonStrings:nonStringsIfNoScan redraw:doRedraw
@@ -1394,24 +1396,24 @@
      This can be used to update a self-changing list
      (for example: a file list being shown, without disturbing the user too much).
     TODO: this stinks: most of the code is the same as in #list:expandTabs:...
-          needs a refactoring"
+	  needs a refactoring"
 
     |prev|
 
     prev := scrollLocked.
     [
-        scrollLocked := false.
-        self 
-            list:aCollection 
-            expandTabs:expandTabs 
-            scanForNonStrings:scan 
-            includesNonStrings:nonStringsIfNoScan 
-            redraw:doRedraw
+	scrollLocked := false.
+	self
+	    list:aCollection
+	    expandTabs:expandTabs
+	    scanForNonStrings:scan
+	    includesNonStrings:nonStringsIfNoScan
+	    redraw:doRedraw
     ] ensure:[
-        scrollLocked := prev
+	scrollLocked := prev
     ].
 "/
-"/    
+"/
 "/"/                scrollLocked ifTrue:[
 "/"/                    self setList:newText expandTabs:expandTabsWhenUpdating
 "/"/                ] ifFalse:[
@@ -1534,10 +1536,10 @@
     endLine isNil ifTrue:[^ nil].
 
     (startLine == endLine) ifTrue:[
-        "part of a line"
-        ^ StringCollection with:(self listAt:startLine from:startCol to:endCol)
+	"part of a line"
+	^ StringCollection with:(self listAt:startLine from:startCol to:endCol)
     ].
-    
+
     sz := endLine - startLine + 1.
     sz < 1 ifTrue:[^ ''].
 
@@ -1546,17 +1548,17 @@
     "get 1st and last (possibly) partial lines"
     text at:1 put:(self listAt:startLine from:startCol).
     endCol == 0 ifTrue:[
-        last := ''
+	last := ''
     ] ifFalse:[
-        last := self listAt:endLine to:endCol.
+	last := self listAt:endLine to:endCol.
     ].
     text at:sz put:last.
 
     "get bulk of text"
     index := 2.
     (startLine + 1) to:(endLine - 1) do:[:lineNr |
-        text at:index put:(self listAt:lineNr).
-        index := index + 1
+	text at:index put:(self listAt:lineNr).
+	index := index + 1
     ].
     ^ text
 
@@ -1576,25 +1578,25 @@
     oldLine := self listAt:index.
     list at:index put:aString.
     oldLine ~= aString ifTrue:[
-        self textChanged
+	self textChanged
     ].
 
     didIncludeNonStrings := includesNonStrings.
     includesNonStrings ifFalse:[
-        includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
+	includesNonStrings := (aString notNil and:[(aString isSingleByteString) not]).
     ] ifTrue:[
-        (aString isNil or:[(aString isSingleByteString)]) ifTrue:[
-            includesNonStrings := list contains:[:l | l notNil and:[(l isSingleByteString) not]].
-        ]
+	(aString isNil or:[(aString isSingleByteString)]) ifTrue:[
+	    includesNonStrings := list contains:[:l | l notNil and:[(l isSingleByteString) not]].
+	]
     ].
 
     includesNonStrings ~~ didIncludeNonStrings ifTrue:[
-        self getFontParameters.
-        self computeNumberOfLinesShown
+	self getFontParameters.
+	self computeNumberOfLinesShown
     ].
 
     widthOfWidestLine notNil ifTrue:[
-        self recomputeWidthOfWidestLineFor:aString old:oldLine.
+	self recomputeWidthOfWidestLineFor:aString old:oldLine.
     ].
 
     "Modified: / 26.7.1998 / 13:00:14 / cg"
@@ -1637,7 +1639,7 @@
         super font:aFont.
         self getFontParameters.
         realized ifTrue:[
-            (gc font graphicsDevice == gc device) ifTrue:[
+            (gc font graphicsDevice == device) ifTrue:[
                 self computeNumberOfLinesShown.
                 shown ifTrue:[
                     self redrawFromVisibleLine:1 to:nLinesShown
@@ -1655,7 +1657,7 @@
      by which lines are vertically separated."
 
     fontHeight ~~ pixels ifTrue:[
-        fontHeight := pixels.
+	fontHeight := pixels.
     ]
 
     "Created: 17.4.1997 / 01:41:33 / cg"
@@ -1752,8 +1754,8 @@
      by which lines are vertically separated."
 
     lineSpacing ~~ pixels ifTrue:[
-        lineSpacing := pixels.
-        self getFontParameters.
+	lineSpacing := pixels.
+	self getFontParameters.
     ]
 
     "Modified: 22.5.1996 / 12:22:29 / cg"
@@ -1834,10 +1836,10 @@
     "ST-80 compatibility"
 
     aspectSymbol notNil ifTrue:[
-        aspectMsg := aspectSymbol.
-        listMsg isNil ifTrue:[
-            listMsg := aspectSymbol
-        ]
+	aspectMsg := aspectSymbol.
+	listMsg isNil ifTrue:[
+	    listMsg := aspectSymbol
+	]
     ].
     listSymbol notNil ifTrue:[listMsg := listSymbol].
     changeSymbol notNil ifTrue:[changeMsg := changeSymbol].
@@ -1933,11 +1935,11 @@
     sH := lineSpacing // 2.
 
     backgroundAlreadyClearedColor == bg ifFalse:[
-        self paint:bg.
-        self fillRectangleX:margin
-                          y:y-sH
-                      width:(width - (margin * 2))
-                     height:(endVisLineNr - startVisLineNr + 1) * fontHeight + (lineSpacing - sH).
+	self paint:bg.
+	self fillRectangleX:margin
+			  y:y-sH
+		      width:(width - (margin * 2))
+		     height:(endVisLineNr - startVisLineNr + 1) * fontHeight + (lineSpacing - sH).
     ].
     list isNil ifTrue:[^ self].
 
@@ -1947,29 +1949,29 @@
     startLine := startVisLineNr + firstLineShown - 1.
     endLine := endVisLineNr + firstLineShown - 1.
     (startLine == 0) ifTrue:[
-        y := y + fontHeight.
-        startLine := startLine + 1
+	y := y + fontHeight.
+	startLine := startLine + 1
     ].
 
     (endLine > listSize) ifTrue:[
-        e := listSize
+	e := listSize
     ] ifFalse:[
-        e := endLine
+	e := endLine
     ].
 
     (startLine <= e) ifTrue:[
-        x := textStartLeft - viewOrigin x.
-        self paint:fg on:bg.
-        "/ don't use list from:to:do:, to allow for subclasses to redefine the enumeration (TableView)
-        self from:startLine to:e do:[:line |
-            line notNil ifTrue:[
-                "/ remove line's color emphasis, to enforce color.
-                "/ otherwise blue text is not visible if selection-bg is blue
-                l := self withoutColorEmphasis:line ifFg:fg andBg:bg.
-                self displayOpaqueString:l x:x y:y
-            ].
-            y := y + fontHeight
-        ]
+	x := textStartLeft - viewOrigin x.
+	self paint:fg on:bg.
+	"/ don't use list from:to:do:, to allow for subclasses to redefine the enumeration (TableView)
+	self from:startLine to:e do:[:line |
+	    line notNil ifTrue:[
+		"/ remove line's color emphasis, to enforce color.
+		"/ otherwise blue text is not visible if selection-bg is blue
+		l := self withoutColorEmphasis:line ifFg:fg andBg:bg.
+		self displayOpaqueString:l x:x y:y
+	    ].
+	    y := y + fontHeight
+	]
     ]
 
     "Modified: / 15.12.1999 / 23:19:39 / cg"
@@ -1984,28 +1986,28 @@
 
     y := self yOfVisibleLine:visLineNr.
     backgroundAlreadyClearedColor == bg ifFalse:[
-        self paint:bg.
-        halfSpacing := (lineSpacing//2).
-        extraBelow := 0.
-        self highlightLineSpacing ifTrue:[
-            extraBelow := halfSpacing.
-        ].
-        self fillRectangleX:margin y:y - halfSpacing
-                      width:(width - (2 * margin))
-                     height:fontHeight+extraBelow.
+	self paint:bg.
+	halfSpacing := (lineSpacing//2).
+	extraBelow := 0.
+	self highlightLineSpacing ifTrue:[
+	    extraBelow := halfSpacing.
+	].
+	self fillRectangleX:margin y:y - halfSpacing
+		      width:(width - (2 * margin))
+		     height:fontHeight+extraBelow.
     ].
     line notNil ifTrue:[
-        self paint:fg on:bg.
-
-        "/ remove lines color emphasis, to enforce color.
-        "/ otherwise blue text is not visible if selection-bg is blue.
-        "/ this is only done in EditTextViews and subClasses.
-        self suppressEmphasisInSelection ifTrue:[
-            l := self withoutColorEmphasis:line ifFg:fg andBg:bg.
-        ] ifFalse:[
-            l := line
-        ].
-        self displayOpaqueString:l x:x y:(y + fontAscent)
+	self paint:fg on:bg.
+
+	"/ remove lines color emphasis, to enforce color.
+	"/ otherwise blue text is not visible if selection-bg is blue.
+	"/ this is only done in EditTextViews and subClasses.
+	self suppressEmphasisInSelection ifTrue:[
+	    l := self withoutColorEmphasis:line ifFg:fg andBg:bg.
+	] ifFalse:[
+	    l := line
+	].
+	self displayOpaqueString:l x:x y:(y + fontAscent)
     ].
 
     "Modified: / 15.12.1999 / 23:19:46 / cg"
@@ -2048,7 +2050,7 @@
     (lineString notNil and:[lineString isString not]) ifTrue:[
         w := lineString widthFrom:col to:(col min:len) on:self.
         w <= 0 ifTrue:[
-            w := gc font width.
+	    w := gc font width.
             self fillRectangleX:x y:yf width:w height:fontHeight.
             self paint:fg
         ].
@@ -2059,7 +2061,7 @@
     ].
 
     (lineString isNil or:[col > len]) ifTrue:[
-        self fillRectangleX:x y:yf width:(gc font width) height:fontHeight.
+	self fillRectangleX:x y:yf width:(gc font width) height:fontHeight.
         self paint:fg
     ] ifFalse:[
         characterString := lineString copyFrom:col to:col.
@@ -2178,31 +2180,31 @@
     |y x index1 index2 lineWithoutColor|
 
     (startCol < 1) ifTrue:[
-        index1 := 1
+	index1 := 1
     ] ifFalse:[
-        index1 := startCol
+	index1 := startCol
     ].
     y := self yOfVisibleLine:visLineNr.
     x := (self xOfCol:index1 inVisibleLine:visLineNr) - viewOrigin x.
     backgroundAlreadyClearedColor == bg ifFalse:[
-        self paint:bg.
-        self fillRectangleX:x y:y - (lineSpacing // 2)
-                      width:(width + viewOrigin x - x)
-                     height:fontHeight.
-    ].                                      
+	self paint:bg.
+	self fillRectangleX:x y:y - (lineSpacing // 2)
+		      width:(width + viewOrigin x - x)
+		     height:fontHeight.
+    ].
     lineString notNil ifTrue:[
-        lineString isString ifFalse:[
-            self drawLine:lineString inVisible:visLineNr from:startCol to:nil with:fg and:bg.
-        ] ifTrue:[
-            lineWithoutColor := self withoutColorEmphasis:lineString ifFg:fg andBg:bg.
-            index2 := lineWithoutColor size.
-            (index2 < index1) ifTrue:[^ self].
-            (index1 <= index2) ifTrue:[
-                self paint:fg on:bg.
-                "/ self displayOpaqueString:lineWithoutColor from:index1 to:index2 x:x y:(y + fontAscent)
-                self displayString:lineWithoutColor from:index1 to:index2 x:x y:(y + fontAscent)
-            ]
-        ]
+	lineString isString ifFalse:[
+	    self drawLine:lineString inVisible:visLineNr from:startCol to:nil with:fg and:bg.
+	] ifTrue:[
+	    lineWithoutColor := self withoutColorEmphasis:lineString ifFg:fg andBg:bg.
+	    index2 := lineWithoutColor size.
+	    (index2 < index1) ifTrue:[^ self].
+	    (index1 <= index2) ifTrue:[
+		self paint:fg on:bg.
+		"/ self displayOpaqueString:lineWithoutColor from:index1 to:index2 x:x y:(y + fontAscent)
+		self displayString:lineWithoutColor from:index1 to:index2 x:x y:(y + fontAscent)
+	    ]
+	]
     ]
 
     "Modified: / 15.12.1999 / 23:24:40 / cg"
@@ -2278,14 +2280,14 @@
 
     visLineNr := self listLineToVisibleLine:line.
     visLineNr notNil ifTrue:[
-        yTop := self yOfVisibleLine:visLineNr.
-        yTop isNil ifTrue:[^ self]. "/ not visible
-        (yTop + fontHeight) < 0 ifTrue:[^ self]. "/ not visible
-        self
-            invalidateDeviceRectangle:(Rectangle
-                            left:margin top:yTop-(lineSpacing//2)
-                            width:(width - (2 * margin)) height:fontHeight)
-            repairNow:false.
+	yTop := self yOfVisibleLine:visLineNr.
+	yTop isNil ifTrue:[^ self]. "/ not visible
+	(yTop + fontHeight) < 0 ifTrue:[^ self]. "/ not visible
+	self
+	    invalidateDeviceRectangle:(Rectangle
+			    left:margin top:yTop-(lineSpacing//2)
+			    width:(width - (2 * margin)) height:fontHeight)
+	    repairNow:false.
     ]
 
     "Created: / 5.3.1998 / 01:24:19 / cg"
@@ -2300,24 +2302,24 @@
     |listSize newOrigin|
 
     shown ifTrue:[
-        list notNil ifTrue:[
-            listSize := self numberOfLines.
-
-            listSize == 0 ifTrue:[
-                widthOfWidestLine := 0.
-            ].
-
-            "
-             if we are beyond the end, scroll up a bit
-            "
-            ((firstLineShown + nFullLinesShown) > listSize) ifTrue:[
-                newOrigin := listSize - nFullLinesShown + 1.
-                newOrigin < 1 ifTrue:[
-                    newOrigin := 1
-                ].
-                self scrollToLine: newOrigin.
-            ].
-        ].
+	list notNil ifTrue:[
+	    listSize := self numberOfLines.
+
+	    listSize == 0 ifTrue:[
+		widthOfWidestLine := 0.
+	    ].
+
+	    "
+	     if we are beyond the end, scroll up a bit
+	    "
+	    ((firstLineShown + nFullLinesShown) > listSize) ifTrue:[
+		newOrigin := listSize - nFullLinesShown + 1.
+		newOrigin < 1 ifTrue:[
+		    newOrigin := 1
+		].
+		self scrollToLine: newOrigin.
+	    ].
+	].
     ].
 
     ^ super contentsChanged
@@ -2330,8 +2332,9 @@
     "a key was pressed - handle page-keys here"
 
     <resource: #keyboard (#PreviousPage #NextPage #HalfPageUp #HalfPageDown
-			  #BeginOfText #EndOfText
-			  #ScrollUp #ScrollDown )>
+                          #BeginOfText #EndOfText
+                          #ScrollUp #ScrollDown 
+                          #ZoomIn #ZoomOut)>
     |n|
 
     (key == #PreviousPage) ifTrue: [^ self pageUp].
@@ -2343,17 +2346,24 @@
     (key == #EndOfText) ifTrue:[^ self scrollToBottom].
 
     (key == #ScrollUp) ifTrue:[
-	n := 1 + (self sensor compressKeyPressEventsWithKey:#ScrollUp).
-	^ self scrollUp:n
+        n := 1 + (self sensor compressKeyPressEventsWithKey:#ScrollUp).
+        ^ self scrollUp:n
     ].
     (key == #ScrollDown) ifTrue:[
-	n := 1 + (self sensor compressKeyPressEventsWithKey:#ScrollDown).
-	^ self scrollDown:n
+        n := 1 + (self sensor compressKeyPressEventsWithKey:#ScrollDown).
+        ^ self scrollDown:n
     ].
+    (key == #ZoomIn or:[key == #ZoomOut]) ifTrue:[ self keyboardZoom:(key == #ZoomIn) ].
 
     super keyPress:key x:x y:y
 !
 
+keyboardZoom:larger
+    "CTRL+/- zoom action"
+
+    self fontLargerOrSmaller:larger
+!
+
 mapped
     self stopAutoScroll.
     super mapped
@@ -2362,22 +2372,22 @@
 mouseWheelZoom:amount
     "CTRL-wheel action"
 
-    |oldSize newSize delta mul currentFont|
+    |oldSize newSize delta mul font|
 
     amount > 0 ifTrue:[
         "/ delta := 1.  mul := 1.
-        delta := 0.  mul := 1.2.
+        delta := 0.  mul := 1.05.
     ] ifFalse:[
         "/ delta := -1. mul := 1.
-        delta := 0. mul := 0.8.
+        delta := 0. mul := 0.95.
     ].
 
-    currentFont := gc font.
-    currentFont sizeUnit == #px ifFalse:[
-        oldSize := currentFont size.
-        newSize := ((oldSize + delta)* mul) max:2.
+    font := gc font.
+    font sizeUnit ~~ #px ifTrue:[
+        oldSize := font size.
+        newSize := (((oldSize + delta)* mul) max:4) min:100.
         newSize ~= oldSize ifTrue:[
-            self font:(currentFont asSize:newSize).
+            self font:(font asSize:newSize).
         ]
     ].
 !
@@ -2402,40 +2412,40 @@
     backgroundAlreadyClearedColor := bgColor.
 
     (includesNonStrings or:[w > (width // 4 * 3)]) ifTrue:[
-        "includes non strings or area is big enough: redraw whole lines"
-        self redrawFromVisibleLine:startLine to:stopLine
+	"includes non strings or area is big enough: redraw whole lines"
+	self redrawFromVisibleLine:startLine to:stopLine
     ] ifFalse:[
-        line := self visibleAt:startLine.
-
-        (fontIsFixedWidth and:[line isSingleByteString]) ifFalse:[
-            "start/end col has to be computed for each line"
-
-            startLine to:stopLine do:[:i |
-                startCol := self colOfX:x inVisibleLine:i.
-                endCol := self colOfX:(x + w) inVisibleLine:i.
-                startCol > 0 ifTrue:[
-                    endCol > 0 ifTrue:[
-                        self redrawVisibleLine:i from:startCol to:endCol
-                    ]
-                ]
-            ]
-        ] ifTrue:[
-            "start/end col is the same for all lines"
-            startCol := self colOfX:x inVisibleLine:startLine.
-            endCol := self colOfX:(x + w) inVisibleLine:startLine.
-            startCol > 0 ifTrue:[
-                endCol > 0 ifTrue:[
-                    startLine to:stopLine do:[:i |
-                        line := self visibleAt:i.
-                        (line isSingleByteString) ifTrue:[
-                            self redrawVisibleLine:i from:startCol to:endCol
-                        ] ifFalse:[
-                            self redrawVisibleLine:i
-                        ]
-                    ]
-                ]
-            ]
-        ]
+	line := self visibleAt:startLine.
+
+	(fontIsFixedWidth and:[line isSingleByteString]) ifFalse:[
+	    "start/end col has to be computed for each line"
+
+	    startLine to:stopLine do:[:i |
+		startCol := self colOfX:x inVisibleLine:i.
+		endCol := self colOfX:(x + w) inVisibleLine:i.
+		startCol > 0 ifTrue:[
+		    endCol > 0 ifTrue:[
+			self redrawVisibleLine:i from:startCol to:endCol
+		    ]
+		]
+	    ]
+	] ifTrue:[
+	    "start/end col is the same for all lines"
+	    startCol := self colOfX:x inVisibleLine:startLine.
+	    endCol := self colOfX:(x + w) inVisibleLine:startLine.
+	    startCol > 0 ifTrue:[
+		endCol > 0 ifTrue:[
+		    startLine to:stopLine do:[:i |
+			line := self visibleAt:i.
+			(line isSingleByteString) ifTrue:[
+			    self redrawVisibleLine:i from:startCol to:endCol
+			] ifFalse:[
+			    self redrawVisibleLine:i
+			]
+		    ]
+		]
+	    ]
+	]
     ].
     backgroundAlreadyClearedColor := nil.
     self clippingRectangle:saveClip.
@@ -2510,21 +2520,21 @@
 
     n := DefaultTopMargin.
     n isInteger ifFalse:[
-        n := (self verticalPixelPerMillimeter:n) rounded.
+	n := (self verticalPixelPerMillimeter:n) rounded.
     ].
     self topMargin:n.
 
     n := DefaultLeftMargin.
     n isInteger ifFalse:[
-        n := (self verticalPixelPerMillimeter:n) rounded.
+	n := (self verticalPixelPerMillimeter:n) rounded.
     ].
     self leftMargin:n.
 
     lineSpacing := 2.
     "/ q&d temporary hack.
     "/ X11 fonts are currently so ugly... add more spacing.
-    device platformName == #X11 ifTrue:[
-        lineSpacing := lineSpacing + 3.
+    device isX11Platform ifTrue:[
+	lineSpacing := lineSpacing + 3.
     ].
     fgColor := DefaultForegroundColor.
     bgColor := DefaultBackgroundColor.
@@ -2547,7 +2557,7 @@
     partialLines := true.
     tabPositions := UserDefaultTabPositions ? self class defaultTabPositions.
     includesNonStrings := false.
-    lineEndCRLF := false.    
+    lineEndCRLF := false.
     checkedLinesForWidthOfContentsComputation := nil."/ i.e. all
     self getFontParameters.
     self initializeWordCheckAction.
@@ -2763,7 +2773,7 @@
 "/self paint:Color red.
 "/self displayRectangleX:posLeft+textStartLeft-viewOrigin x y:(self yOfVisibleLine:visLineNr)
 "/                       width:(posRight-posLeft) height:fontHeight.
-"/self paint:Color black.
+"/self paint:self blackColor.
     ^ runCol
 
     "Modified: / 25-04-2011 / 11:26:58 / cg"
@@ -2850,7 +2860,7 @@
 
     sensor := self sensor.
     (sensor hasUserEvent:#contentsChanged for:self) ifFalse:[
-        sensor pushUserEvent:#contentsChanged for:self
+	sensor pushUserEvent:#contentsChanged for:self
     ].
     "/ used to be syncronous:
     "/ self contentsChanged.             "recompute scrollbars"
@@ -2871,20 +2881,20 @@
     hMax := newDeviceFont height.
 
     includesNonStrings == true ifTrue:[
-        "/
-        "/ find maximum height of lines
-        "/
-        hMax := list inject:hMax into:[:maxSoFar :thisLine |
-                                        thisLine isNil ifTrue:[
-                                            maxSoFar
-                                        ] ifFalse:[
-                                            (thisLine isSingleByteString) ifTrue:[
-                                                maxSoFar
-                                            ] ifFalse:[
-                                                maxSoFar max:(thisLine heightOn:self)
-                                            ]
-                                        ]
-                              ].
+	"/
+	"/ find maximum height of lines
+	"/
+	hMax := list inject:hMax into:[:maxSoFar :thisLine |
+					thisLine isNil ifTrue:[
+					    maxSoFar
+					] ifFalse:[
+					    (thisLine isSingleByteString) ifTrue:[
+						maxSoFar
+					    ] ifFalse:[
+						maxSoFar max:(thisLine heightOn:self)
+					    ]
+					]
+			      ].
 
     ].
     fontHeight := newDeviceFont maxHeight.
@@ -2903,50 +2913,57 @@
     "ask my model (if any) for the text via the listMsg.
      If there is no listMessage, try aspect for backward compatibility."
 
-    |newText msg|
+    |newText msg doCompareIfUnchanged|
 
     model notNil ifTrue:[
-        msg := listMsg ? aspectMsg.
-
-        msg notNil ifTrue:[
-            newText := model perform:msg.
-            "/ cg: this makes many optimizations (virtualArray) useless;
-            "/ I do not think that this is a good idea:
-            "/     text notNil ifTrue:[
-            "/ so I changed it to:
-            (newText notNil and:[newText isString]) ifTrue:[
-                newText := newText asStringCollection.
-            ].
-
-            compareModelOnUpdate ifTrue:[
-                "/ see if there is a change at all.
-                "/ use to compare using =, but that's not enough in case of emphasis change.
-                newText size == list size ifTrue:[
-                    |same|
-
-                    same := true.
-                    newText size > 0 ifTrue:[
-                        newText with:list do:[:eachNewLine :eachOldLine |
-                            (eachNewLine == eachOldLine) ifFalse:[
-                                same := false.
-                            ]
-                        ]
-                    ].
-                    same ifTrue:[^ self].
-                ].
-            ].
-
-            "/ SV: this compare does not work, if model uses (i.e. updates)
-            "/ the same stringCollection as the view!!
-            true "text ~= list" ifTrue:[
-                "/ changed #list to care for scrollLocked
+	msg := listMsg ? aspectMsg.
+
+	msg notNil ifTrue:[
+	    doCompareIfUnchanged := compareModelOnUpdate.
+	    newText := model perform:msg.
+	    "/ cg: this makes many optimizations (virtualArray) useless;
+	    "/ I do not think that this is a good idea:
+	    "/     text notNil ifTrue:[
+	    "/ so I changed it to:
+	    (newText notNil and:[newText isString]) ifTrue:[
+		newText := newText asStringCollection.
+	    ] ifFalse:[
+		newText == model ifTrue:[
+		    "/ I must operate on a copy
+		    newText := model asNewOrderedCollection.
+		    "/ doCompareIfUnchanged := false.
+		].
+	    ].
+
+	    doCompareIfUnchanged ifTrue:[
+		"/ see if there is a change at all.
+		"/ use to compare using =, but that's not enough in case of emphasis change.
+		newText size == list size ifTrue:[
+		    |same|
+
+		    same := true.
+		    newText size > 0 ifTrue:[
+			newText with:list do:[:eachNewLine :eachOldLine |
+			    (eachNewLine == eachOldLine) ifFalse:[
+				same := false.
+			    ]
+			]
+		    ].
+		    same ifTrue:[^ self].
+		].
+	    ].
+
+	    "/ SV: this compare does not work, if model uses (i.e. updates)
+	    "/ the same stringCollection as the view!!
+	    true "text ~= list" ifTrue:[
+		"/ changed #list to care for scrollLocked
 "/                scrollLocked ifTrue:[
 "/                    self setList:newText expandTabs:expandTabsWhenUpdating
 "/                ] ifFalse:[
-                    self list:newText expandTabs:expandTabsWhenUpdating scanForNonStrings:expandTabsWhenUpdating
+		    self list:newText expandTabs:expandTabsWhenUpdating scanForNonStrings:expandTabsWhenUpdating
 "/                ]
-            ].
-        ].
+	    ].
+	].
     ].
 
     "Modified: 26.4.1996 / 14:09:42 / cg"
@@ -2963,9 +2980,9 @@
     prev := scrollLocked.
     scrollLocked := aBoolean not.
     [
-        self getListFromModel
+	self getListFromModel
     ] ensure:[
-        scrollLocked := prev.
+	scrollLocked := prev.
     ].
 !
 
@@ -3007,14 +3024,14 @@
     lineLen := line size.
 
     (line isNil or:[startCol > lineLen]) ifTrue:[
-        (nCols > 0) ifTrue:[
-            ^ (String new:nCols)
-        ].
-        ^ nil
+	(nCols > 0) ifTrue:[
+	    ^ (String new:nCols)
+	].
+	^ nil
     ].
 
     (endCol > lineLen) ifTrue:[
-        ^ (line copyFrom:startCol to:lineLen) , (String new:(endCol-lineLen))
+	^ (line copyFrom:startCol to:lineLen) , (String new:(endCol-lineLen))
     ].
     ^ line copyFrom:startCol to:endCol
 !
@@ -3026,16 +3043,16 @@
 
     line := self listAt:lineNr.
     line isNil ifTrue:[
-        (endCol > 0) ifTrue:[
-            ^ (String new:endCol)
-        ].
-        ^ nil
+	(endCol > 0) ifTrue:[
+	    ^ (String new:endCol)
+	].
+	^ nil
     ].
 
     lineSize := line size.
 
     (endCol > lineSize) ifTrue:[
-        ^ (line copyTo:lineSize) , (String new:(endCol - lineSize)).
+	^ (line copyTo:lineSize) , (String new:(endCol - lineSize)).
     ].
     ^ line copyTo:endCol
 !
@@ -3072,47 +3089,47 @@
 
 recomputeWidthOfWidestLineFor:newEntry old:oldEntry
     "a new line was added (oldEntry == nil) or replaced oldEntry.
-     Update the widthOfWidestLine cache or flush it, if we cannot easily 
+     Update the widthOfWidestLine cache or flush it, if we cannot easily
      figure out the overall text width"
 
     |newW oldW|
 
     widthOfWidestLine notNil ifTrue:[
-        newEntry isNil ifTrue:[
-            newW := 0
-        ] ifFalse:[
-            (newEntry isSingleByteString) ifTrue:[
-                newW := gc font widthOf:newEntry
-            ] ifFalse:[
-                newW := newEntry widthOn:self
-            ].
-        ].
-
-        newW >= widthOfWidestLine ifTrue:[
-            widthOfWidestLine := newW.
-        ] ifFalse:[
-            oldEntry isNil ifTrue:[
-                oldW := 0
-            ] ifFalse:[
-                (oldEntry isSingleByteString) ifTrue:[
-                    oldW := gc font widthOf:oldEntry
-                ] ifFalse:[
-                    oldW := oldEntry widthOn:self
-                ].
-            ].
-            newW > oldW ifTrue:[
-                "/ no change; new entries width is between this width and amx width
-            ] ifFalse:[
-                "/ new entry is smaller than oldEntry; if the oldEntry was the previos max,
-                "/ we don't know the new max
-                oldW = widthOfWidestLine ifTrue:[
-                    widthOfWidestLine := nil "/ means: unknown
-                ] ifFalse:[
-                    "/ old line was not the widest, and new line is shorter;
-                    "/ no change
-                ]
-            ]
-        ].
+	newEntry isNil ifTrue:[
+	    newW := 0
+	] ifFalse:[
+	    (newEntry isSingleByteString) ifTrue:[
+		newW := gc font widthOf:newEntry
+	    ] ifFalse:[
+		newW := newEntry widthOn:self
+	    ].
+	].
+
+	newW >= widthOfWidestLine ifTrue:[
+	    widthOfWidestLine := newW.
+	] ifFalse:[
+	    oldEntry isNil ifTrue:[
+		oldW := 0
+	    ] ifFalse:[
+		(oldEntry isSingleByteString) ifTrue:[
+		    oldW := gc font widthOf:oldEntry
+		] ifFalse:[
+		    oldW := oldEntry widthOn:self
+		].
+	    ].
+	    newW > oldW ifTrue:[
+		"/ no change; new entries width is between this width and amx width
+	    ] ifFalse:[
+		"/ new entry is smaller than oldEntry; if the oldEntry was the previos max,
+		"/ we don't know the new max
+		oldW = widthOfWidestLine ifTrue:[
+		    widthOfWidestLine := nil "/ means: unknown
+		] ifFalse:[
+		    "/ old line was not the widest, and new line is shorter;
+		    "/ no change
+		]
+	    ]
+	].
     ].
     ^ widthOfWidestLine
 !
@@ -3218,7 +3235,7 @@
 
     entry isNil ifTrue:[^ 0].
     (entry isSingleByteString) ifTrue:[
-        ^ gc font widthOf:entry
+	^ gc font widthOf:entry
     ].
     ^ entry widthOn:self
 
@@ -3237,11 +3254,11 @@
      listSize "{ Class: SmallInteger }" |
 
     includesNonStrings ifTrue:[
-        ^ width
+	^ width
     ].
 
     fontIsFixedWidth ifTrue:[
-        ^ (self lengthOfLongestLineBetween:firstLine and:lastLine) * fontWidth
+	^ (self lengthOfLongestLineBetween:firstLine and:lastLine) * fontWidth
     ].
     listSize := self size.
     max := 0.
@@ -3250,27 +3267,27 @@
 
     (first > listSize) ifTrue:[^ max].
     (last > listSize) ifTrue:[
-        last := listSize
+	last := listSize
     ].
 
     self from:first to:last do:[:line |
-        line notNil ifTrue:[
-            (line isSingleByteString) ifTrue:[
-                thisLen := gc font widthOf:line
-            ] ifFalse:[
-                thisLen := line widthOn:self
-            ].
-            (thisLen > max) ifTrue:[
-                max := thisLen
-            ]
-        ]
+	line notNil ifTrue:[
+	    (line isSingleByteString) ifTrue:[
+		thisLen := gc font widthOf:line
+	    ] ifFalse:[
+		thisLen := line widthOn:self
+	    ].
+	    (thisLen > max) ifTrue:[
+		max := thisLen
+	    ]
+	]
     ].
     ^ max
 !
 
 withoutAnyColorEmphasis:line
     (line notNil and:[line isText]) ifTrue:[
-        ^ line withoutAnyColorEmphasis
+	^ line withoutAnyColorEmphasis
     ].
     ^ line
 
@@ -3285,14 +3302,14 @@
 
 withoutBackgroundColorEmphasis:line
     (line notNil and:[line isText]) ifTrue:[
-        ^ line withoutBackgroundColorEmphasis
+	^ line withoutBackgroundColorEmphasis
     ].
     ^ line
 !
 
 withoutColorEmphasis:line
     (line notNil and:[line isText]) ifTrue:[
-        ^ line withoutForegroundColorEmphasis
+	^ line withoutForegroundColorEmphasis
     ].
     ^ line
 !
@@ -3304,7 +3321,7 @@
     (line notNil
     and:[line isText
     and:[fg ~= fgColor or:[bg ~= bgColor]]]) ifTrue:[
-        ^ line withoutAnyColorEmphasis
+	^ line withoutAnyColorEmphasis
     ].
     ^ line
 
@@ -3317,35 +3334,35 @@
     |line lineSize tcol lText|
 
     col == 1 ifTrue:[
-        lText := 0
+	lText := 0
     ] ifFalse:[
-        tcol := col - 1.
-
-        line := self visibleAt:visLineNr.
-        (fontIsFixedWidth
-        and:[line isNil or:[line isSingleByteString]])
-        ifTrue:[
-            lText := (tcol * fontWidth)
-        ] ifFalse:[
-            line notNil ifTrue:[
-                lineSize := line string size
-            ] ifFalse:[
-                lineSize := 0
-            ].
-            (lineSize == 0) ifTrue:[
-                lText := (tcol * fontWidth)
-            ] ifFalse:[
-                (lineSize < col) ifTrue:[
-                    lText := (line widthOn:self) + (fontWidth * (tcol - lineSize))
-                ] ifFalse:[
-                    (line isSingleByteString) ifTrue:[
-                        lText := (gc font widthOf:line from:1 to:tcol)
-                    ] ifFalse:[
-                        lText := line widthFrom:1 to:tcol on:self.
-                    ]
-                ]
-            ]
-        ]
+	tcol := col - 1.
+
+	line := self visibleAt:visLineNr.
+	(fontIsFixedWidth
+	and:[line isNil or:[line isSingleByteString]])
+	ifTrue:[
+	    lText := (tcol * fontWidth)
+	] ifFalse:[
+	    line notNil ifTrue:[
+		lineSize := line string size
+	    ] ifFalse:[
+		lineSize := 0
+	    ].
+	    (lineSize == 0) ifTrue:[
+		lText := (tcol * fontWidth)
+	    ] ifFalse:[
+		(lineSize < col) ifTrue:[
+		    lText := (line widthOn:self) + (fontWidth * (tcol - lineSize))
+		] ifFalse:[
+		    (line isSingleByteString) ifTrue:[
+			lText := (gc font widthOf:line from:1 to:tcol)
+		    ] ifFalse:[
+			lText := line widthFrom:1 to:tcol on:self.
+		    ]
+		]
+	    ]
+	]
     ].
     ^ lText + textStartLeft
 
@@ -3360,7 +3377,7 @@
 
     visLine := self listLineToVisibleLine:lineNr.
     visLine isNil ifTrue:[
-        ^ nil
+	^ nil
     ].
     ^ self yOfVisibleLine:visLine
 
@@ -3398,18 +3415,18 @@
     self checkForExistingLine:lineNr.
     charPos := 1.
     1 to:(lineNr - 1) do:[:lnr |
-        lineString := self at:lnr.
-        lineString notNil ifTrue:[
-            charPos := charPos + (lineString string) size
-        ].
-        charPos := charPos + lineEndCharSize   "the return-character"
+	lineString := self at:lnr.
+	lineString notNil ifTrue:[
+	    charPos := charPos + (lineString string) size
+	].
+	charPos := charPos + lineEndCharSize   "the return-character"
     ].
 
-    "/ NEW: expand that line, so that characterAtCharacterPosition returns the correct character 
-"/ wrong: will modify!! 
+    "/ NEW: expand that line, so that characterAtCharacterPosition returns the correct character
+"/ wrong: will modify!!
 "/    (lineString := self at:lineNr) size < colArg ifTrue:[
 "/        "/ expand this line
-"/        self at:lineNr put:((lineString ? ''),(String new:colArg-lineString size)).    
+"/        self at:lineNr put:((lineString ? ''),(String new:colArg-lineString size)).
 "/    ].
 
     "/ OLD: if beyond end of line, be careful to not advance into next line.
@@ -3453,11 +3470,11 @@
 heightForLines:numberOfLines
     "return the height of the receiver, if numberOfLines are to be displayed"
 
-    |realFont|
+    |font|
 
     "need a device font for query"
-    realFont := gc createFontOnDevice.
-    ^ numberOfLines * fontHeight + topMargin + realFont descent + (lineSpacing) + (margin * 2)
+    font := gc createFontOnDevice.
+    ^ numberOfLines * fontHeight + topMargin + font descent + lineSpacing + (margin * 2)
 
     "Created: 27.1.1996 / 16:55:39 / cg"
 !
@@ -3466,7 +3483,7 @@
     "return the height of the contents in pixels
      - used for scrollbar interface"
 
-    | numLines  realFont|
+    |numLines font|
 
     numLines := self numberOfLines.
     numLines == 0 ifTrue:[^ 0].
@@ -3480,12 +3497,11 @@
     "
      need device-font for query
     "
-    realFont := gc createFontOnDevice.
-    ^ numLines * fontHeight "don't take font height here - think of LabelAndIcons"
+    font := gc createFontOnDevice.
+    ^ numLines * fontHeight "dont take font height here - think of LabelAndIcons"
 "/                            + textStartTop
                             - (lineSpacing // 2)
-                            + (realFont descent)
-"/                            + (font descent)
+                            + (font descent)
 "/                            + (font descent * 2) "makes it look better"
                                 .
 
@@ -3590,12 +3606,12 @@
     sum := 0.
     lastLine := self size.
     [(sum < charPos) and:[lineNr <= lastLine]] whileTrue:[
-        l := (self at:lineNr) ? ''.
-        sum := sum + (l string "withoutTrailingSeparators" size) + lineEndCharSize.
-        lineNr := lineNr + 1
+	l := (self at:lineNr) ? ''.
+	sum := sum + (l string "withoutTrailingSeparators" size) + lineEndCharSize.
+	lineNr := lineNr + 1
     ].
     sum == charPos ifTrue:[
-        ^ lineNr
+	^ lineNr
     ].
 
     ^ (lineNr - 1) max:1
@@ -3632,8 +3648,7 @@
     "return the width of the contents in pixels
      - used for scrollbar interface"
 
-    |f d 
-     start "{ Class: SmallInteger }"
+    |font start "{ Class: SmallInteger }"
      stop  "{ Class: SmallInteger }"
      lengthOfLongestString  "{ Class: SmallInteger }"
      lengthOfLongestLine    "{ Class: SmallInteger }"
@@ -3645,13 +3660,8 @@
         ^ widthOfWidestLine + (leftMargin * 2)
     ].
 
-    (d := gc device) isNil ifTrue:[
-        "/ mhmh - really dont know yet
-        d := Screen current
-    ].
-    f := gc font onDevice:d.
-    gc font:f.
-
+    font := gc createFontOnDevice.
+    
     checkedLinesForWidthOfContentsComputation isNil ifTrue:[
         start := 1.
         stop := list size
@@ -3673,7 +3683,7 @@
             entry := list at:lineNr.
             entry notNil ifTrue:[
                 (entry isSingleByteString) ifTrue:[
-                    w := f widthOf:entry
+                    w := font widthOf:entry
                 ] ifFalse:[
                     w := entry widthOn:self
                 ].
@@ -3728,22 +3738,16 @@
 widthOfLine:lineNr
     "return the width of a line in pixels"
 
-    |line f d|
+    |line font|
 
     list isNil ifTrue:[^ 0].
     lineNr > list size ifTrue:[^ 0].
     line := list at:lineNr.
     list isNil ifTrue:[^ 0].
 
-    (d := device) isNil ifTrue:[
-        "/ mhmh - really dont know yet
-        d := Screen current
-    ].
-    f := gc font onDevice:d.
-    gc font:f.
-
+    font := gc createFontOnDevice.
     (line isSingleByteString) ifTrue:[
-        ^ f widthOf:line
+        ^ font widthOf:line
     ].
     ^ line widthOn:self
 
@@ -4312,8 +4316,8 @@
      Return true, to tell caller that scrolling is allowed (redefined in editField)"
 
     self
-        startAutoScrollVertical:yDistance
-        scrollSelector:#scrollSelectDown.
+	startAutoScrollVertical:yDistance
+	scrollSelector:#scrollSelectDown.
     ^ true
 !
 
@@ -4342,8 +4346,8 @@
      - timeDelta for scroll is computed from distance"
 
     self
-        startAutoScrollHorizontal:xDistance negated
-        scrollSelector:#scrollSelectLeft.
+	startAutoScrollHorizontal:xDistance negated
+	scrollSelector:#scrollSelectLeft.
     ^ true
 !
 
@@ -4352,8 +4356,8 @@
      - timeDelta for scroll is computed from distance"
 
     self
-        startAutoScrollHorizontal:xDistance
-        scrollSelector:#scrollSelectRight.
+	startAutoScrollHorizontal:xDistance
+	scrollSelector:#scrollSelectRight.
     ^ true
 !
 
@@ -4363,8 +4367,8 @@
      Return true, to tell caller that scrolling is allowed (redefined in editField)"
 
     self
-        startAutoScrollVertical:yDistance negated
-        scrollSelector:#scrollSelectUp.
+	startAutoScrollVertical:yDistance negated
+	scrollSelector:#scrollSelectUp.
     ^ true
 !
 
@@ -4376,15 +4380,15 @@
 
     autoScroll ifFalse:[^ self].
 
-    mm := (yDistance abs // self verticalIntegerPixelPerMillimeter) + 1.     
+    mm := (yDistance abs // self verticalIntegerPixelPerMillimeter) + 1.
     deltaT := 0.5 / mm.
 
     (deltaT = autoScrollDeltaT) ifFalse:[
-        autoScrollDeltaT := deltaT.
-        autoScrollBlock isNil ifTrue:[
-            autoScrollBlock := [self realized ifTrue:[self perform:scrollSelector]].
-            Processor addTimedBlock:autoScrollBlock afterSeconds:deltaT
-        ]
+	autoScrollDeltaT := deltaT.
+	autoScrollBlock isNil ifTrue:[
+	    autoScrollBlock := [self realized ifTrue:[self perform:scrollSelector]].
+	    Processor addTimedBlock:autoScrollBlock afterSeconds:deltaT
+	]
     ]
 
     "Modified: / 08-08-2010 / 11:26:26 / cg"
@@ -4456,42 +4460,42 @@
 "/  compute valid horizontal offset x
 
     (x := dltOrg x) ~~ 0 ifTrue:[
-        tmp := viewOrigin x + x.
-
-        x < 0 ifTrue:[                                          "/ scrolling left
-            tmp < 0 ifTrue:[x := 0 - viewOrigin x]
-        ] ifFalse:[                                             "/ scrolling right
-         "/ allows scrolling to the right of widest line
-            max := self widthOfContents + (self additionalMarginForHorizontalScroll).
-
-            tmp + width > max ifTrue:[
-                x := (max - viewOrigin x - width) max:0
-            ]
-        ]
+	tmp := viewOrigin x + x.
+
+	x < 0 ifTrue:[                                          "/ scrolling left
+	    tmp < 0 ifTrue:[x := 0 - viewOrigin x]
+	] ifFalse:[                                             "/ scrolling right
+	 "/ allows scrolling to the right of widest line
+	    max := self widthOfContents + (self additionalMarginForHorizontalScroll).
+
+	    tmp + width > max ifTrue:[
+		x := (max - viewOrigin x - width) max:0
+	    ]
+	]
     ].
 
 "/  compute valid vertical offset measured in lines
 
     (y := dltOrg y // fontHeight) ~~ 0 ifTrue:[
-        tmp := firstLineShown + y.
-
-        y < 0 ifTrue:[                                          "/ scrolling up
-            tmp < 1 ifTrue:[y := 1 - firstLineShown]
-        ] ifFalse:[                                             "/ scrolling down
-            max := self size.
-
-            tmp + nFullLinesShown > max ifTrue:[
-                y := (max - firstLineShown - nFullLinesShown + 1) max:0
-            ]
-        ]
+	tmp := firstLineShown + y.
+
+	y < 0 ifTrue:[                                          "/ scrolling up
+	    tmp < 1 ifTrue:[y := 1 - firstLineShown]
+	] ifFalse:[                                             "/ scrolling down
+	    max := self size.
+
+	    tmp + nFullLinesShown > max ifTrue:[
+		y := (max - firstLineShown - nFullLinesShown + 1) max:0
+	    ]
+	]
     ].
 
     (x == 0 and:[y == 0]) ifTrue:[                              "/ has viewOrigin changed ?
-        ^ self
+	^ self
     ].
 
     (noLn := y) ~~ 0 ifTrue:[
-        y := y * fontHeight
+	y := y * fontHeight
     ].
     delta := (x @ y).
 
@@ -4499,11 +4503,11 @@
     newViewOrigin := viewOrigin + delta.
 
     (shown and:[doRedraw]) ifFalse:[
-        self originWillChange.
-        firstLineShown := newFirstLine.
-        viewOrigin := newViewOrigin.
-        self assert:(viewOrigin x >= 0).
-        ^ self originChanged:delta
+	self originWillChange.
+	firstLineShown := newFirstLine.
+	viewOrigin := newViewOrigin.
+	self assert:(viewOrigin x >= 0).
+	^ self originChanged:delta
     ].
 
 "/    (self sensor notNil and: [self sensor hasExposeEventFor:self]) ifTrue:[               "/ outstanding expose events
@@ -4516,18 +4520,18 @@
       or:[(noLn abs) >= nLinesShown     "/ at least one area is
       or:[(x abs) > (width // 4 * 3)]]  "/ big enough to redraw all
     ) ifTrue:[
-        self originWillChange.
-        firstLineShown := newFirstLine.
-        viewOrigin := newViewOrigin.
-        self invalidate.
-        ^ self originChanged:delta
+	self originWillChange.
+	firstLineShown := newFirstLine.
+	viewOrigin := newViewOrigin.
+	self invalidate.
+	^ self originChanged:delta
     ].
 
     "/ OLD:
     "/ self repairDamage.
 
     (wg := self windowGroup) notNil ifTrue:[
-        wg processRealExposeEventsFor:self.
+	wg processRealExposeEventsFor:self.
     ].
 
     self originWillChange.
@@ -4538,61 +4542,61 @@
     self catchExpose.
 
     x == 0 ifTrue:[
-        "/ scrolling vertical
-
-        y0 := textStartTop + (y abs).
-        h  := hBefore - margin - y0.
-        w  := wBefore - margin.
-        y > 0 ifTrue:[                                          "/ copy down
-            "/ kludge: if the selection highlighting draws into the textStartTop area,
-            "/ the copy below leaves some selection depris in the top area.
-            "/ Therefore, clear the top area.
-            "/ (should avoid this, in case we know there cannot be anything
-            "/  there - selection is nil or >= firstLineShown).
-            self clearDeviceRectangleX:margin y:margin width:width-margin-margin height:(textStartTop-margin).
+	"/ scrolling vertical
+
+	y0 := textStartTop + (y abs).
+	h  := hBefore - margin - y0.
+	w  := wBefore - margin.
+	y > 0 ifTrue:[                                          "/ copy down
+	    "/ kludge: if the selection highlighting draws into the textStartTop area,
+	    "/ the copy below leaves some selection depris in the top area.
+	    "/ Therefore, clear the top area.
+	    "/ (should avoid this, in case we know there cannot be anything
+	    "/  there - selection is nil or >= firstLineShown).
+	    self clearDeviceRectangleX:margin y:margin width:width-margin-margin height:(textStartTop-margin).
 "/            self invalidateDeviceRectangle:((margin@margin) corner:(width-margin@textStartTop)) repairNow:false.
 
-            self copyFrom:self
-                        x:0 y:y0 toX:0 y:textStartTop
-                    width:w height:h async:true.
-            y1 := h - 1.
-            y0 := y0 + 1.
-        ] ifFalse:[                                             "/ copy up
-            self copyFrom:self
-                        x:margin y:textStartTop toX:margin y:y0
-                    width:w height:h async:true.
-            y1 := 0.
-        ].
-
-        inv := (margin@y1) extent:(w@y0+margin).
+	    self copyFrom:self
+			x:0 y:y0 toX:0 y:textStartTop
+		    width:w height:h async:true.
+	    y1 := h - 1.
+	    y0 := y0 + 1.
+	] ifFalse:[                                             "/ copy up
+	    self copyFrom:self
+			x:margin y:textStartTop toX:margin y:y0
+		    width:w height:h async:true.
+	    y1 := 0.
+	].
+
+	inv := (margin@y1) extent:(w@y0+margin).
     ] ifFalse:[
-        "/ scrolling horizontal
-
-        x > 0 ifTrue:[                                          "/ scrolling right
-            y0 := margin + x.
-            y1 := wBefore - y0.
-        ] ifFalse:[                                             "/ scrolling left
-            y0 := margin - x.
-            y1 := 0.
-        ].
-        h := hBefore - margin - margin.
-        w := wBefore - margin - y0.
-
-        x > 0 ifTrue:[                                          "/ copy right
-            self copyFrom:self x:y0 y:margin toX:margin y:margin
-                    width:w height:h async:true.
-        ] ifFalse:[                                             "/ copy left
-            "/ self copyFrom:self x:textStartLeft y:margin toX:y0 y:margin
+	"/ scrolling horizontal
+
+	x > 0 ifTrue:[                                          "/ scrolling right
+	    y0 := margin + x.
+	    y1 := wBefore - y0.
+	] ifFalse:[                                             "/ scrolling left
+	    y0 := margin - x.
+	    y1 := 0.
+	].
+	h := hBefore - margin - margin.
+	w := wBefore - margin - y0.
+
+	x > 0 ifTrue:[                                          "/ copy right
+	    self copyFrom:self x:y0 y:margin toX:margin y:margin
+		    width:w height:h async:true.
+	] ifFalse:[                                             "/ copy left
+	    "/ self copyFrom:self x:textStartLeft y:margin toX:y0 y:margin
 "/            viewOrigin x > margin ifTrue:[
 "/                self copyFrom:self x:0 y:margin toX:y0-margin y:margin
 "/                        width:w height:h async:true.
 "/            ] ifFalse:[
-                self copyFrom:self x:margin y:margin toX:y0 y:margin
-                        width:w height:h async:true.
+		self copyFrom:self x:margin y:margin toX:y0 y:margin
+			width:w height:h async:true.
 "/            ].
-        ].
-
-        inv := (y1@margin) extent:(y0@h).
+	].
+
+	inv := (y1@margin) extent:(y0@h).
     ].
 
     firstLineShown := newFirstLine.
@@ -4600,14 +4604,14 @@
 
     self invalidateDeviceRectangle:inv repairNow:false.
     viewOrigin x <= margin ifTrue:[
-        self invalidateDeviceRectangle:((0@margin) extent:(margin@h)) repairNow:false.
+	self invalidateDeviceRectangle:((0@margin) extent:(margin@h)) repairNow:false.
     ].
 
     self originChanged:delta.
     self waitForExpose.
 
     (wg := self windowGroup) notNil ifTrue:[
-        wg processRealExposeEventsFor:self.
+	wg processRealExposeEventsFor:self.
     ].
 
 "/    (hBefore ~= height or:[wBefore ~= width]) ifTrue:[
@@ -4706,13 +4710,13 @@
      found evaluate block2.
      Sorry, but pattern is no regular expression pattern (yet)"
 
-    ^ self 
-        searchBackwardUsingSpec:(SearchSpec new
-                                        pattern:pattern
-                                        ignoreCase:ignCase
-                                        match:false)
-        startingAtLine:startLine col:startCol 
-        ifFound:block1 ifAbsent:block2
+    ^ self
+	searchBackwardUsingSpec:(SearchSpec new
+					pattern:pattern
+					ignoreCase:ignCase
+					match:false)
+	startingAtLine:startLine col:startCol
+	ifFound:block1 ifAbsent:block2
 !
 
 searchBackwardFor:pattern startingAtLine:startLine col:startCol ifFound:block1 ifAbsent:block2
@@ -4757,82 +4761,82 @@
     and:[startLine > 0
     and:[patternSize ~~ 0]])
     ifTrue:[
-        self withCursor:Cursor questionMark do:[
-            col := startCol - 1.
-            firstChar1 := pattern at:1.
-            ignCase ifTrue:[
-                firstChar1 := firstChar1 asLowercase.
-                firstChar2 := firstChar1 asUppercase.
-            ] ifFalse:[
-                firstChar2 := firstChar1
-            ].
-
-            line1 := startLine.
-            line1 > list size ifTrue:[
-                line1 := list size.
-                col := -999
-            ] ifFalse:[
-                col > (list at:line1) size ifTrue:[
-                    col := -999
-                ]
-            ].
-            line1 to:1 by:-1 do:[:lnr |
-                lineString := list at:lnr.
-                lineString notNil ifTrue:[
-                    lineString := lineString asString.
-                    lineString isString ifTrue:[
-                        "/ quick check if pattern is present
-                        col1 := lineString
-                                findString:pattern startingAt:1
-                                ifAbsent:0 caseSensitive: ignCase not.
-                        col1 ~~ 0 ifTrue:[
-                            lineSize := lineString size.
-                            col == -999 ifTrue:[col := lineSize - patternSize + 1].
-                            [(col > 0)
-                             and:[(c := lineString at:col) ~= firstChar1
-                             and:[c ~= firstChar2]]] whileTrue:[
-                                col := col - 1
-                            ].
-                            [col > 0] whileTrue:[
-                                cc := col.
-                                found := true.
-                                1 to:patternSize do:[:cnr |
-                                    cc > lineSize ifTrue:[
-                                        found := false
-                                    ] ifFalse:[
-                                        pc := pattern at:cnr.
-                                        c := lineString at:cc.
-                                        pc ~= c ifTrue:[
-                                            (ignCase not or:[pc asLowercase ~= c asLowercase]) ifTrue:[
-                                                found := false
-                                            ]
-                                        ]
-                                    ].
-                                    cc := cc + 1
-                                ].
-                                found ifTrue:[
-                                    (fullWord not
-                                        or:[ (self findBeginOfWordAtLine:lnr col:col) == col
-                                              and:[ (self findEndOfWordAtLine:lnr col:col) == (col + patternSize - 1) ]]
-                                    ) ifTrue:[
-                                        (atBeginOfLineOnly not or:[col == 1]) ifTrue:[
-                                            ^ block1 value:lnr value:col optionalArgument:nil.
-                                        ]
-                                    ]
-                                ].
-                                col := col - 1.
-                                [(col > 0)
-                                and:[(c := lineString at:col) ~= firstChar1
-                                and:[c ~= firstChar2]]] whileTrue:[
-                                    col := col - 1
-                                ]
-                            ]
-                        ]
-                    ].
-                ].
-                col := -999.
-            ]
-        ]
+	self withCursor:Cursor questionMark do:[
+	    col := startCol - 1.
+	    firstChar1 := pattern at:1.
+	    ignCase ifTrue:[
+		firstChar1 := firstChar1 asLowercase.
+		firstChar2 := firstChar1 asUppercase.
+	    ] ifFalse:[
+		firstChar2 := firstChar1
+	    ].
+
+	    line1 := startLine.
+	    line1 > list size ifTrue:[
+		line1 := list size.
+		col := -999
+	    ] ifFalse:[
+		col > (list at:line1) size ifTrue:[
+		    col := -999
+		]
+	    ].
+	    line1 to:1 by:-1 do:[:lnr |
+		lineString := list at:lnr.
+		lineString notNil ifTrue:[
+		    lineString := lineString asString.
+		    lineString isString ifTrue:[
+			"/ quick check if pattern is present
+			col1 := lineString
+				findString:pattern startingAt:1
+				ifAbsent:0 caseSensitive: ignCase not.
+			col1 ~~ 0 ifTrue:[
+			    lineSize := lineString size.
+			    col == -999 ifTrue:[col := lineSize - patternSize + 1].
+			    [(col > 0)
+			     and:[(c := lineString at:col) ~= firstChar1
+			     and:[c ~= firstChar2]]] whileTrue:[
+				col := col - 1
+			    ].
+			    [col > 0] whileTrue:[
+				cc := col.
+				found := true.
+				1 to:patternSize do:[:cnr |
+				    cc > lineSize ifTrue:[
+					found := false
+				    ] ifFalse:[
+					pc := pattern at:cnr.
+					c := lineString at:cc.
+					pc ~= c ifTrue:[
+					    (ignCase not or:[pc asLowercase ~= c asLowercase]) ifTrue:[
+						found := false
+					    ]
+					]
+				    ].
+				    cc := cc + 1
+				].
+				found ifTrue:[
+				    (fullWord not
+					or:[ (self findBeginOfWordAtLine:lnr col:col) == col
+					      and:[ (self findEndOfWordAtLine:lnr col:col) == (col + patternSize - 1) ]]
+				    ) ifTrue:[
+					(atBeginOfLineOnly not or:[col == 1]) ifTrue:[
+					    ^ block1 value:lnr value:col optionalArgument:nil.
+					]
+				    ]
+				].
+				col := col - 1.
+				[(col > 0)
+				and:[(c := lineString at:col) ~= firstChar1
+				and:[c ~= firstChar2]]] whileTrue:[
+				    col := col - 1
+				]
+			    ]
+			]
+		    ].
+		].
+		col := -999.
+	    ]
+	]
     ].
     "not found"
 
@@ -4847,12 +4851,12 @@
      found evaluate block2."
 
     ^ self
-        searchForwardUsingSpec:(SearchSpec new
-                                    pattern:pattern 
-                                    ignoreCase:ignCase 
-                                    match:match)
-        startingAtLine:startLine col:startCol 
-        ifFound:block1 ifAbsent:block2
+	searchForwardUsingSpec:(SearchSpec new
+				    pattern:pattern
+				    ignoreCase:ignCase
+				    match:match)
+	startingAtLine:startLine col:startCol
+	ifFound:block1 ifAbsent:block2
 !
 
 searchForwardFor:pattern ignoreCase:ignCase startingAtLine:startLine col:startCol ifFound:block1 ifAbsent:block2
@@ -4877,12 +4881,12 @@
 !
 
 searchForwardUsingSpec:searchSpec startingAtLine:startLine col:startCol ifFound:block1 ifAbsent:block2
-    "search for a pattern, if found evaluate block1 with row/col as arguments, 
-     if not found evaluate block2. 
+    "search for a pattern, if found evaluate block1 with row/col as arguments,
+     if not found evaluate block2.
      If the block is a three-arg block, it gets the end-col (or nil, if not known)"
 
     |lineString col pattern match regexMatch ignCase fullWord atBeginOfLineOnly
-     wrapAtEndOfText patternSize matcher lnr   "{Class: SmallInteger}"  
+     wrapAtEndOfText patternSize matcher lnr   "{Class: SmallInteger}"
      line1 "{Class: SmallInteger}"
      line2 "{Class: SmallInteger}"
      p realPattern runner foundCol endCol|
@@ -4891,9 +4895,9 @@
     match := searchSpec match.
     regexMatch := searchSpec regexMatch.
     (match and:[regexMatch not]) ifTrue:[
-        pattern := pattern globPatternAsRegexPattern.
-        regexMatch := true.
-    ].    
+	pattern := pattern globPatternAsRegexPattern.
+	regexMatch := true.
+    ].
     ignCase := searchSpec ignoreCase.
     fullWord := searchSpec fullWord.
     atBeginOfLineOnly := searchSpec atBeginOfLineOnly.
@@ -4901,106 +4905,106 @@
 
     patternSize := pattern size.
     (list notNil and:[patternSize ~~ 0]) ifTrue:[
-        self withCursor:Cursor questionMark do:[
-
-            col := startCol + 1.
-            line1 := startLine.
-            line2 := list size.
-
-            "/ call searchBlock with lnr, col, and line. Cares for wrap
-            runner := 
-                [:searchBlock |
-                    |didWrap|
-                    
-                    lnr := line1.
-                    didWrap := false.
-                    [lnr <= line2] whileTrue:[
-                        lineString := list at:lnr.
-                        lineString notNil ifTrue:[
-                            lineString := lineString asString string.
-                            lineString isString ifTrue:[
-                                searchBlock value:lnr value:col value:lineString
-                            ]
-                        ].
-                        col := 1.
-                        lnr := lnr + 1.
-                        lnr > line2 ifTrue:[
-                            (wrapAtEndOfText and:[didWrap not]) ifTrue:[
-                                didWrap := true.
-                                lnr := 1.
-                                line2 := line1-1.
-                            ].   
-                        ].    
-                   ].
-                    
-                ].
-                
-            (match and:[regexMatch]) ifTrue:[
-                "perform a findMatchString (regex matching)"
-                Regex::RxParser isNil ifTrue:[
-                    Smalltalk loadPackage:'stx:goodies/regex'
-                ].
-                matcher := ignCase ifTrue:[pattern asRegexIgnoringCase] ifFalse:[pattern asRegex]. 
-                runner 
-                    value:[:lnr :col :lineString |
-                        "/ first a crude check ...
-                        (matcher hasMatchesIn:lineString) ifTrue:[
-                            "/ find which match to show
-                            1 to:matcher subexpressionCount do:[:i | 
-                                foundCol := matcher subBeginning:i.
-                                endCol := matcher subEnd:i.
-                                (foundCol notNil and: [endCol notNil]) ifTrue: [
-                                    foundCol := foundCol + 1. "/ regex uses 0-based indexes (sigh)
-                                    foundCol >= col ifTrue:[
-                                        (atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
-                                            ^ block1 value:lnr value:foundCol optionalArgument:endCol.
-                                        ]]]]]].
-            ] ifFalse:[    
-                (match and:[pattern includesUnescapedMatchCharacters]) ifTrue:[
-                    "perform a findMatchString (glob matching)"
-                    p := pattern species new:0.
-                    (pattern startsWith:$*) ifFalse:[p := p , '*'].
-                    p := p , pattern.
-                    (pattern endsWith:$*) ifFalse:[p := p , '*'].
-                    realPattern := pattern.
-                    (realPattern startsWith:$*) ifTrue:[
-                        realPattern := realPattern copyFrom:2
-                    ].
-                    runner 
-                        value:[:lnr :col :lineString |
-                            (p match:lineString caseSensitive:ignCase not) ifTrue:[
-                                "/ ok, there it is; look at which position
-                                foundCol := lineString
-                                        findMatchString:realPattern startingAt:col
-                                        caseSensitive:ignCase not ifAbsent:0.
-                                foundCol ~~ 0 ifTrue:[
-                                    (atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
-                                        ^ block1 value:lnr value:foundCol optionalArgument:nil.
-                                    ]]]].
-                ] ifFalse:[
-                    "perform a findString (no matching)"
-                    p := pattern.
-                    (match and:[pattern includesMatchCharacters]) ifTrue:[
-                        p := pattern withoutMatchEscapes
-                    ].    
-                    runner 
-                        value:[:lnr :col :lineString |
-                            foundCol := lineString
-                                    findString:p startingAt:col ifAbsent:0 caseSensitive: ignCase not.
-                            foundCol ~~ 0 ifTrue:[
-                                (fullWord not
-                                    or:[ (self findBeginOfWordAtLine:lnr col:foundCol) == foundCol
-                                          and:[ (self findEndOfWordAtLine:lnr col:foundCol) == (foundCol + patternSize - 1) ]]
-                                ) ifTrue:[
-                                    (atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
-                                        ^ block1 value:lnr value:foundCol optionalArgument:nil.
-                                    ]
-                                ]
-                            ]
-                        ].
-                ].
-            ].
-        ]
+	self withCursor:Cursor questionMark do:[
+
+	    col := startCol + 1.
+	    line1 := startLine.
+	    line2 := list size.
+
+	    "/ call searchBlock with lnr, col, and line. Cares for wrap
+	    runner :=
+		[:searchBlock |
+		    |didWrap|
+
+		    lnr := line1.
+		    didWrap := false.
+		    [lnr <= line2] whileTrue:[
+			lineString := list at:lnr.
+			lineString notNil ifTrue:[
+			    lineString := lineString asString string.
+			    lineString isString ifTrue:[
+				searchBlock value:lnr value:col value:lineString
+			    ]
+			].
+			col := 1.
+			lnr := lnr + 1.
+			lnr > line2 ifTrue:[
+			    (wrapAtEndOfText and:[didWrap not]) ifTrue:[
+				didWrap := true.
+				lnr := 1.
+				line2 := line1-1.
+			    ].
+			].
+		   ].
+
+		].
+
+	    (match and:[regexMatch]) ifTrue:[
+		"perform a findMatchString (regex matching)"
+		Regex::RxParser isNil ifTrue:[
+		    Smalltalk loadPackage:'stx:goodies/regex'
+		].
+		matcher := ignCase ifTrue:[pattern asRegexIgnoringCase] ifFalse:[pattern asRegex].
+		runner
+		    value:[:lnr :col :lineString |
+			"/ first a crude check ...
+			(matcher hasMatchesIn:lineString) ifTrue:[
+			    "/ find which match to show
+			    1 to:matcher subexpressionCount do:[:i |
+				foundCol := matcher subBeginning:i.
+				endCol := matcher subEnd:i.
+				(foundCol notNil and: [endCol notNil]) ifTrue: [
+				    foundCol := foundCol + 1. "/ regex uses 0-based indexes (sigh)
+				    foundCol >= col ifTrue:[
+					(atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
+					    ^ block1 value:lnr value:foundCol optionalArgument:endCol.
+					]]]]]].
+	    ] ifFalse:[
+		(match and:[pattern includesUnescapedMatchCharacters]) ifTrue:[
+		    "perform a findMatchString (glob matching)"
+		    p := pattern species new:0.
+		    (pattern startsWith:$*) ifFalse:[p := p , '*'].
+		    p := p , pattern.
+		    (pattern endsWith:$*) ifFalse:[p := p , '*'].
+		    realPattern := pattern.
+		    (realPattern startsWith:$*) ifTrue:[
+			realPattern := realPattern copyFrom:2
+		    ].
+		    runner
+			value:[:lnr :col :lineString |
+			    (p match:lineString caseSensitive:ignCase not) ifTrue:[
+				"/ ok, there it is; look at which position
+				foundCol := lineString
+					findMatchString:realPattern startingAt:col
+					caseSensitive:ignCase not ifAbsent:0.
+				foundCol ~~ 0 ifTrue:[
+				    (atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
+					^ block1 value:lnr value:foundCol optionalArgument:nil.
+				    ]]]].
+		] ifFalse:[
+		    "perform a findString (no matching)"
+		    p := pattern.
+		    (match and:[pattern includesMatchCharacters]) ifTrue:[
+			p := pattern withoutMatchEscapes
+		    ].
+		    runner
+			value:[:lnr :col :lineString |
+			    foundCol := lineString
+				    findString:p startingAt:col ifAbsent:0 caseSensitive: ignCase not.
+			    foundCol ~~ 0 ifTrue:[
+				(fullWord not
+				    or:[ (self findBeginOfWordAtLine:lnr col:foundCol) == foundCol
+					  and:[ (self findEndOfWordAtLine:lnr col:foundCol) == (foundCol + patternSize - 1) ]]
+				) ifTrue:[
+				    (atBeginOfLineOnly not or:[foundCol == 1]) ifTrue:[
+					^ block1 value:lnr value:foundCol optionalArgument:nil.
+				    ]
+				]
+			    ]
+			].
+		].
+	    ].
+	]
     ].
     "not found"
 
@@ -5020,12 +5024,12 @@
     |prefs|
 
     (prefs := UserPreferences current) whitespaceWordSelectMode ifTrue:[
-        "an extremely simple mode, where every non-space is treated as part of the word"
-        ^ char isSeparator not
+	"an extremely simple mode, where every non-space is treated as part of the word"
+	^ char isSeparator not
     ].
     prefs extendedWordSelectMode ifTrue:[
-        "the typical mode, useful for text and code"
-        ^ char isNationalAlphaNumeric or:[char == $_]
+	"the typical mode, useful for text and code"
+	^ char isNationalAlphaNumeric or:[char == $_]
     ].
     "another typical mode, also useful for text and code"
     ^ char isNationalAlphaNumeric
@@ -5044,20 +5048,20 @@
 
     includesNonStrings := false.
     list notNil ifTrue:[
-        nLines := self size.
-        1 to:nLines do:[:index |
-            line := self at:index.
-            line notNil ifTrue:[
-                (line isString) ifTrue:[
-                    newLine := line withTabsExpanded.
-                    newLine ~~ line ifTrue:[
-                        list at:index put:newLine
-                    ].
-                ] ifFalse:[
-                    includesNonStrings := true.
-                ]
-            ]
-        ]
+	nLines := self size.
+	1 to:nLines do:[:index |
+	    line := self at:index.
+	    line notNil ifTrue:[
+		(line isString) ifTrue:[
+		    newLine := line withTabsExpanded.
+		    newLine ~~ line ifTrue:[
+			list at:index put:newLine
+		    ].
+		] ifFalse:[
+		    includesNonStrings := true.
+		]
+	    ]
+	]
     ]
 
     "Modified: 30.8.1995 / 19:06:37 / claus"
@@ -5323,7 +5327,7 @@
     ^ pattern
 !
 
-pattern:patternString 
+pattern:patternString
     pattern := patternString.
 !
 
@@ -5345,11 +5349,11 @@
     forward := forwardBoolean
 !
 
-pattern:patternString ignoreCase:ignoredCaseBoolean 
-          match:matchBoolean regexMatch:regexMatchBoolean
-          variable:variableBoolen 
-          fullWord:fullWordBoolen forward:forwardBoolean
-          atBeginOfLineOnly:atBeginOfLineOnlyArg
+pattern:patternString ignoreCase:ignoredCaseBoolean
+	  match:matchBoolean regexMatch:regexMatchBoolean
+	  variable:variableBoolen
+	  fullWord:fullWordBoolen forward:forwardBoolean
+	  atBeginOfLineOnly:atBeginOfLineOnlyArg
     pattern := patternString.
     ignoreCase := ignoredCaseBoolean.
     match := matchBoolean.
@@ -5360,12 +5364,12 @@
     atBeginOfLineOnly := atBeginOfLineOnlyArg
 !
 
-pattern:patternString ignoreCase:ignoredCaseBoolean 
-          match:matchBoolean regexMatch:regexMatchBoolean
-          variable:variableBoolen 
-          fullWord:fullWordBoolen forward:forwardBoolean
-          atBeginOfLineOnly:atBeginOfLineOnlyArg
-          wrapAtEnd:wrapAtEndOfTextArg
+pattern:patternString ignoreCase:ignoredCaseBoolean
+	  match:matchBoolean regexMatch:regexMatchBoolean
+	  variable:variableBoolen
+	  fullWord:fullWordBoolen forward:forwardBoolean
+	  atBeginOfLineOnly:atBeginOfLineOnlyArg
+	  wrapAtEnd:wrapAtEndOfTextArg
     pattern := patternString.
     ignoreCase := ignoredCaseBoolean.
     match := matchBoolean.
@@ -5394,9 +5398,9 @@
     forward := forwardBoolean
 !
 
-pattern:patternString ignoreCase:ignoredCaseBoolean match:matchBoolean variable:variableBoolen 
-                      fullWord:fullWordBoolen forward:forwardBoolean
-                      atBeginOfLineOnly:atBeginOfLineOnlyArg
+pattern:patternString ignoreCase:ignoredCaseBoolean match:matchBoolean variable:variableBoolen
+		      fullWord:fullWordBoolen forward:forwardBoolean
+		      atBeginOfLineOnly:atBeginOfLineOnlyArg
     pattern := patternString.
     ignoreCase := ignoredCaseBoolean.
     match := matchBoolean.
--- a/Make.proto	Mon Jul 18 10:18:55 2016 +0100
+++ b/Make.proto	Fri Jul 29 22:05:57 2016 +0100
@@ -125,78 +125,78 @@
 
 # BEGINMAKEDEPEND --- do not remove this line; make depend needs it
 $(OUTDIR)ButtonController.$(O) ButtonController.$(C) ButtonController.$(H): ButtonController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(STCHDR)
-$(OUTDIR)DialogBox.$(O) DialogBox.$(C) DialogBox.$(H): DialogBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)DialogBox.$(O) DialogBox.$(C) DialogBox.$(H): DialogBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
 $(OUTDIR)EditTextViewCompletionSupport.$(O) EditTextViewCompletionSupport.$(C) EditTextViewCompletionSupport.$(H): EditTextViewCompletionSupport.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)EnterFieldGroup.$(O) EnterFieldGroup.$(C) EnterFieldGroup.$(H): EnterFieldGroup.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)FramedBox.$(O) FramedBox.$(C) FramedBox.$(H): FramedBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
+$(OUTDIR)FramedBox.$(O) FramedBox.$(C) FramedBox.$(H): FramedBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
 $(OUTDIR)GenericToolbarIconLibrary.$(O) GenericToolbarIconLibrary.$(C) GenericToolbarIconLibrary.$(H): GenericToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)Label.$(O) Label.$(C) Label.$(H): Label.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
-$(OUTDIR)ListView.$(O) ListView.$(C) ListView.$(H): ListView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)Label.$(O) Label.$(C) Label.$(H): Label.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)ListView.$(O) ListView.$(C) ListView.$(H): ListView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
 $(OUTDIR)ListViewController.$(O) ListViewController.$(C) ListViewController.$(H): ListViewController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(STCHDR)
 $(OUTDIR)MenuEvent.$(O) MenuEvent.$(C) MenuEvent.$(H): MenuEvent.st $(INCLUDE_TOP)/stx/libbasic/Message.$(H) $(INCLUDE_TOP)/stx/libbasic/MessageSend.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Event.$(H) $(INCLUDE_TOP)/stx/libview/WidgetEvent.$(H) $(INCLUDE_TOP)/stx/libview/WindowEvent.$(H) $(STCHDR)
-$(OUTDIR)ObjectView.$(O) ObjectView.$(C) ObjectView.$(H): ObjectView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
-$(OUTDIR)PanelView.$(O) PanelView.$(C) PanelView.$(H): PanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
-$(OUTDIR)PopUpMenu.$(O) PopUpMenu.$(C) PopUpMenu.$(H): PopUpMenu.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/PopUpView.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
-$(OUTDIR)PullDownMenu.$(O) PullDownMenu.$(C) PullDownMenu.$(H): PullDownMenu.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)ObjectView.$(O) ObjectView.$(C) ObjectView.$(H): ObjectView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)PanelView.$(O) PanelView.$(C) PanelView.$(H): PanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
+$(OUTDIR)PopUpMenu.$(O) PopUpMenu.$(C) PopUpMenu.$(H): PopUpMenu.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/PopUpView.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)PullDownMenu.$(O) PullDownMenu.$(C) PullDownMenu.$(H): PullDownMenu.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
 $(OUTDIR)RadioButtonGroup.$(O) RadioButtonGroup.$(C) RadioButtonGroup.$(H): RadioButtonGroup.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libview2/ValueHolder.$(H) $(INCLUDE_TOP)/stx/libview2/ValueModel.$(H) $(STCHDR)
-$(OUTDIR)ScrollBar.$(O) ScrollBar.$(C) ScrollBar.$(H): ScrollBar.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
-$(OUTDIR)ScrollableView.$(O) ScrollableView.$(C) ScrollableView.$(H): ScrollableView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
-$(OUTDIR)Scroller.$(O) Scroller.$(C) Scroller.$(H): Scroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
+$(OUTDIR)ScrollBar.$(O) ScrollBar.$(C) ScrollBar.$(H): ScrollBar.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
+$(OUTDIR)ScrollableView.$(O) ScrollableView.$(C) ScrollableView.$(H): ScrollableView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
+$(OUTDIR)Scroller.$(O) Scroller.$(C) Scroller.$(H): Scroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(STCHDR)
 $(OUTDIR)SelectionInList.$(O) SelectionInList.$(C) SelectionInList.$(H): SelectionInList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libview2/ValueHolder.$(H) $(INCLUDE_TOP)/stx/libview2/ValueModel.$(H) $(STCHDR)
-$(OUTDIR)VariablePanel.$(O) VariablePanel.$(C) VariablePanel.$(H): VariablePanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
+$(OUTDIR)VariablePanel.$(O) VariablePanel.$(C) VariablePanel.$(H): VariablePanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(STCHDR)
 $(OUTDIR)VariablePanelController.$(O) VariablePanelController.$(C) VariablePanelController.$(H): VariablePanelController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(STCHDR)
 $(OUTDIR)stx_libwidg.$(O) stx_libwidg.$(C) stx_libwidg.$(H): stx_libwidg.st $(INCLUDE_TOP)/stx/libbasic/LibraryDefinition.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/ProjectDefinition.$(H) $(STCHDR)
-$(OUTDIR)Button.$(O) Button.$(C) Button.$(H): Button.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
-$(OUTDIR)CheckLabel.$(O) CheckLabel.$(C) CheckLabel.$(H): CheckLabel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
-$(OUTDIR)EnterBox.$(O) EnterBox.$(C) EnterBox.$(H): EnterBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
-$(OUTDIR)FontPanel.$(O) FontPanel.$(C) FontPanel.$(H): FontPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
-$(OUTDIR)HVScrollableView.$(O) HVScrollableView.$(C) HVScrollableView.$(H): HVScrollableView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollableView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalPanelView.$(O) HorizontalPanelView.$(C) HorizontalPanelView.$(H): HorizontalPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalScrollBar.$(O) HorizontalScrollBar.$(C) HorizontalScrollBar.$(H): HorizontalScrollBar.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollBar.$(H) $(STCHDR)
-$(OUTDIR)HorizontalScroller.$(O) HorizontalScroller.$(C) HorizontalScroller.$(H): HorizontalScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
-$(OUTDIR)InfoBox.$(O) InfoBox.$(C) InfoBox.$(H): InfoBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
-$(OUTDIR)MiniScroller.$(O) MiniScroller.$(C) MiniScroller.$(H): MiniScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
-$(OUTDIR)MultiColumnPanelView.$(O) MultiColumnPanelView.$(C) MultiColumnPanelView.$(H): MultiColumnPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
+$(OUTDIR)Button.$(O) Button.$(C) Button.$(H): Button.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
+$(OUTDIR)CheckLabel.$(O) CheckLabel.$(C) CheckLabel.$(H): CheckLabel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
+$(OUTDIR)EnterBox.$(O) EnterBox.$(C) EnterBox.$(H): EnterBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
+$(OUTDIR)FontPanel.$(O) FontPanel.$(C) FontPanel.$(H): FontPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
+$(OUTDIR)HVScrollableView.$(O) HVScrollableView.$(C) HVScrollableView.$(H): HVScrollableView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollableView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalPanelView.$(O) HorizontalPanelView.$(C) HorizontalPanelView.$(H): HorizontalPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalScrollBar.$(O) HorizontalScrollBar.$(C) HorizontalScrollBar.$(H): HorizontalScrollBar.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollBar.$(H) $(STCHDR)
+$(OUTDIR)HorizontalScroller.$(O) HorizontalScroller.$(C) HorizontalScroller.$(H): HorizontalScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
+$(OUTDIR)InfoBox.$(O) InfoBox.$(C) InfoBox.$(H): InfoBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
+$(OUTDIR)MiniScroller.$(O) MiniScroller.$(C) MiniScroller.$(H): MiniScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
+$(OUTDIR)MultiColumnPanelView.$(O) MultiColumnPanelView.$(C) MultiColumnPanelView.$(H): MultiColumnPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
 $(OUTDIR)MultiSelectionInList.$(O) MultiSelectionInList.$(C) MultiSelectionInList.$(H): MultiSelectionInList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(INCLUDE_TOP)/stx/libview2/ValueHolder.$(H) $(INCLUDE_TOP)/stx/libview2/ValueModel.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInList.$(H) $(STCHDR)
-$(OUTDIR)OptionBox.$(O) OptionBox.$(C) OptionBox.$(H): OptionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
+$(OUTDIR)OptionBox.$(O) OptionBox.$(C) OptionBox.$(H): OptionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(STCHDR)
 $(OUTDIR)PopUpListController.$(O) PopUpListController.$(C) PopUpListController.$(H): PopUpListController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(INCLUDE_TOP)/stx/libwidg/ButtonController.$(H) $(STCHDR)
-$(OUTDIR)SelectionInListView.$(O) SelectionInListView.$(C) SelectionInListView.$(H): SelectionInListView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(STCHDR)
-$(OUTDIR)SequenceView.$(O) SequenceView.$(C) SequenceView.$(H): SequenceView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollableView.$(H) $(STCHDR)
-$(OUTDIR)TextView.$(O) TextView.$(C) TextView.$(H): TextView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(STCHDR)
+$(OUTDIR)SelectionInListView.$(O) SelectionInListView.$(C) SelectionInListView.$(H): SelectionInListView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(STCHDR)
+$(OUTDIR)SequenceView.$(O) SequenceView.$(C) SequenceView.$(H): SequenceView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/ScrollableView.$(H) $(STCHDR)
+$(OUTDIR)TextView.$(O) TextView.$(C) TextView.$(H): TextView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(STCHDR)
 $(OUTDIR)ToggleController.$(O) ToggleController.$(C) ToggleController.$(H): ToggleController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(INCLUDE_TOP)/stx/libwidg/ButtonController.$(H) $(STCHDR)
-$(OUTDIR)VariableHorizontalPanel.$(O) VariableHorizontalPanel.$(C) VariableHorizontalPanel.$(H): VariableHorizontalPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanel.$(H) $(STCHDR)
+$(OUTDIR)VariableHorizontalPanel.$(O) VariableHorizontalPanel.$(C) VariableHorizontalPanel.$(H): VariableHorizontalPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanel.$(H) $(STCHDR)
 $(OUTDIR)VariableHorizontalPanelController.$(O) VariableHorizontalPanelController.$(C) VariableHorizontalPanelController.$(H): VariableHorizontalPanelController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanelController.$(H) $(STCHDR)
-$(OUTDIR)VariableVerticalPanel.$(O) VariableVerticalPanel.$(C) VariableVerticalPanel.$(H): VariableVerticalPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanel.$(H) $(STCHDR)
+$(OUTDIR)VariableVerticalPanel.$(O) VariableVerticalPanel.$(C) VariableVerticalPanel.$(H): VariableVerticalPanel.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanel.$(H) $(STCHDR)
 $(OUTDIR)VariableVerticalPanelController.$(O) VariableVerticalPanelController.$(C) VariableVerticalPanelController.$(H): VariableVerticalPanelController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(INCLUDE_TOP)/stx/libwidg/VariablePanelController.$(H) $(STCHDR)
-$(OUTDIR)VerticalPanelView.$(O) VerticalPanelView.$(C) VerticalPanelView.$(H): VerticalPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
+$(OUTDIR)VerticalPanelView.$(O) VerticalPanelView.$(C) VerticalPanelView.$(H): VerticalPanelView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libwidg/PanelView.$(H) $(STCHDR)
 $(OUTDIR)WorkspaceCompletionSupport.$(O) WorkspaceCompletionSupport.$(C) WorkspaceCompletionSupport.$(H): WorkspaceCompletionSupport.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextViewCompletionSupport.$(H) $(STCHDR)
 $(OUTDIR)XPToolbarIconLibrary.$(O) XPToolbarIconLibrary.$(C) XPToolbarIconLibrary.$(H): XPToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)ArrowButton.$(O) ArrowButton.$(C) ArrowButton.$(H): ArrowButton.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
-$(OUTDIR)EditTextView.$(O) EditTextView.$(C) EditTextView.$(H): EditTextView.st $(INCLUDE_TOP)/stx/libbasic/GenericException.$(H) $(INCLUDE_TOP)/stx/libbasic/Notification.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/Query.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
-$(OUTDIR)EnterBox2.$(O) EnterBox2.$(C) EnterBox2.$(H): EnterBox2.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(STCHDR)
-$(OUTDIR)FileSelectionList.$(O) FileSelectionList.$(C) FileSelectionList.$(H): FileSelectionList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalMiniScroller.$(O) HorizontalMiniScroller.$(C) HorizontalMiniScroller.$(H): HorizontalMiniScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/MiniScroller.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
-$(OUTDIR)ListSelectionBox.$(O) ListSelectionBox.$(C) ListSelectionBox.$(H): ListSelectionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(STCHDR)
+$(OUTDIR)ArrowButton.$(O) ArrowButton.$(C) ArrowButton.$(H): ArrowButton.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
+$(OUTDIR)EditTextView.$(O) EditTextView.$(C) EditTextView.$(H): EditTextView.st $(INCLUDE_TOP)/stx/libbasic/GenericException.$(H) $(INCLUDE_TOP)/stx/libbasic/Notification.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libbasic/Query.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
+$(OUTDIR)EnterBox2.$(O) EnterBox2.$(C) EnterBox2.$(H): EnterBox2.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(STCHDR)
+$(OUTDIR)FileSelectionList.$(O) FileSelectionList.$(C) FileSelectionList.$(H): FileSelectionList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalMiniScroller.$(O) HorizontalMiniScroller.$(C) HorizontalMiniScroller.$(H): HorizontalMiniScroller.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/MiniScroller.$(H) $(INCLUDE_TOP)/stx/libwidg/Scroller.$(H) $(STCHDR)
+$(OUTDIR)ListSelectionBox.$(O) ListSelectionBox.$(C) ListSelectionBox.$(H): ListSelectionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(STCHDR)
 $(OUTDIR)MacOSXToolbarIconLibrary.$(O) MacOSXToolbarIconLibrary.$(C) MacOSXToolbarIconLibrary.$(H): MacOSXToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)MenuView.$(O) MenuView.$(C) MenuView.$(H): MenuView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)PopUpList.$(O) PopUpList.$(C) PopUpList.$(H): PopUpList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
+$(OUTDIR)MenuView.$(O) MenuView.$(C) MenuView.$(H): MenuView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)PopUpList.$(O) PopUpList.$(C) PopUpList.$(H): PopUpList.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
 $(OUTDIR)RadioButtonController.$(O) RadioButtonController.$(C) RadioButtonController.$(H): RadioButtonController.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/Controller.$(H) $(INCLUDE_TOP)/stx/libwidg/ButtonController.$(H) $(INCLUDE_TOP)/stx/libwidg/ToggleController.$(H) $(STCHDR)
-$(OUTDIR)Toggle.$(O) Toggle.$(C) Toggle.$(H): Toggle.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
+$(OUTDIR)Toggle.$(O) Toggle.$(C) Toggle.$(H): Toggle.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(STCHDR)
 $(OUTDIR)VistaToolbarIconLibrary.$(O) VistaToolbarIconLibrary.$(C) VistaToolbarIconLibrary.$(H): VistaToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)WarningBox.$(O) WarningBox.$(C) WarningBox.$(H): WarningBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/InfoBox.$(H) $(STCHDR)
+$(OUTDIR)WarningBox.$(O) WarningBox.$(C) WarningBox.$(H): WarningBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/InfoBox.$(H) $(STCHDR)
 $(OUTDIR)AdwaitaToolbarIconLibrary.$(O) AdwaitaToolbarIconLibrary.$(C) AdwaitaToolbarIconLibrary.$(H): AdwaitaToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/VistaToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)CheckToggle.$(O) CheckToggle.$(C) CheckToggle.$(H): CheckToggle.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(INCLUDE_TOP)/stx/libwidg/Toggle.$(H) $(STCHDR)
-$(OUTDIR)ClickMenuView.$(O) ClickMenuView.$(C) ClickMenuView.$(H): ClickMenuView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/MenuView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)EditField.$(O) EditField.$(C) EditField.$(H): EditField.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
-$(OUTDIR)FileSelectionBox.$(O) FileSelectionBox.$(C) FileSelectionBox.$(H): FileSelectionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(INCLUDE_TOP)/stx/libwidg/ListSelectionBox.$(H) $(STCHDR)
+$(OUTDIR)CheckToggle.$(O) CheckToggle.$(C) CheckToggle.$(H): CheckToggle.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(INCLUDE_TOP)/stx/libwidg/Toggle.$(H) $(STCHDR)
+$(OUTDIR)ClickMenuView.$(O) ClickMenuView.$(C) ClickMenuView.$(H): ClickMenuView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/MenuView.$(H) $(INCLUDE_TOP)/stx/libwidg/SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)EditField.$(O) EditField.$(C) EditField.$(H): EditField.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
+$(OUTDIR)FileSelectionBox.$(O) FileSelectionBox.$(C) FileSelectionBox.$(H): FileSelectionBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(INCLUDE_TOP)/stx/libwidg/ListSelectionBox.$(H) $(STCHDR)
 $(OUTDIR)MacOSX2ToolbarIconLibrary.$(O) MacOSX2ToolbarIconLibrary.$(C) MacOSX2ToolbarIconLibrary.$(H): MacOSX2ToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/MacOSXToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)RadioButton.$(O) RadioButton.$(C) RadioButton.$(H): RadioButton.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(INCLUDE_TOP)/stx/libwidg/Toggle.$(H) $(STCHDR)
-$(OUTDIR)TextCollector.$(O) TextCollector.$(C) TextCollector.$(H): TextCollector.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
+$(OUTDIR)RadioButton.$(O) RadioButton.$(C) RadioButton.$(H): RadioButton.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/Button.$(H) $(INCLUDE_TOP)/stx/libwidg/Label.$(H) $(INCLUDE_TOP)/stx/libwidg/Toggle.$(H) $(STCHDR)
+$(OUTDIR)TextCollector.$(O) TextCollector.$(C) TextCollector.$(H): TextCollector.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
 $(OUTDIR)Windows8ToolbarIconLibrary.$(O) Windows8ToolbarIconLibrary.$(C) Windows8ToolbarIconLibrary.$(H): Windows8ToolbarIconLibrary.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libwidg/GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/VistaToolbarIconLibrary.$(H) $(INCLUDE_TOP)/stx/libwidg/XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)YesNoBox.$(O) YesNoBox.$(C) YesNoBox.$(H): YesNoBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/InfoBox.$(H) $(INCLUDE_TOP)/stx/libwidg/WarningBox.$(H) $(STCHDR)
-$(OUTDIR)FileSaveBox.$(O) FileSaveBox.$(C) FileSaveBox.$(H): FileSaveBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(INCLUDE_TOP)/stx/libwidg/FileSelectionBox.$(H) $(INCLUDE_TOP)/stx/libwidg/ListSelectionBox.$(H) $(STCHDR)
-$(OUTDIR)Workspace.$(O) Workspace.$(C) Workspace.$(H): Workspace.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextCollector.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
-$(OUTDIR)CodeView.$(O) CodeView.$(C) CodeView.$(H): CodeView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextCollector.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(INCLUDE_TOP)/stx/libwidg/Workspace.$(H) $(STCHDR)
+$(OUTDIR)YesNoBox.$(O) YesNoBox.$(C) YesNoBox.$(H): YesNoBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/InfoBox.$(H) $(INCLUDE_TOP)/stx/libwidg/WarningBox.$(H) $(STCHDR)
+$(OUTDIR)FileSaveBox.$(O) FileSaveBox.$(C) FileSaveBox.$(H): FileSaveBox.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/ModalBox.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/StandardSystemView.$(H) $(INCLUDE_TOP)/stx/libview/TopView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/DialogBox.$(H) $(INCLUDE_TOP)/stx/libwidg/EnterBox.$(H) $(INCLUDE_TOP)/stx/libwidg/FileSelectionBox.$(H) $(INCLUDE_TOP)/stx/libwidg/ListSelectionBox.$(H) $(STCHDR)
+$(OUTDIR)Workspace.$(O) Workspace.$(C) Workspace.$(H): Workspace.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextCollector.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(STCHDR)
+$(OUTDIR)CodeView.$(O) CodeView.$(C) CodeView.$(H): CodeView.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/View.$(H) $(INCLUDE_TOP)/stx/libwidg/EditTextView.$(H) $(INCLUDE_TOP)/stx/libwidg/ListView.$(H) $(INCLUDE_TOP)/stx/libwidg/TextCollector.$(H) $(INCLUDE_TOP)/stx/libwidg/TextView.$(H) $(INCLUDE_TOP)/stx/libwidg/Workspace.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
 
--- a/Make.spec	Mon Jul 18 10:18:55 2016 +0100
+++ b/Make.spec	Fri Jul 29 22:05:57 2016 +0100
@@ -22,7 +22,7 @@
 #                (if removed, they will be created as common
 #  -Pxxx       : defines the package
 #  -Zxxx       : a prefix for variables within the classLib
-#  -Dxxx       : defines passed to to CC for inline C-code
+#  -Dxxx       : defines passed to CC for inline C-code
 #  -Ixxx       : include path passed to CC for inline C-code
 #  +optspace   : optimized for space
 #  +optspace2  : optimized more for space
--- a/Scroller.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/Scroller.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
@@ -1255,7 +1257,7 @@
             "/ color gradient drawing
             "/ with colors rougly smilar to the vista colors, which are:
             "/ 243 242 240 236 234 233 215 211 207 205 200 192 206
-            clr2 := styleSheet colorAt:#'scroller.vista3DStyleLightColor' default:Color white.
+            clr2 := styleSheet colorAt:#'scroller.vista3DStyleLightColor' default:self whiteColor.
             
             (orientation == #vertical) ifTrue:[
                 n := w
--- a/SelectionInListView.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/SelectionInListView.st	Fri Jul 29 22:05:57 2016 +0100
@@ -77,7 +77,7 @@
     by the change mechanism (performs changeMsg) and vice versa, the view
     updates if the model changes (with aspect of either #list or #selectionIndex).
 
-    Before actually adding entries to the the selection, a checkBlock (if non-nil) is evaluated 
+    Before actually adding entries to the selection, a checkBlock (if non-nil) is evaluated 
     passing the number of the entry whch is about to be selected as argument.
     The select change operation is only done if this returns true. This allows
     interception of select, for example to query the user if he/she wants to save
--- a/TextCollector.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/TextCollector.st	Fri Jul 29 22:05:57 2016 +0100
@@ -479,7 +479,6 @@
     m := super editMenu.
     ((sensor := self sensor) notNil and:[sensor ctrlDown and:[sensor shiftDown not]]) ifTrue:[
         sub := m.
-        m := nil.
     ] ifFalse:[
         sub := m subMenuAt:#others.
     ].
--- a/TextView.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/TextView.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,8 +1,6 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
-	      All Rights Reserved
+              All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -11,31 +9,33 @@
  other person.  No title to or ownership of the software is
  hereby transferred.
 "
+'From Smalltalk/X, Version:7.1.0.0 on 15-07-2016 at 17:19:36'                   !
+
 "{ Package: 'stx:libwidg' }"
 
 "{ NameSpace: Smalltalk }"
 
 ListView subclass:#TextView
-	instanceVariableNames:'selectionStartLine selectionStartCol selectionEndLine
-		selectionEndCol clickPos clickStartLine clickStartCol clickLine
-		clickCol clickCount expandingTop wordStartCol wordStartLine
-		wordEndCol wordEndLine selectionFgColor selectionBgColor
-		selectStyle directoryForFileDialog defaultFileNameForFileDialog
-		externalEncoding contentsWasSaved searchAction lastSearchPattern
-		lastSearchWasMatch lastSearchIgnoredCase lastSearchDirection
-		lastSearchWasVariableSearch parenthesisSpecification dropSource
-		dragIsActive saveAction st80SelectMode searchBarActionBlock'
-	classVariableNames:'DefaultViewBackground DefaultSelectionForegroundColor
-		DefaultSelectionBackgroundColor
-		DefaultAlternativeSelectionForegroundColor
-		DefaultAlternativeSelectionBackgroundColor MatchDelayTime
-		WordSelectCatchesBlanks LastSearchPatterns
-		NumRememberedSearchPatterns LastSearchIgnoredCase
-		LastSearchWasMatch DefaultParenthesisSpecification
-		LastSearchWasMatchWithRegex LastSearchWasWrapAtEndOfText
-		LastSearchWasReplace LastSearchReplacedString'
-	poolDictionaries:''
-	category:'Views-Text'
+        instanceVariableNames:'selectionStartLine selectionStartCol selectionEndLine
+                selectionEndCol clickPos clickStartLine clickStartCol clickLine
+                clickCol clickCount expandingTop wordStartCol wordStartLine
+                wordEndCol wordEndLine selectionFgColor selectionBgColor
+                selectStyle directoryForFileDialog defaultFileNameForFileDialog
+                externalEncoding contentsWasSaved searchAction lastSearchPattern
+                lastSearchWasMatch lastSearchIgnoredCase lastSearchDirection
+                lastSearchWasVariableSearch parenthesisSpecification dropSource
+                dragIsActive saveAction st80SelectMode searchBarActionBlock'
+        classVariableNames:'DefaultViewBackground DefaultSelectionForegroundColor
+                DefaultSelectionBackgroundColor
+                DefaultAlternativeSelectionForegroundColor
+                DefaultAlternativeSelectionBackgroundColor MatchDelayTime
+                WordSelectCatchesBlanks LastSearchPatterns
+                NumRememberedSearchPatterns LastSearchIgnoredCase
+                LastSearchWasMatch DefaultParenthesisSpecification
+                LastSearchWasMatchWithRegex LastSearchWasWrapAtEndOfText
+                LastSearchWasReplace LastSearchReplacedString'
+        poolDictionaries:''
+        category:'Views-Text'
 !
 
 !TextView class methodsFor:'documentation'!
@@ -43,7 +43,7 @@
 copyright
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
-	      All Rights Reserved
+              All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -86,27 +86,27 @@
       contentsWasSaved        <Boolean>               set to true, whenever saved in a file
 
       externalEncoding        <Symbol|nil>            external encoding, used when text is saved to
-						      a file. Usually something like
-						      #jis7, #euc, #sjis etc.
-						      (currently only passed down from the
-						       fileBrowser)
+                                                      a file. Usually something like
+                                                      #jis7, #euc, #sjis etc.
+                                                      (currently only passed down from the
+                                                       fileBrowser)
 
       dropSource              <DropSource>            drag operation descriptor or nil (dragging disabled)
       dragIsActive            <Boolean>               true, drag operation is activated
 
       searchAction            <Block>                 an autosearch action; typically set by the browser.
-						      Will be used as default when searchFwd/searchBwd is
-						      pressed. If the searchPattern is changed, no autosearch
-						      action will be executed.
+                                                      Will be used as default when searchFwd/searchBwd is
+                                                      pressed. If the searchPattern is changed, no autosearch
+                                                      action will be executed.
 
       searchBarActionBlock    <Block>                 search action block for embedded search
-						      panel. Used as second chance for searchFwd/bwd
+                                                      panel. Used as second chance for searchFwd/bwd
 
     [class variables:]
-	ST80Selections        <Boolean>               enables ST80 style doubleclick behavior
-						      (right after opening parenthesis, right before
-						       closing parenthesis, at begin of a line
-						       at begin of text)
+        ST80Selections        <Boolean>               enables ST80 style doubleclick behavior
+                                                      (right after opening parenthesis, right before
+                                                       closing parenthesis, at begin of a line
+                                                       at begin of text)
 
     [StyleSheet parameters:]
 
@@ -119,14 +119,14 @@
       text.selectionBackgroundColor             defaults to textForegroundColor
 
       text.alternativeSelectionForegroundColor  pasted text (i.e. paste will not replace)
-						defaults to selectionForegroundColor
+                                                defaults to selectionForegroundColor
       text.alternativeSelectionBackgroundColor  pasted text (i.e. paste will not replace)
-						defaults to selectionBackgroundColor
+                                                defaults to selectionBackgroundColor
     [author:]
-	Claus Gittinger
+        Claus Gittinger
 
     [see also:]
-	EditTextView CodeView Workspace
+        EditTextView CodeView Workspace
 "
 !
 
@@ -137,18 +137,18 @@
     they may also be opened as a textEditor;
 
     open a (readonly) textView on some information text:
-							[exBegin]
-	TextView
-	    openWith:'read this'
-	    title:'demonstration'
-							[exEnd]
+                                                        [exBegin]
+        TextView
+            openWith:'read this'
+            title:'demonstration'
+                                                        [exEnd]
 
     the same, but open it modal:
-							[exBegin]
-	TextView
-	    openModalWith:'read this first'
-	    title:'demonstration'
-							[exEnd]
+                                                        [exBegin]
+        TextView
+            openModalWith:'read this first'
+            title:'demonstration'
+                                                        [exEnd]
 
 
     open it modal (but editable) on some text:
@@ -159,26 +159,26 @@
     However, usually an applicationModel is installed as the
     editor-topViews application. This would get a closeRequest,
     where it could handle things.
-							[exBegin]
-	|m textView|
-
-	m := 'read this first' asValue.
-	textView := EditTextView openModalOnModel:m.
-	textView modified ifTrue:[
-	    (self confirm:'text was not accepted - do it now ?')
-	    ifTrue:[
-		m value:textView contents
-	    ]
-	].
-
-	Transcript showCR:m value.
-							[exEnd]
+                                                        [exBegin]
+        |m textView|
+
+        m := 'read this first' asValue.
+        textView := EditTextView openModalOnModel:m.
+        textView modified ifTrue:[
+            (self confirm:'text was not accepted - do it now ?')
+            ifTrue:[
+                m value:textView contents
+            ]
+        ].
+
+        Transcript showCR:m value.
+                                                        [exEnd]
 
 
     open a textEditor on some file:
-							[exBegin]
-	EditTextView openOn:'Makefile'
-							[exEnd]
+                                                        [exBegin]
+        EditTextView openOn:'Makefile'
+                                                        [exEnd]
 
 "
 
@@ -190,28 +190,28 @@
     "for ST-80 compatibility"
 
     ^ (self new)
-	on:aModel
-	aspect:aspect
-	list:aspect
-	change:change
-	menu:menu
-	initialSelection:initial
+        on:aModel
+        aspect:aspect
+        list:aspect
+        change:change
+        menu:menu
+        initialSelection:initial
 !
 
 with:someText
     ^ (self new)
-	contents:someText
+        contents:someText
 ! !
 
 !TextView class methodsFor:'class initialization'!
 
 initialize
     DefaultParenthesisSpecification isNil ifTrue:[
-	DefaultParenthesisSpecification := IdentityDictionary new.
-	DefaultParenthesisSpecification at:#open        put:#( $( $[ ${ "$> $<") .
-	DefaultParenthesisSpecification at:#close       put:#( $) $] $} "$> $<").
-	DefaultParenthesisSpecification at:#ignore      put:#( $' $" '$[' '$]' '${' '$)' ).
-	DefaultParenthesisSpecification at:#eolComment  put:'"/'.     "/ sigh - must be 2 characters
+        DefaultParenthesisSpecification := IdentityDictionary new.
+        DefaultParenthesisSpecification at:#open        put:#( $( $[ ${ "$> $<") .
+        DefaultParenthesisSpecification at:#close       put:#( $) $] $} "$> $<").
+        DefaultParenthesisSpecification at:#ignore      put:#( $' $" '$[' '$]' '${' '$)' ).
+        DefaultParenthesisSpecification at:#eolComment  put:'"/'.     "/ sigh - must be 2 characters
     ].
 ! !
 
@@ -227,11 +227,11 @@
 
     i := self classResources at:'ICON' default:nil.
     i isNil ifTrue:[
-	nm := ClassResources at:'ICON_FILE' default:'Editor.xbm'.
-	i := Smalltalk imageFromFileNamed:nm forClass:self.
+        nm := ClassResources at:'ICON_FILE' default:'Editor.xbm'.
+        i := Smalltalk imageFromFileNamed:nm forClass:self.
     ].
     i notNil ifTrue:[
-	i := i onDevice:Display
+        i := i onDevice:Display
     ].
     ^ i
 
@@ -444,7 +444,7 @@
 		 )
                 (ViewSpec
                    name: 'MatchBox'
-                   component: 
+                   component:
                   (SpecCollection
                      collection: (
                       (CheckBoxSpec
@@ -467,7 +467,7 @@
                          translateLabel: true
                        )
                       )
-                    
+
                    )
                    extent: (Point 475 24)
 		 )
@@ -786,9 +786,9 @@
     top := StandardSystemView label:label icon:self defaultIcon.
 
     frame := HVScrollableView
-		for:self
-		miniScrollerH:true miniScrollerV:false
-		in:top.
+                for:self
+                miniScrollerH:true miniScrollerV:false
+                in:top.
     frame origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
     ^ frame scrolledView
 
@@ -833,7 +833,7 @@
     aTitle notNil ifTrue:[top label:aTitle].
 
     aStringOrStringCollection notNil ifTrue:[
-	textView contents:aStringOrStringCollection
+        textView contents:aStringOrStringCollection
     ].
 
     ^ textView
@@ -897,7 +897,7 @@
 
     selectionStartLine isNil ifTrue:[^ 0].
     ^ self characterPositionOfLine:selectionStartLine
-			       col:selectionStartCol
+                               col:selectionStartCol
 
     "Modified: 14.8.1997 / 16:35:37 / cg"
 !
@@ -908,7 +908,7 @@
 
     selectionStartLine isNil ifTrue:[^ 0].
     ^ self characterPositionOfLine:selectionEndLine
-			       col:selectionEndCol
+                               col:selectionEndCol
 
     "Created: 14.8.1997 / 16:35:24 / cg"
     "Modified: 14.8.1997 / 16:35:45 / cg"
@@ -1012,11 +1012,11 @@
 contents:newContents selected:selectedBoolean
     self contents:newContents.
     selectedBoolean ifTrue:[
-	list size == 1 ifTrue:[
-	    self selectFromLine:1 col:1 toLine:1 col:(list at:1) size
-	] ifFalse:[
-	    self selectAll
-	]
+        list size == 1 ifTrue:[
+            self selectFromLine:1 col:1 toLine:1 col:(list at:1) size
+        ] ifFalse:[
+            self selectAll
+        ]
     ]
 
     "
@@ -1072,10 +1072,10 @@
     super setContents:something.
 
     selStartLine notNil ifTrue:[
-	self
-	    selectFromLine:selStartLine col:selStartCol
-	    toLine:selEndLine col:selEndCol.
-	selectStyle := selStyle
+        self
+            selectFromLine:selStartLine col:selStartCol
+            toLine:selEndLine col:selEndCol.
+        selectStyle := selStyle
     ].
 
 
@@ -1098,9 +1098,9 @@
 
     self loadTextFile:aFileName.
     aFileName notNil ifTrue:[
-	baseName := aFileName asFilename baseName.
-	self topView label:baseName.
-	self defaultFileNameForFileDialog:baseName.
+        baseName := aFileName asFilename baseName.
+        self topView label:baseName.
+        self defaultFileNameForFileDialog:baseName.
     ].
 
     "Created: / 25-10-2006 / 14:47:13 / cg"
@@ -1129,35 +1129,35 @@
     beginCol := self findBeginOfWordAtLine:selectLine col:selectCol.
     endCol := self findEndOfWordAtLine:selectLine col:selectCol.
     endCol == 0 ifTrue:[
-	endLine := selectLine + 1
+        endLine := selectLine + 1
     ].
 
     "is the initial character within a word ?"
     (wordCheck value:thisCharacter) ifTrue:[
-	"
-	 try to catch a blank ...
-	"
-
-	WordSelectCatchesBlanks ifTrue:[
-	    ((beginCol == 1)
-	    or:[(self characterAtLine:selectLine col:(beginCol - 1))
-		 ~~ Character space]) ifTrue:[
-		((self characterAtLine:selectLine col:(endCol + 1))
-		  == Character space) ifTrue:[
-		    endCol := endCol + 1.
-		    flag := #wordRight
-		]
-	    ] ifFalse:[
-		beginCol := beginCol - 1.
-		flag := #wordLeft
-	    ].
-	].
+        "
+         try to catch a blank ...
+        "
+
+        WordSelectCatchesBlanks ifTrue:[
+            ((beginCol == 1)
+            or:[(self characterAtLine:selectLine col:(beginCol - 1))
+                 ~~ Character space]) ifTrue:[
+                ((self characterAtLine:selectLine col:(endCol + 1))
+                  == Character space) ifTrue:[
+                    endCol := endCol + 1.
+                    flag := #wordRight
+                ]
+            ] ifFalse:[
+                beginCol := beginCol - 1.
+                flag := #wordLeft
+            ].
+        ].
     ].
     aFiveArgBlock value:selectLine
-		  value:beginCol
-		  value:endLine
-		  value:endCol
-		  value:flag
+                  value:beginCol
+                  value:endLine
+                  value:endCol
+                  value:flag
 
     "Modified: 18.3.1996 / 17:31:04 / cg"
 ! !
@@ -1197,7 +1197,7 @@
      and selection. Added for ST-80 compatibility"
 
     aspectSym notNil ifTrue:[aspectMsg := aspectSym.
-			     listMsg isNil ifTrue:[listMsg := aspectSym]].
+                             listMsg isNil ifTrue:[listMsg := aspectSym]].
     changeSym notNil ifTrue:[changeMsg := changeSym].
     listSym notNil ifTrue:[listMsg := listSym].
     menuSym notNil ifTrue:[menuMsg := menuSym].
@@ -1214,15 +1214,15 @@
     "enable/disable dragging support
     "
     aBoolean ifFalse:[
-	dropSource := nil.
+        dropSource := nil.
     ] ifTrue:[
-	dropSource isNil ifTrue:[
-	    dropSource := DropSource
-			    receiver:self
-			    argument:nil
-			    dropObjectSelector:#collectionOfDragObjects
-			    displayObjectSelector:nil
-	]
+        dropSource isNil ifTrue:[
+            dropSource := DropSource
+                            receiver:self
+                            argument:nil
+                            dropObjectSelector:#collectionOfDragObjects
+                            displayObjectSelector:nil
+        ]
     ].
 !
 
@@ -1268,9 +1268,10 @@
 
     |fontsEncoding msg filter f defaultFont pref matchingFonts
      matchingFamilyFonts matchingFamilyFaceFonts matchingFamilyFaceStyleFonts
-     matchingFamilyFaceStyleSizeFonts|
-
-    fontsEncoding := gc font encoding.
+     matchingFamilyFaceStyleSizeFonts font|
+
+    font := gc font.
+    fontsEncoding := font encoding.
 
     pref := FontDescription preferredFontEncodingFor:newEncoding.
 
@@ -1291,6 +1292,10 @@
     matchingFamilyFaceFonts := matchingFamilyFonts select:[:f | f face = gc font face].
     matchingFamilyFaceStyleFonts := matchingFamilyFaceFonts select:[:f | f style = gc font style].
     matchingFamilyFaceStyleSizeFonts := matchingFamilyFaceStyleFonts select:[:f | f size = gc font size].
+    matchingFamilyFonts := matchingFonts select:[:f | f family = font family].
+    matchingFamilyFaceFonts := matchingFamilyFonts select:[:f | f face = font face].
+    matchingFamilyFaceStyleFonts := matchingFamilyFaceFonts select:[:f | f style = font style].
+    matchingFamilyFaceStyleSizeFonts := matchingFamilyFaceStyleFonts select:[:f | f size = font size].
     matchingFamilyFaceStyleSizeFonts size > 0 ifTrue:[
         defaultFont := matchingFamilyFaceStyleSizeFonts first
     ] ifFalse:[
@@ -1413,27 +1418,27 @@
     "multi-mouse-click - select word under pointer"
 
     (button == 1) ifTrue:[
-	clickPos := x @ y.
-
-	"/ The searchAction is mantained until a cut/replace or a search with a user selection is done
+        clickPos := x @ y.
+
+        "/ The searchAction is mantained until a cut/replace or a search with a user selection is done
 "/        self clearSearchAction.
 
-	clickCount notNil ifTrue:[
-	    clickCount := clickCount + 1.
-	    (clickCount == 2) ifTrue:[
-		self doubleClickX:x y:y
-	    ] ifFalse:[
-		(clickCount == 3) ifTrue:[
-		    self tripleClickX:x y:y
-		] ifFalse:[
-		    (clickCount == 4) ifTrue:[
-			self quadClickX:x y:y
-		    ]
-		]
-	    ]
-	]
+        clickCount notNil ifTrue:[
+            clickCount := clickCount + 1.
+            (clickCount == 2) ifTrue:[
+                self doubleClickX:x y:y
+            ] ifFalse:[
+                (clickCount == 3) ifTrue:[
+                    self tripleClickX:x y:y
+                ] ifFalse:[
+                    (clickCount == 4) ifTrue:[
+                        self quadClickX:x y:y
+                    ]
+                ]
+            ]
+        ]
     ] ifFalse:[
-	super buttonMultiPress:button x:x y:y
+        super buttonMultiPress:button x:x y:y
     ]
 
     "Modified: 11.9.1997 / 04:15:35 / cg"
@@ -1448,30 +1453,30 @@
     sensor       := self sensor.
 
     (button == 1) ifTrue:[
-	sensor shiftDown ifTrue:[
-	    "mouse-click with shift - adding to selection"
-	    self extendSelectionToX:x y:y.
-	    ^ self
-	].
-
-	clickVisibleLine := self visibleLineOfY:y.
-	clickPos := x @ y.
-	clickCol := self colOfX:x inVisibleLine:clickVisibleLine.
-	clickLine := self visibleLineToAbsoluteLine:clickVisibleLine.
-	clickStartLine := clickLine.
-	clickStartCol := clickCol.
-
-	(self canDrag
-	and:[(self isInSelection:clickLine col:clickCol)
-	and:[UserPreferences current startTextDragWithControl not
-	     or:[sensor ctrlDown]]]) ifTrue:[
-	    dragIsActive := true
-	] ifFalse:[
-	    self unselect.
-	].
-	clickCount := 1
+        sensor shiftDown ifTrue:[
+            "mouse-click with shift - adding to selection"
+            self extendSelectionToX:x y:y.
+            ^ self
+        ].
+
+        clickVisibleLine := self visibleLineOfY:y.
+        clickPos := x @ y.
+        clickCol := self colOfX:x inVisibleLine:clickVisibleLine.
+        clickLine := self visibleLineToAbsoluteLine:clickVisibleLine.
+        clickStartLine := clickLine.
+        clickStartCol := clickCol.
+
+        (self canDrag
+        and:[(self isInSelection:clickLine col:clickCol)
+        and:[UserPreferences current startTextDragWithControl not
+             or:[sensor ctrlDown]]]) ifTrue:[
+            dragIsActive := true
+        ] ifFalse:[
+            self unselect.
+        ].
+        clickCount := 1
     ] ifFalse:[
-	super buttonPress:button x:x y:y
+        super buttonPress:button x:x y:y
     ]
 
     "Modified: / 20.5.1999 / 17:02:45 / cg"
@@ -1864,8 +1869,8 @@
     "handle some keyboard input (there is not much to be done here)"
 
     <resource: #keyboard (#Find #Copy #FindNext #FindPrev #FindAgain
-			  #GotoLine #SelectAll #SaveAs #Print
-			  #'F*' #'f*' #ZoomIn #ZoomOut)>
+                          #GotoLine #SelectAll #SaveAs #Print
+                          #'F*' #'f*')>
 
     (key == #Find) ifTrue:[self search. ^self].
     (key == #Copy) ifTrue:[self copySelection. ^self].
@@ -1880,8 +1885,6 @@
     (key == #SaveAs)    ifTrue:[self save.    ^self].
     (key == #Print)     ifTrue:[self doPrint. ^self].
 
-    (key == #ZoomIn or:[key == #ZoomOut]) ifTrue:[ self fontLargerOrSmaller:(key == #ZoomIn) ].
-
     "
      shift-Fn defines a key-sequence
      Fn       pastes that sequence
@@ -1890,14 +1893,14 @@
      (see EditTextView>>keyPress:x:y and Workspace>>keyPress:x:y)
     "
     (key size > 1 and:[(key at:1) asLowercase == $f]) ifTrue:[
-	(('[fF][0-9]' match:key)
-	or:['[fF][0-9][0-9]' match:key]) ifTrue:[
-	    self sensor shiftDown ifTrue:[
-		UserPreferences current functionKeySequences
-		    at:key put:(self selection)
-	    ].
-	    ^ self
-	].
+        (('[fF][0-9]' match:key)
+        or:['[fF][0-9][0-9]' match:key]) ifTrue:[
+            self sensor shiftDown ifTrue:[
+                UserPreferences current functionKeySequences
+                    at:key put:(self selection)
+            ].
+            ^ self
+        ].
     ].
 
     super keyPress:key x:x y:y
@@ -2007,22 +2010,22 @@
     filename := aFileName asFilename.
 
     (FileStream userInitiatedFileSaveQuerySignal queryWith:filename) ifFalse:[
-	msg := resources string:'Refused to append to file ''%1'' !!' with:filename name.
-	self warn:(msg , '\\(ST/X internal permission check)' ) withCRs.
-	^ self
+        msg := resources string:'Refused to append to file ''%1'' !!' with:filename name.
+        self warn:(msg , '\\(ST/X internal permission check)' ) withCRs.
+        ^ self
     ].
 
     [
-	aStream := filename appendingWriteStream.
-	[
-	    self fileOutContentsOn:aStream compressTabs:true encoding:externalEncoding.
-	] ensure:[
-	    aStream close.
-	].
-	contentsWasSaved := true
+        aStream := filename appendingWriteStream.
+        [
+            self fileOutContentsOn:aStream compressTabs:true encoding:externalEncoding.
+        ] ensure:[
+            aStream close.
+        ].
+        contentsWasSaved := true
     ] on:FileStream openErrorSignal do:[:ex|
-	msg := resources string:'cannot append to file %1 !!' with:filename name.
-	self warn:(msg , '\\(' , FileStream lastErrorString , ')' ) withCRs
+        msg := resources string:'cannot append to file %1 !!' with:filename name.
+        self warn:(msg , '\\(' , FileStream lastErrorString , ')' ) withCRs
     ]
 
     "Modified: / 27-07-2012 / 09:41:18 / cg"
@@ -2036,7 +2039,7 @@
     self withWaitCursorDo:[
         fp := FontPanel new.
         fp withChangeFontInViewsAllCheckBox:true.
-        newFont := fp fontFromUserInitial:self font.
+        newFont := fp fontFromUserInitial:gc font.
     ].
     newFont notNil ifTrue:[
 	self font:newFont.
@@ -2046,7 +2049,7 @@
             userPrefs := UserPreferences current.
             fontPrefs := userPrefs fontPreferences.
             fontPrefs isNil ifTrue:[ fontPrefs := newFontPrefs := Dictionary new ].
-            
+
             TextView defaultFont:newFont.
             fontPrefs at:#Text put:(newFont storeString).
             newFontPrefs notNil ifTrue:[ userPrefs fontPreferences:newFontPrefs ].
@@ -2054,8 +2057,8 @@
             DebugView newDebugger.
             TextView allSubInstances do:[:v |
                 v font:newFont
-            ].    
-        ].    
+            ].
+        ].
     ]
 
     "Modified: 27.2.1996 / 00:53:51 / cg"
@@ -2068,11 +2071,11 @@
 
     text := self selection.
     text notNil ifTrue:[
-	self unselect.
-
-	"/ forget any emphasis ...
-	text := text collect:[:l | l isNil ifTrue:[l] ifFalse:[l string]].
-	self setClipboardText:text.
+        self unselect.
+
+        "/ forget any emphasis ...
+        text := text collect:[:l | l isNil ifTrue:[l] ifFalse:[l string]].
+        self setClipboardText:text.
     ]
 
     "Modified: 17.5.1996 / 08:57:54 / cg"
@@ -2094,19 +2097,19 @@
     list isNil ifTrue:[^ self].
 
     self withWaitCursorDo:[
-	printStream := Printer new.
-	printStream supportsContext ifTrue:[
-	    printStream printerContext font:(self font).
-	].
-
-	Printer writeErrorSignal handle:[:ex |
-	    self warn:('error while printing:\\'
-			, ex description
-			, '\\(printing with: ' , (Printer printCommand) , ')') withCRs
-	] do:[
-	    self fileOutContentsOn:printStream.
-	].
-	printStream close
+        printStream := Printer new.
+        printStream supportsContext ifTrue:[
+            printStream printerContext font:(self font).
+        ].
+
+        Printer writeErrorSignal handle:[:ex |
+            self warn:('error while printing:\\'
+                        , ex description
+                        , '\\(printing with: ' , (Printer printCommand) , ')') withCRs
+        ] do:[
+            self fileOutContentsOn:printStream.
+        ].
+        printStream close
     ].
 
     "Created: / 06-05-1996 / 16:11:26 / cg"
@@ -2122,21 +2125,21 @@
     |items m|
 
     items := #(
-			('Copy'          copySelection  Copy)
-			('-'             nil            )
-			('Search...'     search         Find)
-			('Goto Line...'  gotoLine       GotoLine)
-			('-'             nil            )
-			('Font...'       changeFont     )
-			('-'             nil            )
-			('Save As...'    save           SaveAs)
-			('Print'         doPrint        Print)
-		).
+                        ('Copy'          copySelection  Copy)
+                        ('-'             nil            )
+                        ('Search...'     search         Find)
+                        ('Goto Line...'  gotoLine       GotoLine)
+                        ('-'             nil            )
+                        ('Font...'       changeFont     )
+                        ('-'             nil            )
+                        ('Save As...'    save           SaveAs)
+                        ('Print'         doPrint        Print)
+                ).
 
     m := PopUpMenu itemList:items resources:resources.
 
     self hasSelectionForCopy ifFalse:[
-	m disable:#copySelection.
+        m disable:#copySelection.
     ].
     ^ m
 
@@ -2151,18 +2154,6 @@
     "Created: 31.7.1997 / 19:13:58 / cg"
 !
 
-fontLargerOrSmaller:largerBoolean
-    |newFont|
-
-    newFont := gc font asSize:(largerBoolean
-			    ifTrue:[gc font size + 1]
-			    ifFalse:[(gc font size-1) max:4]).
-    self font:newFont.
-
-    "Modified: / 27-02-1996 / 00:53:51 / cg"
-    "Created: / 10-03-2012 / 09:38:32 / cg"
-!
-
 gotoLine
     "show a box to enter lineNumber for positioning;
      The entered number may be prefixed by a + or -;
@@ -2171,41 +2162,41 @@
     |l lineNumberBox input lineToGo relative|
 
     lineNumberBox :=
-	EnterBox
-	   title:(resources string:'Line number (or +/- relativeNr):')
-	   okText:(resources string:'Goto')
-	   abortText:(resources string:'Cancel')
-	   action:[:l | input := l].
+        EnterBox
+           title:(resources string:'Line number (or +/- relativeNr):')
+           okText:(resources string:'Goto')
+           abortText:(resources string:'Cancel')
+           action:[:l | input := l].
 
     l := self defaultForGotoLine.
     l notNil ifTrue:[
-	l := l printString
+        l := l printString
     ].
     lineNumberBox initialText:l .
     lineNumberBox label:(resources string:'Goto Line').
     lineNumberBox showAtPointer.
 
     input size > 0 ifTrue:[
-	input := input withoutSpaces.
-	input size > 0 ifTrue:[
-	    (input startsWith:$+) ifTrue:[
-		relative := 1.
-	    ] ifFalse:[
-		(input startsWith:$-) ifTrue:[
-		    relative := -1.
-		].
-	    ].
-	    relative notNil ifTrue:[
-		input := input copyFrom:2.
-	    ].
-	    lineToGo := Integer readFromString:input onError:nil.
-	    lineToGo notNil ifTrue:[
-		relative notNil ifTrue:[
-		    lineToGo := self currentLine + (lineToGo * relative)
-		].
-		self gotoLine:lineToGo
-	    ]
-	]
+        input := input withoutSpaces.
+        input size > 0 ifTrue:[
+            (input startsWith:$+) ifTrue:[
+                relative := 1.
+            ] ifFalse:[
+                (input startsWith:$-) ifTrue:[
+                    relative := -1.
+                ].
+            ].
+            relative notNil ifTrue:[
+                input := input copyFrom:2.
+            ].
+            lineToGo := Integer readFromString:input onError:nil.
+            lineToGo notNil ifTrue:[
+                relative notNil ifTrue:[
+                    lineToGo := self currentLine + (lineToGo * relative)
+                ].
+                self gotoLine:lineToGo
+            ]
+        ]
     ].
 
     "Modified: / 17.5.1998 / 20:07:59 / cg"
@@ -2216,11 +2207,11 @@
      and save contents into that file."
 
     Dialog
-	requestSaveFileName:(resources string:'Save contents in:')
-	default:defaultFileNameForFileDialog
-	fromDirectory:directoryForFileDialog
-	action:[:fileName | self saveAs:fileName]
-	appendAction:[:fileName | self appendTo:fileName]
+        requestSaveFileName:(resources string:'Save contents in:')
+        default:defaultFileNameForFileDialog
+        fromDirectory:directoryForFileDialog
+        action:[:fileName | self saveAs:fileName]
+        appendAction:[:fileName | self appendTo:fileName]
 !
 
 openSearchBoxAndSearch
@@ -2252,15 +2243,15 @@
         (modal not
         and:[ searchBox window realized ]) ifTrue:[
             "/ reuse it.
-            searchBox window 
+            searchBox window
                 raiseDeiconified;
                 requestFocus;
                 assignKeyboardFocusToFirstKeyboardConsumer.
             ^ self.
-        ].    
+        ].
         searchBox closeRequest.
     ].
-    
+
     ign := lastSearchIgnoredCase "? LastSearchIgnoredCase " ? true.
     caseHolder := ign not asValue.
 
@@ -2311,7 +2302,7 @@
 				and:[selectedVariable notNil]].
 
 	isVariableSearch ifTrue:[
-            searchAction := 
+            searchAction :=
                 [
                     self searchVariableWithSyntaxElement:selectedVariable forward:fwd
                 ].
@@ -2323,17 +2314,17 @@
             LastSearchWasWrapAtEndOfText := wrapAtEndHolder value.
             LastSearchWasReplace :=replaceBooleanHolder value.
             LastSearchReplacedString := replaceTextHolder value.
-            
+
 	    pattern := patternHolder value.
 	    pattern notEmptyOrNil ifTrue:[
-                searchAction := 
+                searchAction :=
                     [
                         self searchUsingSpec:(
                             self class searchSpec new
                                 pattern:pattern
                                 ignoreCase:lastSearchIgnoredCase
-                                match: lastSearchWasMatch 
-                                regexMatch:matchWithRegexHolder value 
+                                match: lastSearchWasMatch
+                                regexMatch:matchWithRegexHolder value
                                 variable: searchVariableHolder value
                                 fullWord: searchFullWordHolder value
                                 forward:fwd
@@ -2354,7 +2345,7 @@
 
 		selectedVariable := selectedVariable lastElementInChain.
 		self selectFromCharacterPosition:selectedVariable start to:selectedVariable stop.
-                searchAction := 
+                searchAction :=
                     [
                         selectedVariable := selectedVariable previousElement.
                         selectedVariable notNil ifTrue:[
@@ -2372,14 +2363,14 @@
                     ] ifFalse:[
                         self replace:replacement asLowercaseFirst
                     ]
-                ].    
-            ].    
+                ].
+            ].
 
 	    selStart := self characterPositionOfSelection.
 
             replaceAction value.
 	    searchAction value.
-            
+
             replaceAllBooleanHolder value ifTrue:[
                 [self characterPositionOfSelection ~= selStart] whileTrue:[
                     selStart := self characterPositionOfSelection.
@@ -2395,23 +2386,23 @@
     bindings := IdentityDictionary new.
     bindings at:#searchPattern put:patternHolder.
     modal ifTrue:[
-        bindings 
-            at:#nextAction 
+        bindings
+            at:#nextAction
             put:[
                 replaceAllBooleanHolder value ifTrue:[
                     searchBox doAccept.
                 ] ifFalse:[
                     doSearch value:true
-                ]    
+                ]
             ].
         bindings
-            at:#prevAction 
+            at:#prevAction
             put:[
                 replaceAllBooleanHolder value ifTrue:[
                     fwd := false. searchBox doAccept.
                 ] ifFalse:[
                     doSearch value:false
-                ]    
+                ]
             ].
     ] ifFalse:[
         bindings at:#nextAction put:[doSearch value:true.].
@@ -2451,7 +2442,7 @@
     bindings at:#searchAtBeginOfLineOnly put:searchAtBeginOfLineOnlyHolder.
     bindings at:#wrapAtEndOfTextHolder put:wrapAtEndHolder.
     bindings at:#selectLinesHolder put:selectLinesHolder.
-    
+
     bindings at:#replaceEnabled put:replaceBooleanEnabledHolder.
     bindings at:#replaceBoolean put:replaceBooleanHolder.
     bindings at:#replaceAllBoolean put:replaceAllBooleanHolder.
@@ -2459,23 +2450,23 @@
     bindings at:#replaceTextHolder put:replaceTextHolder.
 
     bindings at:#flyByHelpSpec put:self class flyByHelpSpec.
-    
+
     updateReturnKeyBehavior :=
         [
             |lbl returnAction|
-            
-            "/ when replacing, do not close box on return    
+
+            "/ when replacing, do not close box on return
             replaceBooleanHolder value ifTrue:[
                 lbl := 'Close'.
-                returnAction := searchAction.        
+                returnAction := searchAction.
             ] ifFalse:[
                 lbl := 'Cancel'.
-                returnAction := nil.        
+                returnAction := nil.
             ].
             (bldr componentAt:#cancelButton) label:(resources string:lbl).
-            searchBox window keyboardProcessor returnAction:returnAction.        
+            searchBox window keyboardProcessor returnAction:returnAction.
         ].
-    
+
     replaceBooleanHolder onChangeEvaluate:
 	[
 	    replaceBooleanHolder value ifTrue:[
@@ -2520,7 +2511,7 @@
                 openInGroup:(self windowGroup);
                 waitUntilVisible;
                 assignKeyboardFocusToFirstKeyboardConsumer.
-        searchBox window keyboardProcessor        
+        searchBox window keyboardProcessor
             addAccelerator:#Return action:(bindings at:#nextAction);
             addAccelerator:#Escape action:#closeRequest.
         "/ remember this box for me.
@@ -2596,8 +2587,8 @@
                     UserPreferences current generateBackupFileWhenSaving ifTrue:[
                         filename exists ifTrue:[
                             filename moveTo:(filename pathName,'.bak') asFilename
-                        ].    
-                    ].    
+                        ].
+                    ].
 		    aStream := filename newReadWriteStream.
 		].
                 aStream eolMode:eolMode.
@@ -2643,16 +2634,16 @@
 
     pattern := patternArg string.
     pattern notEmpty ifTrue:[
-	self rememberSearchPattern:pattern.
-	"/ LastSearchIgnoredCase := lastSearchIgnoredCase := ign.
-	"/ LastSearchWasMatch := match.
-	fwd ifFalse:[
-	    lastSearchDirection := #backward.
-	    self searchBwd:pattern ignoreCase:ign match: match.          "    backward search with match is not yet available  "
-	] ifTrue:[
-	    lastSearchDirection := #forward.
-	    self searchFwd:pattern ignoreCase:ign match: match.
-	]
+        self rememberSearchPattern:pattern.
+        "/ LastSearchIgnoredCase := lastSearchIgnoredCase := ign.
+        "/ LastSearchWasMatch := match.
+        fwd ifFalse:[
+            lastSearchDirection := #backward.
+            self searchBwd:pattern ignoreCase:ign match: match.          "    backward search with match is not yet available  "
+        ] ifTrue:[
+            lastSearchDirection := #forward.
+            self searchFwd:pattern ignoreCase:ign match: match.
+        ]
     ]
 
     "Created: / 11-07-2006 / 11:18:04 / fm"
@@ -2664,11 +2655,11 @@
     "/ LastSearchIgnoredCase := lastSearchIgnoredCase := ign.
     "/ LastSearchWasMatch := match.
     aSearchSpec forward ifFalse:[
-	lastSearchDirection := #backward.
-	self searchBwdUsingSpec:aSearchSpec
+        lastSearchDirection := #backward.
+        self searchBwdUsingSpec:aSearchSpec
     ] ifTrue:[
-	lastSearchDirection := #forward.
-	self searchFwdUsingSpec:aSearchSpec
+        lastSearchDirection := #forward.
+        self searchFwdUsingSpec:aSearchSpec
     ]
 
     "Created: / 11-07-2006 / 11:18:04 / fm"
@@ -2692,25 +2683,25 @@
 
     lastSearchWasVariableSearch := true.
     el := fwd
-	ifTrue:[syntaxElementForVariable nextElement]
-	ifFalse:[syntaxElementForVariable previousElement].
+        ifTrue:[syntaxElementForVariable nextElement]
+        ifFalse:[syntaxElementForVariable previousElement].
 
     el notNil ifTrue:[
-	"bug workaround"
-	(el start = syntaxElementForVariable start) ifTrue:[
-	    el2 := fwd
-		ifTrue:[el nextElement]
-		ifFalse:[el previousElement].
-	    el2 notNil ifTrue:[
-		el := el2
-	    ]
-	].
+        "bug workaround"
+        (el start = syntaxElementForVariable start) ifTrue:[
+            el2 := fwd
+                ifTrue:[el nextElement]
+                ifFalse:[el previousElement].
+            el2 notNil ifTrue:[
+                el := el2
+            ]
+        ].
     ].
     el notNil ifTrue:[
-	self selectFromCharacterPosition:el start to:el stop.
-	self makeLineVisible:(self lineOfCharacterPosition:el start).
+        self selectFromCharacterPosition:el start to:el stop.
+        self makeLineVisible:(self lineOfCharacterPosition:el start).
     ] ifFalse:[
-	self showNotFound
+        self showNotFound
     ].
 
     "Created: / 08-03-2012 / 14:08:20 / cg"
@@ -2758,8 +2749,8 @@
     "save contents on a stream, replacing leading spaces by tab-characters."
 
     self
-	fileOutContentsOn:aStream
-	compressTabs:true
+        fileOutContentsOn:aStream
+        compressTabs:true
 !
 
 fileOutContentsOn:aStream compressTabs:compressTabs
@@ -2767,9 +2758,9 @@
      leading spaces will be replaced by tab-characters in the output."
 
     self
-	fileOutContentsOn:aStream
-	compressTabs:compressTabs
-	encoding:nil
+        fileOutContentsOn:aStream
+        compressTabs:compressTabs
+        encoding:nil
 !
 
 fileOutContentsOn:aStream compressTabs:compressTabs encoding:encodingSymOrNil
@@ -2843,31 +2834,31 @@
      line separation. This is required, to allow for proper handling of
      national characters, such as A-diaresis ..."
 
-    |italicFont boldFont currentDeviceFont |
-
-    currentDeviceFont := gc createFontOnDevice.
+    |italicFont boldFont font|
+
+    font := gc createFontOnDevice.
     "/ do we really need this info now?
     "/ on unix, it seems to work with the next two lines commented;
     "/ should probably check on windows too
-    italicFont := currentDeviceFont asItalic onDevice:self device.
-    boldFont := currentDeviceFont asBold onDevice:self device.
-
-    fontHeight := currentDeviceFont height.
-    fontAscent := currentDeviceFont ascent. 
-    fontWidth := currentDeviceFont width.
-    fontIsFixedWidth := currentDeviceFont isFixedWidth.
-
-    "/ fA := font maxAscent. 
-    italicFont notNil ifTrue:[ 
+    italicFont := font asItalic onDevice:self device.
+    boldFont := font asBold onDevice:self device.
+
+    fontHeight := font height.
+    fontAscent := font ascent.
+    fontWidth := font width.
+    fontIsFixedWidth := font isFixedWidth.
+
+    "/ fA := font maxAscent.
+    italicFont notNil ifTrue:[
         fontHeight := fontHeight max:(italicFont height).
         fontAscent := fontAscent max:(italicFont ascent).
         fontIsFixedWidth := fontIsFixedWidth and:[ italicFont isFixedWidth ]
-    ]. 
-    boldFont notNil ifTrue:[ 
+    ].
+    boldFont notNil ifTrue:[
         fontHeight := fontHeight max:(boldFont height).
         fontAscent := fontAscent max:(boldFont ascent).
         fontIsFixedWidth := fontIsFixedWidth and:[ boldFont isFixedWidth ]
-    ]. 
+    ].
 
     includesNonStrings == true ifTrue:[
 	"/ for now, we do not support variable height entries ...
@@ -2911,15 +2902,15 @@
     nRemembered := NumRememberedSearchPatterns ? 20.
 
     LastSearchPatterns isNil ifTrue:[
-	LastSearchPatterns := OrderedCollection new.
+        LastSearchPatterns := OrderedCollection new.
     ].
     "/ move to top or addFirst
     (LastSearchPatterns includes:patternString) ifTrue:[
-	LastSearchPatterns remove:patternString.
+        LastSearchPatterns remove:patternString.
     ] ifFalse:[
-	LastSearchPatterns size > nRemembered ifTrue:[
-	    LastSearchPatterns removeLast
-	]
+        LastSearchPatterns size > nRemembered ifTrue:[
+            LastSearchPatterns removeLast
+        ]
     ].
     LastSearchPatterns addFirst:patternString.
 
@@ -2929,12 +2920,12 @@
 removeTrailingWhitespace
     list isNil ifTrue:[^self].
     list keysAndValuesDo:[:lineNR :line |
-	|l|
-
-	line notNil ifTrue:[
-	    l := line withoutTrailingSeparators.
-	    list at:lineNR put:l.
-	]
+        |l|
+
+        line notNil ifTrue:[
+            l := line withoutTrailingSeparators.
+            list at:lineNR put:l.
+        ]
     ].
 !
 
@@ -3038,10 +3029,10 @@
     "stop auto scroll; deinstall timed-block"
 
     autoScrollBlock notNil ifTrue:[
-	Processor removeTimedBlock:autoScrollBlock.
-	self compressMotionEvents:true.
-	autoScrollBlock := nil.
-	autoScrollDeltaT := nil
+        Processor removeTimedBlock:autoScrollBlock.
+        self compressMotionEvents:true.
+        autoScrollBlock := nil.
+        autoScrollDeltaT := nil
     ]
 !
 
@@ -3058,14 +3049,14 @@
     "return the width in pixels for a scroll between firstLine and lastLine"
 
     selectionStartLine notNil ifTrue:[
-	"/ if there is a selection which covers multiple lines,
-	"/ we have to scroll the whole width (to include the selection-rectangle)
-
-	(lastLine < selectionStartLine) ifFalse:[
-	    (firstLine > selectionEndLine) ifFalse:[
-		^ width
-	    ]
-	].
+        "/ if there is a selection which covers multiple lines,
+        "/ we have to scroll the whole width (to include the selection-rectangle)
+
+        (lastLine < selectionStartLine) ifFalse:[
+            (firstLine > selectionEndLine) ifFalse:[
+                ^ width
+            ]
+        ].
     ].
     ^ super widthForScrollBetween:firstLine and:lastLine
 ! !
@@ -3107,39 +3098,39 @@
 
 drawSelectedFromVisibleLine:startVisLineNr to:endVisLineNr
     startVisLineNr to:endVisLineNr do:[:visLine |
-	self drawVisibleLineSelected:visLine
+        self drawVisibleLineSelected:visLine
     ]
 !
 
 drawVisibleLineSelected:visLineNr
     self
-	drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
-	inVisible:visLineNr
-	with:self currentSelectionFgColor and:self currentSelectionBgColor
+        drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
+        inVisible:visLineNr
+        with:self currentSelectionFgColor and:self currentSelectionBgColor
 !
 
 drawVisibleLineSelected:visLineNr col:col
     self
-	drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
-	inVisible:visLineNr
-	col:col
-	with:self currentSelectionFgColor and:self currentSelectionBgColor
+        drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
+        inVisible:visLineNr
+        col:col
+        with:self currentSelectionFgColor and:self currentSelectionBgColor
 !
 
 drawVisibleLineSelected:visLineNr from:selectionStartCol
     self
-	drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
-	inVisible:visLineNr
-	from:selectionStartCol
-	with:self currentSelectionFgColor and:self currentSelectionBgColor.
+        drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
+        inVisible:visLineNr
+        from:selectionStartCol
+        with:self currentSelectionFgColor and:self currentSelectionBgColor.
 !
 
 drawVisibleLineSelected:visLineNr from:startCol to:endCol
     self
-	drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
-	inVisible:visLineNr
-	from:startCol to:endCol
-	with:self currentSelectionFgColor and:self currentSelectionBgColor.
+        drawLine:(self withoutAnyColorEmphasis:(self visibleAt:visLineNr))
+        inVisible:visLineNr
+        from:startCol to:endCol
+        with:self currentSelectionFgColor and:self currentSelectionBgColor.
 !
 
 redrawFromVisibleLine:startVisLineNr to:endVisLineNr
@@ -3151,70 +3142,70 @@
 
     end := endVisLineNr.
     (end > nLinesShown) ifTrue:[
-	end := nLinesShown
+        end := nLinesShown
     ].
 
     selectionEndLine isNil ifTrue:[
-	selectionStartLine := nil
+        selectionStartLine := nil
     ].
 
     selectionStartLine isNil ifTrue:[
-	specialCare := false
+        specialCare := false
     ] ifFalse:[
-	startLine := self visibleLineToAbsoluteLine:startVisLineNr.
-	(startLine > selectionEndLine) ifTrue:[
-	    specialCare := false
-	] ifFalse:[
-	    endLine := self visibleLineToAbsoluteLine:end.
-	    (endLine < selectionStartLine) ifTrue:[
-		specialCare := false
-	    ] ifFalse:[
-		specialCare := true
-	    ]
-	]
+        startLine := self visibleLineToAbsoluteLine:startVisLineNr.
+        (startLine > selectionEndLine) ifTrue:[
+            specialCare := false
+        ] ifFalse:[
+            endLine := self visibleLineToAbsoluteLine:end.
+            (endLine < selectionStartLine) ifTrue:[
+                specialCare := false
+            ] ifFalse:[
+                specialCare := true
+            ]
+        ]
     ].
 
     "easy: nothing is selected"
     specialCare ifFalse:[
-	super redrawFromVisibleLine:startVisLineNr to:end.
-	^ self
+        super redrawFromVisibleLine:startVisLineNr to:end.
+        ^ self
     ].
 
     "easy: all is selected"
     ((selectionStartLine < startLine) and:[selectionEndLine > endLine]) ifTrue:[
-	self drawSelectedFromVisibleLine:startVisLineNr to:end.
-	^ self
+        self drawSelectedFromVisibleLine:startVisLineNr to:end.
+        ^ self
     ].
 
     (selectionStartLine >= firstLineShown) ifTrue:[
-	"draw unselected top part"
-
-	selVisStart := self listLineToVisibleLine:selectionStartLine.
-	super redrawFromVisibleLine:startVisLineNr to:(selVisStart - 1).
-
-	"and first partial selected line"
-	self redrawVisibleLine:selVisStart.
-
-	"rest starts after this one"
-	line1 := selVisStart + 1
+        "draw unselected top part"
+
+        selVisStart := self listLineToVisibleLine:selectionStartLine.
+        super redrawFromVisibleLine:startVisLineNr to:(selVisStart - 1).
+
+        "and first partial selected line"
+        self redrawVisibleLine:selVisStart.
+
+        "rest starts after this one"
+        line1 := selVisStart + 1
     ] ifFalse:[
-	line1 := 1
+        line1 := 1
     ].
 
     (line1 > end) ifTrue:[^ self].
     (line1 < startVisLineNr) ifTrue:[
-	line1 := startVisLineNr
+        line1 := startVisLineNr
     ].
 
     "draw middle part of selection"
 
     (selectionEndLine >= (firstLineShown + nLinesShown)) ifTrue:[
-	line2 := nLinesShown
+        line2 := nLinesShown
     ] ifFalse:[
-	line2 := (self listLineToVisibleLine:selectionEndLine) - 1
+        line2 := (self listLineToVisibleLine:selectionEndLine) - 1
     ].
     (line2 > end) ifTrue:[
-	line2 := end
+        line2 := end
     ].
 
     self drawSelectedFromVisibleLine:line1 to:line2.
@@ -3225,7 +3216,7 @@
     self redrawVisibleLine:(line2 + 1).
 
     ((line2 + 2) <= end) ifTrue:[
-	super redrawFromVisibleLine:(line2 + 2) to:end
+        super redrawFromVisibleLine:(line2 + 2) to:end
     ]
 !
 
@@ -3321,22 +3312,22 @@
 
     col := startCol.
     col == 0 ifTrue:[
-	col := 1.
+        col := 1.
     ].
 
     (selectionStartLine notNil and:[selectionEndLine notNil]) ifTrue:[
-	line := self visibleLineToAbsoluteLine:visLine.
-	(line between:selectionStartLine and:selectionEndLine) ifTrue:[
-	    ((line == selectionStartLine)
-	     or:[line == selectionEndLine]) ifTrue:[
-		"since I'm lazy, redraw full line"
-		self redrawVisibleLine:visLine.
-		^ self
-	    ].
-	    "the line is fully within the selection"
-	    self drawVisibleLineSelected:visLine from:col.
-	    ^ self
-	]
+        line := self visibleLineToAbsoluteLine:visLine.
+        (line between:selectionStartLine and:selectionEndLine) ifTrue:[
+            ((line == selectionStartLine)
+             or:[line == selectionEndLine]) ifTrue:[
+                "since I'm lazy, redraw full line"
+                self redrawVisibleLine:visLine.
+                ^ self
+            ].
+            "the line is fully within the selection"
+            self drawVisibleLineSelected:visLine from:col.
+            ^ self
+        ]
     ].
     super redrawVisibleLine:visLine from:col
 
@@ -3460,8 +3451,8 @@
 !
 
 scanFor:aCharacter fromLine:startLine col:startCol forward:forward
-		     ifFound:foundBlock
-		  ifNotFound:notFoundBlock
+                     ifFound:foundBlock
+                  ifNotFound:notFoundBlock
     "search for a character in the direction given by forward.
      Performs foundBlock with line/col as argument if found, notFoundBlock if not."
 
@@ -3477,9 +3468,9 @@
     col := startCol.
     line := startLine.
     forward ifTrue:[
-	delta := 1.
+        delta := 1.
     ] ifFalse:[
-	delta := -1.
+        delta := -1.
     ].
 
     lineString := list at:line.
@@ -3487,30 +3478,30 @@
 
     col := col + delta.
     [true] whileTrue:[
-	lineString notNil ifTrue:[
-	    forward ifTrue:[
-		endCol := lineString size.
-	    ] ifFalse:[
-		endCol := 1
-	    ].
-
-	    col to:endCol by:delta do:[:rCol |
-		cc := lineString at:rCol.
-		cc == aCharacter ifTrue:[
-		    ^ foundBlock value:line value:rCol.
-		]
-	    ].
-	].
-	line := line + delta.
-	(line < 1 or:[line > maxLine]) ifTrue:[
-	    ^ notFoundBlock value
-	].
-	lineString := list at:line.
-	forward ifTrue:[
-	    col := 1
-	] ifFalse:[
-	    col := lineString size
-	]
+        lineString notNil ifTrue:[
+            forward ifTrue:[
+                endCol := lineString size.
+            ] ifFalse:[
+                endCol := 1
+            ].
+
+            col to:endCol by:delta do:[:rCol |
+                cc := lineString at:rCol.
+                cc == aCharacter ifTrue:[
+                    ^ foundBlock value:line value:rCol.
+                ]
+            ].
+        ].
+        line := line + delta.
+        (line < 1 or:[line > maxLine]) ifTrue:[
+            ^ notFoundBlock value
+        ].
+        lineString := list at:line.
+        forward ifTrue:[
+            col := 1
+        ] ifFalse:[
+            col := lineString size
+        ]
     ].
     "not reached"
 
@@ -3532,8 +3523,8 @@
     |ign match|
 
     searchBarActionBlock notNil ifTrue:[
-	searchBarActionBlock value:#forward value:self.
-	^ self
+        searchBarActionBlock value:#forward value:self.
+        ^ self
     ].
 
     ign := lastSearchIgnoredCase ? LastSearchIgnoredCase ? true.
@@ -3541,17 +3532,17 @@
 
     self setSearchPatternWithMatchEscapes: match.
     lastSearchPattern notNil ifTrue:[
-	lastSearchDirection == #backward ifTrue:[
-	    self
-		searchBwd:lastSearchPattern
-		ignoreCase:ign
-		match: match
-	] ifFalse:[
-	    self
-		searchFwd:lastSearchPattern
-		ignoreCase:ign
-		match: match
-	]
+        lastSearchDirection == #backward ifTrue:[
+            self
+                searchBwd:lastSearchPattern
+                ignoreCase:ign
+                match: match
+        ] ifFalse:[
+            self
+                searchFwd:lastSearchPattern
+                ignoreCase:ign
+                match: match
+        ]
     ]
 
     "Created: / 03-05-1999 / 15:02:16 / cg"
@@ -3565,43 +3556,43 @@
     |ign selectedVariable|
 
     searchAction notNil ifTrue:[
-	"/autosearch is cleared whenever there is search with user selection
-	(self hasSelection and:[self hasSearchActionSelection not]) ifTrue: [self clearSearchAction].
+        "/autosearch is cleared whenever there is search with user selection
+        (self hasSelection and:[self hasSearchActionSelection not]) ifTrue: [self clearSearchAction].
     ].
 
     searchAction notNil ifTrue:[
-	"/confusing: this is for autosearch of variables (browse variable uses, for example)
-	self searchUsingSearchAction:#backward.
-	^ self.
+        "/confusing: this is for autosearch of variables (browse variable uses, for example)
+        self searchUsingSearchAction:#backward.
+        ^ self.
     ].
     searchBarActionBlock notNil ifTrue:[
-	searchBarActionBlock value:#backward value:self.
-	^ self
+        searchBarActionBlock value:#backward value:self.
+        ^ self
     ].
     lastSearchWasVariableSearch ifTrue:[
-	selectedVariable := self syntaxElementForSelectedVariable.
-	selectedVariable notNil ifTrue:[
-	    self searchVariableWithSyntaxElement:selectedVariable forward:false.
-	    ^ self.
-	].
-	lastSearchWasVariableSearch := false.
+        selectedVariable := self syntaxElementForSelectedVariable.
+        selectedVariable notNil ifTrue:[
+            self searchVariableWithSyntaxElement:selectedVariable forward:false.
+            ^ self.
+        ].
+        lastSearchWasVariableSearch := false.
     ].
 
     ign := lastSearchIgnoredCase ? LastSearchIgnoredCase ? true.
 
     self setSearchPatternWithMatchEscapes: false.
     lastSearchPattern isNil ifTrue:[
-	LastSearchPatterns size > 0 ifTrue:[
-	    lastSearchPattern := LastSearchPatterns first
-	]
+        LastSearchPatterns size > 0 ifTrue:[
+            lastSearchPattern := LastSearchPatterns first
+        ]
     ].
 
     lastSearchPattern notNil ifTrue:[
-	lastSearchDirection := #backward.
-	self rememberSearchPattern:lastSearchPattern.
-	self
-	    searchBwd:lastSearchPattern
-	    ignoreCase:ign
+        lastSearchDirection := #backward.
+        self rememberSearchPattern:lastSearchPattern.
+        self
+            searchBwd:lastSearchPattern
+            ignoreCase:ign
     ]
 
     "Modified: / 08-03-2012 / 14:26:25 / cg"
@@ -3621,9 +3612,9 @@
     "do a backward search"
 
     self
-	searchBwdUsingSpec:(ListView::SearchSpec new
-					pattern:pattern)
-	ifAbsent:aBlock
+        searchBwdUsingSpec:(ListView::SearchSpec new
+                                        pattern:pattern)
+        ifAbsent:aBlock
 
     "Modified: 13.9.1997 / 01:05:49 / cg"
 !
@@ -3632,12 +3623,12 @@
     "do a backward search"
 
     self
-	searchBwd:pattern
-	ignoreCase:ign
-	ifAbsent:[
-		    self sensor compressKeyPressEventsWithKey:#FindPrev.
-		    self showNotFound
-		 ].
+        searchBwd:pattern
+        ignoreCase:ign
+        ifAbsent:[
+                    self sensor compressKeyPressEventsWithKey:#FindPrev.
+                    self showNotFound
+                 ].
     "/ lastSearchIgnoredCase := ign.
     lastSearchPattern := pattern string
 
@@ -3649,10 +3640,10 @@
     "do a backward search"
 
     self
-	searchBwdUsingSpec:(ListView::SearchSpec new
-					pattern:pattern
-					ignoreCase:ign)
-	ifAbsent:aBlock
+        searchBwdUsingSpec:(ListView::SearchSpec new
+                                        pattern:pattern
+                                        ignoreCase:ign)
+        ifAbsent:aBlock
 
     "Modified: 13.9.1997 / 01:05:49 / cg"
     "Created: 13.9.1997 / 06:18:41 / cg"
@@ -3672,8 +3663,8 @@
     "do a backward search"
 
     self
-	searchBwdUsingSpec:searchSpec
-	ifAbsent:[self showNotFound].
+        searchBwdUsingSpec:searchSpec
+        ifAbsent:[self showNotFound].
 
 "/    lastSearchIgnoredCase := false.
     lastSearchPattern := searchSpec pattern string
@@ -3693,7 +3684,7 @@
     self
         searchBackwardUsingSpec:searchSpec
         startingAtLine:startLine col:startCol
-        ifFound:[:line :col :endColOrNil| 
+        ifFound:[:line :col :endColOrNil|
             self showMatch:searchSpec pattern isMatch:searchSpec match atLine:line col:col endCol:endColOrNil
         ]
         ifAbsent:aBlock
@@ -3703,20 +3694,20 @@
     "select characters enclosed by matching parenthesis if one is under startLine/Col"
 
     self
-	searchForMatchingParenthesisFromLine:startLine col:startCol
-	ifFound:[:line :col |
-		  self selectFromLine:startLine col:startCol
-			       toLine:line col:col]
-	ifNotFound:[self showNotFound]
-	onError:[self beep]
+        searchForMatchingParenthesisFromLine:startLine col:startCol
+        ifFound:[:line :col |
+                  self selectFromLine:startLine col:startCol
+                               toLine:line col:col]
+        ifNotFound:[self showNotFound]
+        onError:[self beep]
 
     "Modified: 9.10.1997 / 12:57:34 / cg"
 !
 
 searchForMatchingParenthesisFromLine:startLine col:startCol
-		     ifFound:foundBlock
-		  ifNotFound:notFoundBlock
-		     onError:failBlock
+                     ifFound:foundBlock
+                  ifNotFound:notFoundBlock
+                     onError:failBlock
 
     "search for a matching parenthesis; start search with character at startLine/startCol.
      Search for the corresponding character is done forward if its an opening,
@@ -3725,20 +3716,20 @@
      If there is a nesting error, evaluate failBlock."
 
     ^ self
-	searchForMatchingParenthesisFromLine:startLine col:startCol
-	ifFound:foundBlock
-	ifNotFound:notFoundBlock
-	onError:failBlock
-	ignoring:(parenthesisSpecification at:#ignore ifAbsent:#()) "/ #( $' $" '$[' '$]' '${' '$)' )
+        searchForMatchingParenthesisFromLine:startLine col:startCol
+        ifFound:foundBlock
+        ifNotFound:notFoundBlock
+        onError:failBlock
+        ignoring:(parenthesisSpecification at:#ignore ifAbsent:#()) "/ #( $' $" '$[' '$]' '${' '$)' )
 
     "Modified: / 12-04-2007 / 11:24:24 / cg"
 !
 
 searchForMatchingParenthesisFromLine:startLine col:startCol
-		     ifFound:foundBlock
-		  ifNotFound:notFoundBlock
-		     onError:failBlock
-		    ignoring:ignoreSet
+                     ifFound:foundBlock
+                  ifNotFound:notFoundBlock
+                     onError:failBlock
+                    ignoring:ignoreSet
 
     "search for a matching parenthesis; start search with character at startLine/startCol.
      Search for the corresponding character is done forward if its an opening,
@@ -3747,14 +3738,14 @@
      If there is a nesting error, evaluate failBlock."
 
     ^ self
-	searchForMatchingParenthesisFromLine:startLine col:startCol
-	ifFound:foundBlock
-	ifNotFound:notFoundBlock
-	onError:failBlock
-	openingCharacters: (parenthesisSpecification at:#open)  "/ #( $( $[ ${ "$> $<")
-	closingCharacters: (parenthesisSpecification at:#close) "/ #( $) $] $} "$> $<")
-	ignoredCharacters: ignoreSet
-	specialEOLComment: (parenthesisSpecification at:#eolComment ifAbsent:#()) "/
+        searchForMatchingParenthesisFromLine:startLine col:startCol
+        ifFound:foundBlock
+        ifNotFound:notFoundBlock
+        onError:failBlock
+        openingCharacters: (parenthesisSpecification at:#open)  "/ #( $( $[ ${ "$> $<")
+        closingCharacters: (parenthesisSpecification at:#close) "/ #( $) $] $} "$> $<")
+        ignoredCharacters: ignoreSet
+        specialEOLComment: (parenthesisSpecification at:#eolComment ifAbsent:#()) "/
 
 "/    |i direction lineString
 "/     parChar charSet  closingChar
@@ -3904,11 +3895,11 @@
 !
 
 searchForMatchingParenthesisFromLine:startLine col:startCol
-		     ifFound:foundBlock
-		  ifNotFound:notFoundBlock
-		     onError:failBlock
-	   openingCharacters:openingCharacters
-	   closingCharacters:closingCharacters
+                     ifFound:foundBlock
+                  ifNotFound:notFoundBlock
+                     onError:failBlock
+           openingCharacters:openingCharacters
+           closingCharacters:closingCharacters
 
     "search for a matching parenthesis; start search with character at startLine/startCol.
      Search for the corresponding character is done forward if its an opening,
@@ -3917,14 +3908,14 @@
      If there is a nesting error, evaluate failBlock."
 
     ^ self
-	searchForMatchingParenthesisFromLine:startLine col:startCol
-	ifFound:foundBlock
-	ifNotFound:notFoundBlock
-	onError:failBlock
-	openingCharacters: openingCharacters
-	closingCharacters: closingCharacters
-	ignoredCharacters: (parenthesisSpecification at:#ignore ifAbsent:#())
-	specialEOLComment: (parenthesisSpecification at:#eolComment ifAbsent:#()) "/
+        searchForMatchingParenthesisFromLine:startLine col:startCol
+        ifFound:foundBlock
+        ifNotFound:notFoundBlock
+        onError:failBlock
+        openingCharacters: openingCharacters
+        closingCharacters: closingCharacters
+        ignoredCharacters: (parenthesisSpecification at:#ignore ifAbsent:#())
+        specialEOLComment: (parenthesisSpecification at:#eolComment ifAbsent:#()) "/
 
 "/    |i direction lineString
 "/     parChar charSet  closingChar
@@ -4074,13 +4065,13 @@
 !
 
 searchForMatchingParenthesisFromLine:startLine col:startCol
-		     ifFound:foundBlock
-		  ifNotFound:notFoundBlock
-		     onError:failBlock
-	   openingCharacters:openingCharacters
-	   closingCharacters:closingCharacters
-	   ignoredCharacters:ignoreSet
-	  specialEOLComment:eolCommentSequence
+                     ifFound:foundBlock
+                  ifNotFound:notFoundBlock
+                     onError:failBlock
+           openingCharacters:openingCharacters
+           closingCharacters:closingCharacters
+           ignoredCharacters:ignoreSet
+          specialEOLComment:eolCommentSequence
 
     "search for a matching parenthesis; start search with character at startLine/startCol.
      Search for the corresponding character is done forward if its an opening,
@@ -4109,7 +4100,7 @@
     parChar := self characterAtLine:startLine col:startCol.
     i := charSet indexOf:parChar.
     i == 0 ifTrue:[
-	^ failBlock value   "not a parenthesis"
+        ^ failBlock value   "not a parenthesis"
     ].
 
     direction := (i <= openingCharacters size) ifTrue:[#fwd] ifFalse:[#bwd].
@@ -4121,13 +4112,13 @@
     col := startCol.
     line := startLine.
     direction == #fwd ifTrue:[
-	delta := 1.
-	incSet := openingCharacters.
-	decSet := closingCharacters.
+        delta := 1.
+        incSet := openingCharacters.
+        decSet := closingCharacters.
     ] ifFalse:[
-	delta := -1.
-	incSet := closingCharacters.
-	decSet := openingCharacters.
+        delta := -1.
+        incSet := closingCharacters.
+        decSet := openingCharacters.
     ].
     anySet := Set new.
     anySet addAll:incSet; addAll:decSet; addAll:ignoreSet.
@@ -4140,101 +4131,101 @@
 
     col := col + delta.
     [nesting ~~ 0] whileTrue:[
-	(lineString notNil
-	and:[lineString includesAny:anySet]) ifTrue:[
-	    direction == #fwd ifTrue:[
-		endCol := lineString size.
-	    ] ifFalse:[
-		endCol := 1
-	    ].
-
-	    col to:endCol by:delta do:[:rCol |
-		runCol := rCol.
-
-		cc := lineString at:runCol.
-		runCol < lineString size ifTrue:[
-		    nextCC := lineString at:runCol+1
-		] ifFalse:[
-		    nextCC := nil
-		].
-		runCol > 1 ifTrue:[
-		    prevCC := lineString at:runCol-1
-		] ifFalse:[
-		    prevCC := nil
-		].
-
-		ign := skip := false.
-
-		"/ check for comments.
-
-		((cc == eol1 and:[nextCC == eol2])
-		or:[prevCC == $$ ]) ifTrue:[
-		    "/ do nothing
-
-		    skip := true.
-		] ifFalse:[
-		    ignoreSet do:[:ignore |
-			ignore == cc ifTrue:[
-			    ign := true
-			] ifFalse:[
-			    ignore isString ifTrue:[
-				cc == (ignore at:2) ifTrue:[
-				    runCol > 1 ifTrue:[
-					(lineString at:(runCol-1)) == (ignore at:1) ifTrue:[
-					    skip := true
-					]
-				    ]
-				] ifFalse:[
-				    cc == (ignore at:1) ifTrue:[
-					runCol < lineString size ifTrue:[
-					    (lineString at:(runCol+1)) == (ignore at:2) ifTrue:[
-						skip := true
-					    ]
-					]
-				    ]
-				]
-			    ]
-			]
-		    ]
-		].
-
-		ign ifTrue:[
-		    ignoring := ignoring not
-		].
-
-		ignoring ifFalse:[
-		    skip ifFalse:[
-			(incSet includes:cc) ifTrue:[
-			    nesting := nesting + 1
-			] ifFalse:[
-			    (decSet includes:cc) ifTrue:[
-				nesting := nesting - 1
-			    ]
-			]
-		    ]
-		].
-
-		nesting == 0 ifTrue:[
-		    "check if legal"
-		    skip ifFalse:[
-			cc == closingChar ifFalse:[
-			    ^ failBlock value
-			].
-			^ foundBlock value:line value:runCol.
-		    ]
-		]
-	    ].
-	].
-	line := line + delta.
-	(line < 1 or:[line > maxLine]) ifTrue:[
-	    ^ failBlock value
-	].
-	lineString := list at:line.
-	direction == #fwd ifTrue:[
-	    col := 1
-	] ifFalse:[
-	    col := lineString size
-	]
+        (lineString notNil
+        and:[lineString includesAny:anySet]) ifTrue:[
+            direction == #fwd ifTrue:[
+                endCol := lineString size.
+            ] ifFalse:[
+                endCol := 1
+            ].
+
+            col to:endCol by:delta do:[:rCol |
+                runCol := rCol.
+
+                cc := lineString at:runCol.
+                runCol < lineString size ifTrue:[
+                    nextCC := lineString at:runCol+1
+                ] ifFalse:[
+                    nextCC := nil
+                ].
+                runCol > 1 ifTrue:[
+                    prevCC := lineString at:runCol-1
+                ] ifFalse:[
+                    prevCC := nil
+                ].
+
+                ign := skip := false.
+
+                "/ check for comments.
+
+                ((cc == eol1 and:[nextCC == eol2])
+                or:[prevCC == $$ ]) ifTrue:[
+                    "/ do nothing
+
+                    skip := true.
+                ] ifFalse:[
+                    ignoreSet do:[:ignore |
+                        ignore == cc ifTrue:[
+                            ign := true
+                        ] ifFalse:[
+                            ignore isString ifTrue:[
+                                cc == (ignore at:2) ifTrue:[
+                                    runCol > 1 ifTrue:[
+                                        (lineString at:(runCol-1)) == (ignore at:1) ifTrue:[
+                                            skip := true
+                                        ]
+                                    ]
+                                ] ifFalse:[
+                                    cc == (ignore at:1) ifTrue:[
+                                        runCol < lineString size ifTrue:[
+                                            (lineString at:(runCol+1)) == (ignore at:2) ifTrue:[
+                                                skip := true
+                                            ]
+                                        ]
+                                    ]
+                                ]
+                            ]
+                        ]
+                    ]
+                ].
+
+                ign ifTrue:[
+                    ignoring := ignoring not
+                ].
+
+                ignoring ifFalse:[
+                    skip ifFalse:[
+                        (incSet includes:cc) ifTrue:[
+                            nesting := nesting + 1
+                        ] ifFalse:[
+                            (decSet includes:cc) ifTrue:[
+                                nesting := nesting - 1
+                            ]
+                        ]
+                    ]
+                ].
+
+                nesting == 0 ifTrue:[
+                    "check if legal"
+                    skip ifFalse:[
+                        cc == closingChar ifFalse:[
+                            ^ failBlock value
+                        ].
+                        ^ foundBlock value:line value:runCol.
+                    ]
+                ]
+            ].
+        ].
+        line := line + delta.
+        (line < 1 or:[line > maxLine]) ifTrue:[
+            ^ failBlock value
+        ].
+        lineString := list at:line.
+        direction == #fwd ifTrue:[
+            col := 1
+        ] ifFalse:[
+            col := lineString size
+        ]
     ].
     ^ notFoundBlock value
 
@@ -4247,55 +4238,55 @@
     |ign match variable|
 
     searchAction notNil ifTrue:[
-	"/ autosearch is cleared whenever there is search with user selection
-	(self hasSelection and:[self hasSearchActionSelection not]) ifTrue: [self clearSearchAction].
+        "/ autosearch is cleared whenever there is search with user selection
+        (self hasSelection and:[self hasSearchActionSelection not]) ifTrue: [self clearSearchAction].
     ].
 
     searchAction notNil ifTrue:[
-	"/ confusing: this is for autosearch of variables (browse variable uses, for example)
-	self searchUsingSearchAction:#forward.
-	^ self.
+        "/ confusing: this is for autosearch of variables (browse variable uses, for example)
+        self searchUsingSearchAction:#forward.
+        ^ self.
     ].
     searchBarActionBlock notNil ifTrue:[
-	searchBarActionBlock value:#forward value:self.
-	^ self
+        searchBarActionBlock value:#forward value:self.
+        ^ self
     ].
     lastSearchWasVariableSearch ifTrue:[
-	variable := self syntaxElementForSelectedVariable.
-	variable notNil ifTrue:[
-	    self searchVariableWithSyntaxElement:variable forward:true.
-	    ^ self.
-	].
-	lastSearchWasVariableSearch := false.
+        variable := self syntaxElementForSelectedVariable.
+        variable notNil ifTrue:[
+            self searchVariableWithSyntaxElement:variable forward:true.
+            ^ self.
+        ].
+        lastSearchWasVariableSearch := false.
     ].
 
     ign := lastSearchIgnoredCase ? LastSearchIgnoredCase ? true.
     match := lastSearchWasMatch ? LastSearchWasMatch ? false.
 
     selectStyle == #wordLeft ifTrue:[
-	"
-	 remove the space from the selection
-	"
-	selectionStartCol := selectionStartCol + 1.
-	super redrawLine:selectionStartLine from:selectionStartCol-1 to:selectionStartCol-1.
-	selectStyle := #word.
-	self selectionChanged.
+        "
+         remove the space from the selection
+        "
+        selectionStartCol := selectionStartCol + 1.
+        super redrawLine:selectionStartLine from:selectionStartCol-1 to:selectionStartCol-1.
+        selectStyle := #word.
+        self selectionChanged.
     ].
     self setSearchPatternWithMatchEscapes: match.
 
     lastSearchPattern isNil ifTrue:[
-	LastSearchPatterns size > 0 ifTrue:[
-	    lastSearchPattern := LastSearchPatterns first
-	]
+        LastSearchPatterns size > 0 ifTrue:[
+            lastSearchPattern := LastSearchPatterns first
+        ]
     ].
 
     lastSearchPattern notNil ifTrue:[
-	self rememberSearchPattern:lastSearchPattern.
-	lastSearchDirection := #forward.
-	self
-	    searchFwd:lastSearchPattern
-	    ignoreCase:ign
-	    match: match
+        self rememberSearchPattern:lastSearchPattern.
+        lastSearchDirection := #forward.
+        self
+            searchFwd:lastSearchPattern
+            ignoreCase:ign
+            match: match
     ]
 
     "Modified: / 08-03-2012 / 14:25:42 / cg"
@@ -4315,9 +4306,9 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern)
-	ifAbsent:aBlock
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern)
+        ifAbsent:aBlock
 
     "Modified: / 21-09-2006 / 16:51:28 / cg"
 !
@@ -4326,13 +4317,13 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern
-				ignoreCase:ign)
-	ifAbsent:[
-		    self sensor compressKeyPressEventsWithKey:#FindNext.
-		    self showNotFound
-		 ].
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern
+                                ignoreCase:ign)
+        ifAbsent:[
+                    self sensor compressKeyPressEventsWithKey:#FindNext.
+                    self showNotFound
+                 ].
     "/ lastSearchIgnoredCase := ign.
     lastSearchPattern := pattern string
 
@@ -4344,10 +4335,10 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern
-				ignoreCase:ign)
-	ifAbsent:aBlock
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern
+                                ignoreCase:ign)
+        ifAbsent:aBlock
 
     "Modified: 13.9.1997 / 01:05:35 / cg"
     "Created: 13.9.1997 / 06:18:27 / cg"
@@ -4357,14 +4348,14 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern
-				ignoreCase:ign
-				match:match)
-	ifAbsent:[
-		    self sensor compressKeyPressEventsWithKey:#FindNext.
-		    self showNotFound
-		 ].
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern
+                                ignoreCase:ign
+                                match:match)
+        ifAbsent:[
+                    self sensor compressKeyPressEventsWithKey:#FindNext.
+                    self showNotFound
+                 ].
     "/ lastSearchIgnoredCase := ign.
     "/ lastSearchWasMatch := match.
     lastSearchPattern := pattern string
@@ -4377,11 +4368,11 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern
-				ignoreCase:ign
-				match:match)
-	ifAbsent:aBlock
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern
+                                ignoreCase:ign
+                                match:match)
+        ifAbsent:aBlock
 
     "Modified: 13.9.1997 / 01:05:35 / cg"
     "Created: 13.9.1997 / 06:18:27 / cg"
@@ -4391,20 +4382,20 @@
     "do a forward search"
 
     self
-	searchFwdUsingSpec:(ListView::SearchSpec new
-				pattern:pattern
-				ignoreCase:ign
-				match:match)
-	startingAtLine:startLine col:startCol
-	ifAbsent:aBlock
+        searchFwdUsingSpec:(ListView::SearchSpec new
+                                pattern:pattern
+                                ignoreCase:ign
+                                match:match)
+        startingAtLine:startLine col:startCol
+        ifAbsent:aBlock
 !
 
 searchFwdUsingSpec:searchSpec
     "do a forward search"
 
     self
-	searchFwdUsingSpec:searchSpec
-	ifAbsent:[self showNotFound].
+        searchFwdUsingSpec:searchSpec
+        ifAbsent:[self showNotFound].
 
 "/    lastSearchIgnoredCase := false.
     lastSearchPattern := searchSpec pattern string
@@ -4422,9 +4413,9 @@
     startCol := pos x.
 
     self
-	searchFwdUsingSpec:searchSpec
-	startingAtLine:startLine col:startCol
-	ifAbsent:aBlock
+        searchFwdUsingSpec:searchSpec
+        startingAtLine:startLine col:startCol
+        ifAbsent:aBlock
 
     "Modified: 13.9.1997 / 01:05:35 / cg"
     "Created: 13.9.1997 / 06:18:27 / cg"
@@ -4436,7 +4427,7 @@
     self
         searchForwardUsingSpec:searchSpec
         startingAtLine:startLine col:startCol
-        ifFound:[:line :col :endColOrNil| 
+        ifFound:[:line :col :endColOrNil|
             self showMatch:searchSpec pattern isMatch:searchSpec match atLine:line col:col endCol:endColOrNil
         ]
         ifAbsent:aBlock
@@ -4465,7 +4456,7 @@
     "search using a searchaction which has been given by someone else.
      Typically, this is the embedding browser, which has provided an action for
       a language aware search (as opposed to a naive string search)"
-      
+
     |pos startLine startCol|
 
     pos :=  direction == #backward
@@ -4530,9 +4521,9 @@
 
     sel := self selection.
     sel notNil ifTrue:[
-	searchPattern := sel asString.
-	match ifTrue:[searchPattern := searchPattern withMatchEscapes].
-	self setSearchPattern:searchPattern.
+        searchPattern := sel asString.
+        match ifTrue:[searchPattern := searchPattern withMatchEscapes].
+        self setSearchPattern:searchPattern.
     ]
 
     "Modified: / 6.3.1999 / 23:48:04 / cg"
@@ -4600,11 +4591,11 @@
     |startLine startCol|
 
     selectionStartLine notNil ifTrue:[
-	startLine := selectionStartLine.
-	startCol := selectionStartCol
+        startLine := selectionStartLine.
+        startCol := selectionStartCol
     ] ifFalse:[
-	startLine := 1.
-	startCol := 1
+        startLine := 1.
+        startCol := 1
     ].
 
     ^ startCol @ startLine
@@ -4618,11 +4609,11 @@
     |startLine startCol|
 
     selectionStartLine notNil ifTrue:[
-	startLine := selectionStartLine.
-	startCol := selectionStartCol
+        startLine := selectionStartLine.
+        startCol := selectionStartCol
     ] ifFalse:[
-	startLine := 1.
-	startCol := 1
+        startLine := 1.
+        startCol := 1
     ].
 
     ^ startCol @ startLine
@@ -4818,15 +4809,15 @@
     selectionEndLine   isNil ifTrue:[^ false].
 
     (line between:selectionStartLine and:selectionEndLine) ifFalse:[
-	^ false
+        ^ false
     ].
 
     line == selectionStartLine ifTrue:[
-	aColNr < selectionStartCol ifTrue:[^ false]
+        aColNr < selectionStartCol ifTrue:[^ false]
     ].
 
     line == selectionEndLine ifTrue:[
-	(selectionEndCol ~~ 0 and:[selectionEndCol < aColNr]) ifTrue:[^ false]
+        (selectionEndCol ~~ 0 and:[selectionEndCol < aColNr]) ifTrue:[^ false]
     ].
     ^ true
 !
@@ -4837,15 +4828,15 @@
     |line col|
 
     selectionStartLine notNil ifTrue:[
-	expandingTop == true ifTrue:[
-	    line := selectionStartLine.
-	    col := selectionStartCol.
-	] ifFalse:[
-	    line := selectionEndLine.
-	    col := selectionEndCol.
-	].
-	self makeLineVisible:line.
-	self makeColVisible:col inLine:line.
+        expandingTop == true ifTrue:[
+            line := selectionStartLine.
+            col := selectionStartCol.
+        ] ifFalse:[
+            line := selectionEndLine.
+            col := selectionEndCol.
+        ].
+        self makeLineVisible:line.
+        self makeColVisible:col inLine:line.
     ]
 
     "Modified: 6.3.1996 / 13:53:45 / cg"
@@ -4992,7 +4983,7 @@
 
     selectLine := self lineAtY:y. "/ self visibleLineToListLine:(self visibleLineOfY:y).
     selectLine notNil ifTrue:[
-	self selectLine:selectLine
+        self selectLine:selectLine
     ]
 !
 
@@ -5009,12 +5000,12 @@
     "select the word at given line/col"
 
     self
-	wordAtLine:line col:col do:[
-	    :beginLine :beginCol :endLine :endCol :style |
-
-	    self selectFromLine:beginLine col:beginCol toLine:endLine col:endCol.
-	    selectStyle := style
-	]
+        wordAtLine:line col:col do:[
+            :beginLine :beginCol :endLine :endCol :style |
+
+            self selectFromLine:beginLine col:beginCol toLine:endLine col:endCol.
+            selectStyle := style
+        ]
 
     "Modified: 18.3.1996 / 17:30:38 / cg"
 !
@@ -5028,8 +5019,8 @@
     selectVisibleLine := self visibleLineOfY:y.
     selectLine := self visibleLineToListLine:selectVisibleLine.
     selectLine notNil ifTrue:[
-	selectCol := self colOfX:x inVisibleLine:selectVisibleLine.
-	self selectWordAtLine:selectLine col:selectCol
+        selectCol := self colOfX:x inVisibleLine:selectVisibleLine.
+        self selectWordAtLine:selectLine col:selectCol
     ]
 
     "Modified: / 8.9.1998 / 21:22:46 / cg"
@@ -5103,7 +5094,7 @@
     device notNil ifTrue:[
         "On X11, be nice and set the PRIMARY selection.
          (#setPrimaryText:ownerView: is void in DeviceWorkstation)"
-	device setPrimaryText: self selectionAsString ownerView: self.
+        device setPrimaryText: self selectionAsString ownerView: self.
     ].
 
     "Created: / 17-04-2012 / 20:59:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -5126,34 +5117,34 @@
     |startLine endLine startVisLine endVisLine|
 
     selectionStartLine notNil ifTrue:[
-	startLine := selectionStartLine.
-	endLine := selectionEndLine.
-
-	self unselectWithoutRedraw.
-
-	"/ if the selection is not visible, we are done
-
-	startLine >= (firstLineShown + nLinesShown) ifTrue:[^ self].
-	endLine < firstLineShown ifTrue:[^ self].
-
-	startLine < firstLineShown ifTrue:[
-	    startVisLine := 1
-	] ifFalse:[
-	    startVisLine := self listLineToVisibleLine:startLine
-	].
-	endLine >= (firstLineShown + nLinesShown) ifTrue:[
-	    endVisLine := nLinesShown
-	] ifFalse:[
-	    endVisLine := self listLineToVisibleLine:endLine
-	].
-
-	"/ if its only part of a line, just redraw what has to be
-
-	(startLine == endLine) ifTrue:[
-	    super redrawVisibleLine:startVisLine from:selectionStartCol to:selectionEndCol
-	] ifFalse:[
-	    self redrawFromVisibleLine:startVisLine to:endVisLine
-	].
+        startLine := selectionStartLine.
+        endLine := selectionEndLine.
+
+        self unselectWithoutRedraw.
+
+        "/ if the selection is not visible, we are done
+
+        startLine >= (firstLineShown + nLinesShown) ifTrue:[^ self].
+        endLine < firstLineShown ifTrue:[^ self].
+
+        startLine < firstLineShown ifTrue:[
+            startVisLine := 1
+        ] ifFalse:[
+            startVisLine := self listLineToVisibleLine:startLine
+        ].
+        endLine >= (firstLineShown + nLinesShown) ifTrue:[
+            endVisLine := nLinesShown
+        ] ifFalse:[
+            endVisLine := self listLineToVisibleLine:endLine
+        ].
+
+        "/ if its only part of a line, just redraw what has to be
+
+        (startLine == endLine) ifTrue:[
+            super redrawVisibleLine:startVisLine from:selectionStartCol to:selectionEndCol
+        ] ifFalse:[
+            self redrawFromVisibleLine:startVisLine to:endVisLine
+        ].
     ].
     selectStyle := nil
 
--- a/VariablePanel.st	Mon Jul 18 10:18:55 2016 +0100
+++ b/VariablePanel.st	Fri Jul 29 22:05:57 2016 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1991 by Claus Gittinger
 	      All Rights Reserved
@@ -1544,7 +1546,7 @@
         lbl := self handleLabelAt:hIndex.
         lbl notNil ifTrue:[
             hIndex ~~ 1 ifTrue:[
-                self paint:Color black.
+                self paint:self blackColor.
                 lbl displayOn:self x:mar y:hy + (lbl ascentOn:self)
 "/                lbl isImageOrForm ifTrue:[
 "/                    lbl displayOn:self x:mar y:hy
--- a/bc.mak	Mon Jul 18 10:18:55 2016 +0100
+++ b/bc.mak	Fri Jul 29 22:05:57 2016 +0100
@@ -34,7 +34,7 @@
 
 LIBNAME=libstx_libwidg
 MODULE_PATH=libwidg
-RESFILES=libwidg.$(RES)
+RESFILES=stx_libwidgWINrc.$(RES)
 
 
 
@@ -70,82 +70,82 @@
 	$(TOP)\goodies\builder\reports\report-runner.bat -D . -r Builder::TestReport -p $(PACKAGE)
         
 clean::
-	del *.$(CSUFFIX)
+	-del *.$(CSUFFIX)
 
 
 # BEGINMAKEDEPEND --- do not remove this line; make depend needs it
 $(OUTDIR)ButtonController.$(O) ButtonController.$(C) ButtonController.$(H): ButtonController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(STCHDR)
-$(OUTDIR)DialogBox.$(O) DialogBox.$(C) DialogBox.$(H): DialogBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)DialogBox.$(O) DialogBox.$(C) DialogBox.$(H): DialogBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
 $(OUTDIR)EditTextViewCompletionSupport.$(O) EditTextViewCompletionSupport.$(C) EditTextViewCompletionSupport.$(H): EditTextViewCompletionSupport.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)EnterFieldGroup.$(O) EnterFieldGroup.$(C) EnterFieldGroup.$(H): EnterFieldGroup.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)FramedBox.$(O) FramedBox.$(C) FramedBox.$(H): FramedBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
+$(OUTDIR)FramedBox.$(O) FramedBox.$(C) FramedBox.$(H): FramedBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
 $(OUTDIR)GenericToolbarIconLibrary.$(O) GenericToolbarIconLibrary.$(C) GenericToolbarIconLibrary.$(H): GenericToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)Label.$(O) Label.$(C) Label.$(H): Label.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
-$(OUTDIR)ListView.$(O) ListView.$(C) ListView.$(H): ListView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)Label.$(O) Label.$(C) Label.$(H): Label.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)ListView.$(O) ListView.$(C) ListView.$(H): ListView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
 $(OUTDIR)ListViewController.$(O) ListViewController.$(C) ListViewController.$(H): ListViewController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(STCHDR)
 $(OUTDIR)MenuEvent.$(O) MenuEvent.$(C) MenuEvent.$(H): MenuEvent.st $(INCLUDE_TOP)\stx\libbasic\Message.$(H) $(INCLUDE_TOP)\stx\libbasic\MessageSend.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Event.$(H) $(INCLUDE_TOP)\stx\libview\WidgetEvent.$(H) $(INCLUDE_TOP)\stx\libview\WindowEvent.$(H) $(STCHDR)
-$(OUTDIR)ObjectView.$(O) ObjectView.$(C) ObjectView.$(H): ObjectView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
-$(OUTDIR)PanelView.$(O) PanelView.$(C) PanelView.$(H): PanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
-$(OUTDIR)PopUpMenu.$(O) PopUpMenu.$(C) PopUpMenu.$(H): PopUpMenu.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\PopUpView.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
-$(OUTDIR)PullDownMenu.$(O) PullDownMenu.$(C) PullDownMenu.$(H): PullDownMenu.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)ObjectView.$(O) ObjectView.$(C) ObjectView.$(H): ObjectView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)PanelView.$(O) PanelView.$(C) PanelView.$(H): PanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
+$(OUTDIR)PopUpMenu.$(O) PopUpMenu.$(C) PopUpMenu.$(H): PopUpMenu.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\PopUpView.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)PullDownMenu.$(O) PullDownMenu.$(C) PullDownMenu.$(H): PullDownMenu.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
 $(OUTDIR)RadioButtonGroup.$(O) RadioButtonGroup.$(C) RadioButtonGroup.$(H): RadioButtonGroup.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\ValueHolder.$(H) $(INCLUDE_TOP)\stx\libview2\ValueModel.$(H) $(STCHDR)
-$(OUTDIR)ScrollBar.$(O) ScrollBar.$(C) ScrollBar.$(H): ScrollBar.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
-$(OUTDIR)ScrollableView.$(O) ScrollableView.$(C) ScrollableView.$(H): ScrollableView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
-$(OUTDIR)Scroller.$(O) Scroller.$(C) Scroller.$(H): Scroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
+$(OUTDIR)ScrollBar.$(O) ScrollBar.$(C) ScrollBar.$(H): ScrollBar.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
+$(OUTDIR)ScrollableView.$(O) ScrollableView.$(C) ScrollableView.$(H): ScrollableView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
+$(OUTDIR)Scroller.$(O) Scroller.$(C) Scroller.$(H): Scroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(STCHDR)
 $(OUTDIR)SelectionInList.$(O) SelectionInList.$(C) SelectionInList.$(H): SelectionInList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\ValueHolder.$(H) $(INCLUDE_TOP)\stx\libview2\ValueModel.$(H) $(STCHDR)
-$(OUTDIR)VariablePanel.$(O) VariablePanel.$(C) VariablePanel.$(H): VariablePanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
+$(OUTDIR)VariablePanel.$(O) VariablePanel.$(C) VariablePanel.$(H): VariablePanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(STCHDR)
 $(OUTDIR)VariablePanelController.$(O) VariablePanelController.$(C) VariablePanelController.$(H): VariablePanelController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(STCHDR)
 $(OUTDIR)stx_libwidg.$(O) stx_libwidg.$(C) stx_libwidg.$(H): stx_libwidg.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(STCHDR)
-$(OUTDIR)Button.$(O) Button.$(C) Button.$(H): Button.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
-$(OUTDIR)CheckLabel.$(O) CheckLabel.$(C) CheckLabel.$(H): CheckLabel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
-$(OUTDIR)EnterBox.$(O) EnterBox.$(C) EnterBox.$(H): EnterBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
-$(OUTDIR)FontPanel.$(O) FontPanel.$(C) FontPanel.$(H): FontPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
-$(OUTDIR)HVScrollableView.$(O) HVScrollableView.$(C) HVScrollableView.$(H): HVScrollableView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollableView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalPanelView.$(O) HorizontalPanelView.$(C) HorizontalPanelView.$(H): HorizontalPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalScrollBar.$(O) HorizontalScrollBar.$(C) HorizontalScrollBar.$(H): HorizontalScrollBar.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollBar.$(H) $(STCHDR)
-$(OUTDIR)HorizontalScroller.$(O) HorizontalScroller.$(C) HorizontalScroller.$(H): HorizontalScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
-$(OUTDIR)InfoBox.$(O) InfoBox.$(C) InfoBox.$(H): InfoBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
-$(OUTDIR)MiniScroller.$(O) MiniScroller.$(C) MiniScroller.$(H): MiniScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
-$(OUTDIR)MultiColumnPanelView.$(O) MultiColumnPanelView.$(C) MultiColumnPanelView.$(H): MultiColumnPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
+$(OUTDIR)Button.$(O) Button.$(C) Button.$(H): Button.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
+$(OUTDIR)CheckLabel.$(O) CheckLabel.$(C) CheckLabel.$(H): CheckLabel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
+$(OUTDIR)EnterBox.$(O) EnterBox.$(C) EnterBox.$(H): EnterBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
+$(OUTDIR)FontPanel.$(O) FontPanel.$(C) FontPanel.$(H): FontPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
+$(OUTDIR)HVScrollableView.$(O) HVScrollableView.$(C) HVScrollableView.$(H): HVScrollableView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollableView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalPanelView.$(O) HorizontalPanelView.$(C) HorizontalPanelView.$(H): HorizontalPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalScrollBar.$(O) HorizontalScrollBar.$(C) HorizontalScrollBar.$(H): HorizontalScrollBar.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollBar.$(H) $(STCHDR)
+$(OUTDIR)HorizontalScroller.$(O) HorizontalScroller.$(C) HorizontalScroller.$(H): HorizontalScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
+$(OUTDIR)InfoBox.$(O) InfoBox.$(C) InfoBox.$(H): InfoBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
+$(OUTDIR)MiniScroller.$(O) MiniScroller.$(C) MiniScroller.$(H): MiniScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
+$(OUTDIR)MultiColumnPanelView.$(O) MultiColumnPanelView.$(C) MultiColumnPanelView.$(H): MultiColumnPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
 $(OUTDIR)MultiSelectionInList.$(O) MultiSelectionInList.$(C) MultiSelectionInList.$(H): MultiSelectionInList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(INCLUDE_TOP)\stx\libview2\ValueHolder.$(H) $(INCLUDE_TOP)\stx\libview2\ValueModel.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInList.$(H) $(STCHDR)
-$(OUTDIR)OptionBox.$(O) OptionBox.$(C) OptionBox.$(H): OptionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
+$(OUTDIR)OptionBox.$(O) OptionBox.$(C) OptionBox.$(H): OptionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(STCHDR)
 $(OUTDIR)PopUpListController.$(O) PopUpListController.$(C) PopUpListController.$(H): PopUpListController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(INCLUDE_TOP)\stx\libwidg\ButtonController.$(H) $(STCHDR)
-$(OUTDIR)SelectionInListView.$(O) SelectionInListView.$(C) SelectionInListView.$(H): SelectionInListView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(STCHDR)
-$(OUTDIR)SequenceView.$(O) SequenceView.$(C) SequenceView.$(H): SequenceView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollableView.$(H) $(STCHDR)
-$(OUTDIR)TextView.$(O) TextView.$(C) TextView.$(H): TextView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(STCHDR)
+$(OUTDIR)SelectionInListView.$(O) SelectionInListView.$(C) SelectionInListView.$(H): SelectionInListView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(STCHDR)
+$(OUTDIR)SequenceView.$(O) SequenceView.$(C) SequenceView.$(H): SequenceView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\ScrollableView.$(H) $(STCHDR)
+$(OUTDIR)TextView.$(O) TextView.$(C) TextView.$(H): TextView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(STCHDR)
 $(OUTDIR)ToggleController.$(O) ToggleController.$(C) ToggleController.$(H): ToggleController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(INCLUDE_TOP)\stx\libwidg\ButtonController.$(H) $(STCHDR)
-$(OUTDIR)VariableHorizontalPanel.$(O) VariableHorizontalPanel.$(C) VariableHorizontalPanel.$(H): VariableHorizontalPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanel.$(H) $(STCHDR)
+$(OUTDIR)VariableHorizontalPanel.$(O) VariableHorizontalPanel.$(C) VariableHorizontalPanel.$(H): VariableHorizontalPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanel.$(H) $(STCHDR)
 $(OUTDIR)VariableHorizontalPanelController.$(O) VariableHorizontalPanelController.$(C) VariableHorizontalPanelController.$(H): VariableHorizontalPanelController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanelController.$(H) $(STCHDR)
-$(OUTDIR)VariableVerticalPanel.$(O) VariableVerticalPanel.$(C) VariableVerticalPanel.$(H): VariableVerticalPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanel.$(H) $(STCHDR)
+$(OUTDIR)VariableVerticalPanel.$(O) VariableVerticalPanel.$(C) VariableVerticalPanel.$(H): VariableVerticalPanel.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanel.$(H) $(STCHDR)
 $(OUTDIR)VariableVerticalPanelController.$(O) VariableVerticalPanelController.$(C) VariableVerticalPanelController.$(H): VariableVerticalPanelController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(INCLUDE_TOP)\stx\libwidg\VariablePanelController.$(H) $(STCHDR)
-$(OUTDIR)VerticalPanelView.$(O) VerticalPanelView.$(C) VerticalPanelView.$(H): VerticalPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
+$(OUTDIR)VerticalPanelView.$(O) VerticalPanelView.$(C) VerticalPanelView.$(H): VerticalPanelView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libwidg\PanelView.$(H) $(STCHDR)
 $(OUTDIR)WorkspaceCompletionSupport.$(O) WorkspaceCompletionSupport.$(C) WorkspaceCompletionSupport.$(H): WorkspaceCompletionSupport.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextViewCompletionSupport.$(H) $(STCHDR)
 $(OUTDIR)XPToolbarIconLibrary.$(O) XPToolbarIconLibrary.$(C) XPToolbarIconLibrary.$(H): XPToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)ArrowButton.$(O) ArrowButton.$(C) ArrowButton.$(H): ArrowButton.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
-$(OUTDIR)EditTextView.$(O) EditTextView.$(C) EditTextView.$(H): EditTextView.st $(INCLUDE_TOP)\stx\libbasic\GenericException.$(H) $(INCLUDE_TOP)\stx\libbasic\Notification.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\Query.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
-$(OUTDIR)EnterBox2.$(O) EnterBox2.$(C) EnterBox2.$(H): EnterBox2.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(STCHDR)
-$(OUTDIR)FileSelectionList.$(O) FileSelectionList.$(C) FileSelectionList.$(H): FileSelectionList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)HorizontalMiniScroller.$(O) HorizontalMiniScroller.$(C) HorizontalMiniScroller.$(H): HorizontalMiniScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\MiniScroller.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
-$(OUTDIR)ListSelectionBox.$(O) ListSelectionBox.$(C) ListSelectionBox.$(H): ListSelectionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(STCHDR)
+$(OUTDIR)ArrowButton.$(O) ArrowButton.$(C) ArrowButton.$(H): ArrowButton.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
+$(OUTDIR)EditTextView.$(O) EditTextView.$(C) EditTextView.$(H): EditTextView.st $(INCLUDE_TOP)\stx\libbasic\GenericException.$(H) $(INCLUDE_TOP)\stx\libbasic\Notification.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libbasic\Query.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
+$(OUTDIR)EnterBox2.$(O) EnterBox2.$(C) EnterBox2.$(H): EnterBox2.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(STCHDR)
+$(OUTDIR)FileSelectionList.$(O) FileSelectionList.$(C) FileSelectionList.$(H): FileSelectionList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)HorizontalMiniScroller.$(O) HorizontalMiniScroller.$(C) HorizontalMiniScroller.$(H): HorizontalMiniScroller.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\MiniScroller.$(H) $(INCLUDE_TOP)\stx\libwidg\Scroller.$(H) $(STCHDR)
+$(OUTDIR)ListSelectionBox.$(O) ListSelectionBox.$(C) ListSelectionBox.$(H): ListSelectionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(STCHDR)
 $(OUTDIR)MacOSXToolbarIconLibrary.$(O) MacOSXToolbarIconLibrary.$(C) MacOSXToolbarIconLibrary.$(H): MacOSXToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)MenuView.$(O) MenuView.$(C) MenuView.$(H): MenuView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)PopUpList.$(O) PopUpList.$(C) PopUpList.$(H): PopUpList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
+$(OUTDIR)MenuView.$(O) MenuView.$(C) MenuView.$(H): MenuView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)PopUpList.$(O) PopUpList.$(C) PopUpList.$(H): PopUpList.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
 $(OUTDIR)RadioButtonController.$(O) RadioButtonController.$(C) RadioButtonController.$(H): RadioButtonController.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\Controller.$(H) $(INCLUDE_TOP)\stx\libwidg\ButtonController.$(H) $(INCLUDE_TOP)\stx\libwidg\ToggleController.$(H) $(STCHDR)
-$(OUTDIR)Toggle.$(O) Toggle.$(C) Toggle.$(H): Toggle.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
+$(OUTDIR)Toggle.$(O) Toggle.$(C) Toggle.$(H): Toggle.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(STCHDR)
 $(OUTDIR)VistaToolbarIconLibrary.$(O) VistaToolbarIconLibrary.$(C) VistaToolbarIconLibrary.$(H): VistaToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)WarningBox.$(O) WarningBox.$(C) WarningBox.$(H): WarningBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\InfoBox.$(H) $(STCHDR)
+$(OUTDIR)WarningBox.$(O) WarningBox.$(C) WarningBox.$(H): WarningBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\InfoBox.$(H) $(STCHDR)
 $(OUTDIR)AdwaitaToolbarIconLibrary.$(O) AdwaitaToolbarIconLibrary.$(C) AdwaitaToolbarIconLibrary.$(H): AdwaitaToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\VistaToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)CheckToggle.$(O) CheckToggle.$(C) CheckToggle.$(H): CheckToggle.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(INCLUDE_TOP)\stx\libwidg\Toggle.$(H) $(STCHDR)
-$(OUTDIR)ClickMenuView.$(O) ClickMenuView.$(C) ClickMenuView.$(H): ClickMenuView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\MenuView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
-$(OUTDIR)EditField.$(O) EditField.$(C) EditField.$(H): EditField.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
-$(OUTDIR)FileSelectionBox.$(O) FileSelectionBox.$(C) FileSelectionBox.$(H): FileSelectionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(INCLUDE_TOP)\stx\libwidg\ListSelectionBox.$(H) $(STCHDR)
+$(OUTDIR)CheckToggle.$(O) CheckToggle.$(C) CheckToggle.$(H): CheckToggle.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(INCLUDE_TOP)\stx\libwidg\Toggle.$(H) $(STCHDR)
+$(OUTDIR)ClickMenuView.$(O) ClickMenuView.$(C) ClickMenuView.$(H): ClickMenuView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\MenuView.$(H) $(INCLUDE_TOP)\stx\libwidg\SelectionInListView.$(H) $(STCHDR)
+$(OUTDIR)EditField.$(O) EditField.$(C) EditField.$(H): EditField.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
+$(OUTDIR)FileSelectionBox.$(O) FileSelectionBox.$(C) FileSelectionBox.$(H): FileSelectionBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(INCLUDE_TOP)\stx\libwidg\ListSelectionBox.$(H) $(STCHDR)
 $(OUTDIR)MacOSX2ToolbarIconLibrary.$(O) MacOSX2ToolbarIconLibrary.$(C) MacOSX2ToolbarIconLibrary.$(H): MacOSX2ToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\MacOSXToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)RadioButton.$(O) RadioButton.$(C) RadioButton.$(H): RadioButton.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(INCLUDE_TOP)\stx\libwidg\Toggle.$(H) $(STCHDR)
-$(OUTDIR)TextCollector.$(O) TextCollector.$(C) TextCollector.$(H): TextCollector.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
+$(OUTDIR)RadioButton.$(O) RadioButton.$(C) RadioButton.$(H): RadioButton.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\Button.$(H) $(INCLUDE_TOP)\stx\libwidg\Label.$(H) $(INCLUDE_TOP)\stx\libwidg\Toggle.$(H) $(STCHDR)
+$(OUTDIR)TextCollector.$(O) TextCollector.$(C) TextCollector.$(H): TextCollector.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
 $(OUTDIR)Windows8ToolbarIconLibrary.$(O) Windows8ToolbarIconLibrary.$(C) Windows8ToolbarIconLibrary.$(H): Windows8ToolbarIconLibrary.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libwidg\GenericToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\VistaToolbarIconLibrary.$(H) $(INCLUDE_TOP)\stx\libwidg\XPToolbarIconLibrary.$(H) $(STCHDR)
-$(OUTDIR)YesNoBox.$(O) YesNoBox.$(C) YesNoBox.$(H): YesNoBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\InfoBox.$(H) $(INCLUDE_TOP)\stx\libwidg\WarningBox.$(H) $(STCHDR)
-$(OUTDIR)FileSaveBox.$(O) FileSaveBox.$(C) FileSaveBox.$(H): FileSaveBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(INCLUDE_TOP)\stx\libwidg\FileSelectionBox.$(H) $(INCLUDE_TOP)\stx\libwidg\ListSelectionBox.$(H) $(STCHDR)
-$(OUTDIR)Workspace.$(O) Workspace.$(C) Workspace.$(H): Workspace.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextCollector.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
-$(OUTDIR)CodeView.$(O) CodeView.$(C) CodeView.$(H): CodeView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextCollector.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(INCLUDE_TOP)\stx\libwidg\Workspace.$(H) $(STCHDR)
+$(OUTDIR)YesNoBox.$(O) YesNoBox.$(C) YesNoBox.$(H): YesNoBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\InfoBox.$(H) $(INCLUDE_TOP)\stx\libwidg\WarningBox.$(H) $(STCHDR)
+$(OUTDIR)FileSaveBox.$(O) FileSaveBox.$(C) FileSaveBox.$(H): FileSaveBox.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\ModalBox.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\StandardSystemView.$(H) $(INCLUDE_TOP)\stx\libview\TopView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\DialogBox.$(H) $(INCLUDE_TOP)\stx\libwidg\EnterBox.$(H) $(INCLUDE_TOP)\stx\libwidg\FileSelectionBox.$(H) $(INCLUDE_TOP)\stx\libwidg\ListSelectionBox.$(H) $(STCHDR)
+$(OUTDIR)Workspace.$(O) Workspace.$(C) Workspace.$(H): Workspace.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextCollector.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(STCHDR)
+$(OUTDIR)CodeView.$(O) CodeView.$(C) CodeView.$(H): CodeView.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\View.$(H) $(INCLUDE_TOP)\stx\libwidg\EditTextView.$(H) $(INCLUDE_TOP)\stx\libwidg\ListView.$(H) $(INCLUDE_TOP)\stx\libwidg\TextCollector.$(H) $(INCLUDE_TOP)\stx\libwidg\TextView.$(H) $(INCLUDE_TOP)\stx\libwidg\Workspace.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
--- a/bmake.bat	Mon Jul 18 10:18:55 2016 +0100
+++ b/bmake.bat	Fri Jul 29 22:05:57 2016 +0100
@@ -8,3 +8,5 @@
 make.exe -N -f bc.mak  %DEFINES% %*
 
 
+
+
--- a/mingwmake.bat	Mon Jul 18 10:18:55 2016 +0100
+++ b/mingwmake.bat	Fri Jul 29 22:05:57 2016 +0100
@@ -11,3 +11,5 @@
 make.exe -N -f bc.mak %DEFINES% %USEMINGW_ARG% %*
 
 
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stx_libwidgWINrc.rc	Fri Jul 29 22:05:57 2016 +0100
@@ -0,0 +1,37 @@
+//
+// DO NOT EDIT
+// automagically generated from the projectDefinition: stx_libwidg.
+//
+VS_VERSION_INFO VERSIONINFO
+  FILEVERSION     7,1,1,46
+  PRODUCTVERSION  7,1,0,0
+#if (__BORLANDC__)
+  FILEFLAGSMASK   VS_FF_DEBUG | VS_FF_PRERELEASE
+  FILEFLAGS       VS_FF_PRERELEASE | VS_FF_SPECIALBUILD
+  FILEOS          VOS_NT_WINDOWS32
+  FILETYPE        VFT_DLL
+  FILESUBTYPE     VS_USER_DEFINED
+#endif
+
+BEGIN
+  BLOCK "StringFileInfo"
+  BEGIN
+    BLOCK "040904E4"
+    BEGIN
+      VALUE "CompanyName", "eXept Software AG\0"
+      VALUE "FileDescription", "Smalltalk/X Elementary Widgets (LIB)\0"
+      VALUE "FileVersion", "7.1.1.46\0"
+      VALUE "InternalName", "stx:libwidg\0"
+      VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 2012\0"
+      VALUE "ProductName", "Smalltalk/X\0"
+      VALUE "ProductVersion", "7.1.0.0\0"
+      VALUE "ProductDate", "Wed, 20 Jul 2016 16:31:41 GMT\0"
+    END
+
+  END
+
+  BLOCK "VarFileInfo"
+  BEGIN                               //  Language   |    Translation
+    VALUE "Translation", 0x409, 0x4E4 // U.S. English, Windows Multilingual
+  END
+END
--- a/vcmake.bat	Mon Jul 18 10:18:55 2016 +0100
+++ b/vcmake.bat	Fri Jul 29 22:05:57 2016 +0100
@@ -15,3 +15,4 @@
 
 
 
+