Merge jv
authorJan Vrany <jan.vrany@fit.cvut.cz>
Wed, 07 Oct 2015 07:58:36 +0100
branchjv
changeset 5470 00d06a29e01c
parent 5459 b54f4b01de15 (current diff)
parent 5469 9316f35ba70c (diff)
child 5472 b72befba5c7a
Merge
GenericToolbarIconLibrary.st
ScrollableView.st
TextView.st
--- a/FontPanel.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/FontPanel.st	Wed Oct 07 07:58:36 2015 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1991 by Claus Gittinger
 	      All Rights Reserved
@@ -158,7 +160,7 @@
 defaultLatin1SampleString
     "return the sample latin1 preview text"
 
-    ^ (self defaultAsciiSampleString) , 'äöüÄÖÜßéèêå©'
+    ^ (self defaultAsciiSampleString) , 'äöüÄÖÜßéèêå©'
 !
 
 defaultSampleStringForEncoding:enc
@@ -202,8 +204,8 @@
     |t|
 
     t := (self defaultAsciiSampleString) , '
-diaresis: äöüÄÖÜß
-accent: éèêåÅ
+diaresis: äöüÄÖÜß
+accent: éèêåÅ
 special: ' ,  #(16r20AC) asUnicodeString , '
 math: ' ,  #(16r2200 16r2203 16r221E 16r2208 16r2209) asUnicodeString , '
 cyrillic: ' ,  #(16r440 16r443 16r441 16r441 16r43A 16r438 16r439 16r20 16r44F 16r437 16r44B 16r43A) asUnicodeString , '
@@ -427,6 +429,7 @@
     "
      FontPanel openOn:(Font family:'courier' size:12)
      FontPanel openOn:MenuPanel defaultFont
+     FontPanel fontFromUser
     "
 ! !
 
@@ -491,7 +494,7 @@
     currentStyle := aFont style.
     currentFaceAndStyle := currentFace,'-',currentStyle.
 
-    self xftFontsOnlyHolder value:(aFont isXftFont).
+"/    self xftFontsOnlyHolder value:(aFont isXftFont).
     fontEncoding := aFont encoding.    
     sizeUnit := aFont sizeUnit.
     sizeUnit = #px ifTrue:[
@@ -527,8 +530,8 @@
 !
 
 initialize
-    |familyLabel faceLabel sizeLabel panel fontBrowserView v1 v2 v3
-     mm fH eH l box1 box2 showFontNameLabel xftCheckBox vPanel|
+    |familyLabel faceLabel sizeLabel panel panel2 fontBrowserView fp v1 v2 v3
+     mm fH l box1 box2 showFontNameLabel xftCheckBox vPanel|
 
     super initialize.
 
@@ -541,27 +544,39 @@
 
     panel := View origin:0.0@0.0 corner:1.0@1.0 in:self.
     panel bottomInset:(buttonPanel preferredHeight 
-                        + (mm*3) 
-                        + (showFontNameLabel ifTrue:24 ifFalse:0) ).
+                        + (mm) 
+                        "+ (showFontNameLabel ifTrue:24 ifFalse:0)" ).
+
+    vPanel := VariableVerticalPanel in:panel.
+    vPanel origin:0.0@0.0 corner:1.0@1.0.
+
+    previewField := HVScrollableView for:TextView in:vPanel.
+    fontBrowserView := View in:vPanel.
+    fp := View in:fontBrowserView.
+    fp layout:(0.0@0.0 corner:1.0@1.0) asFractionalLayout. 
+    fp layout bottomOffset:-75.
 
     label := resources string:'Font dialog'.
 
-    box1 := HorizontalPanelView in:panel.
-    "/ box horizontalLayout:#leftFit.
-    box1 horizontalLayout:#left.
-    box1 origin:0.0@1.0 corner:0.8@1.0.
+    panel2 := VerticalPanelView in:fontBrowserView.
+    panel2 layout:(0.0@1.0 corner:1.0@1.0) asFractionalLayout.
+    panel2 layout topOffset:-75.
+    
+    panel2 horizontalLayout:#fit.
+    panel2 verticalLayout:#top.
 
-    box2 := HorizontalPanelView in:panel.
-    "/ box horizontalLayout:#leftFit.
+    box1 := HorizontalPanelView in:panel2.
+    box1 height:25.
+    box1 horizontalLayout:#leftSpace.
+
+    box2 := HorizontalPanelView in:panel2.
+    box2 height:25.
     box2 horizontalLayout:#right.
-    box2 origin:0.8@1.0 corner:1.0@1.0.
 
     l := Label label:(resources string:'Encoding:') in:box1.
     l borderWidth:0.
     l adjust:#left.
 
-    eH := 0.
-
     encodingFilter := ComboBoxView in:box1.
     "/ encodingFilter font:l font.
     encodingFilter level:-1.
@@ -571,10 +586,7 @@
     encodingFilter immediateAccept:true.
     "/ encodingFilter editor font:l font.
 
-    self showEncodingFilter ifTrue:[
-        eH := encodingFilter preferredHeight.
-        box1 topInset:(eH negated-4); horizontalInset:mm.
-    ] ifFalse:[
+    self showEncodingFilter ifFalse:[
         encodingFilter beInvisible
     ].
 
@@ -585,9 +597,7 @@
 "/    encodingFilter acceptOnPointerLeave:true.
 
     encodingLabel := Label label:' ' in:box1.
-    "/ eH := encodingLabel preferredExtent y.
-    "/ encodingLabel origin:0.6@1.0 corner:1.0@1.0.
-    "/ encodingLabel topInset:(eH negated); horizontalInset:mm.
+
     encodingLabel level:0; adjust:#left.
     encodingLabel adjust:#right.
     self showEncodingFilter ifFalse:[
@@ -595,14 +605,10 @@
     ].
 
     Screen current supportsXFTFonts ifTrue:[
-        UserPreferences current useXftFontsOnly ifTrue:[
-            self xftFontsOnlyHolder value: true.
-        ] ifFalse:[
-            self xftFontsOnlyHolder value: false.
-            xftCheckBox := CheckBox label:'XFT Fonts Only' in:box1.
-            xftCheckBox model:xftFontsOnlyHolder.
-            xftFontsOnlyHolder onChangeEvaluate:[ self xftFontsOnlyChanged ].
-        ].
+        self xftFontsOnlyHolder value: (UserPreferences current useXftFontsOnly).
+        xftCheckBox := CheckBox label:'XFT Fonts Only' in:box1.
+        xftCheckBox model:xftFontsOnlyHolder.
+        xftFontsOnlyHolder onChangeEvaluate:[ self xftFontsOnlyChanged ].
     ].
 
 "/    sep := View in:box1.
@@ -614,28 +620,21 @@
     pixelPointSwitch contents:'pt'.
     pixelPointSwitch list:#(#pt #px).
     pixelPointSwitch action:[:sizeUnit | self sizeUnitSelected:sizeUnit].
-    box2 topInset:(pixelPointSwitch preferredHeight negated-4); horizontalInset:mm.
+    "/ box2 topInset:(pixelPointSwitch preferredHeight negated-4); horizontalInset:mm.
     "/ encodingFilter editor font:l font.
 
-    self showEncodingFilter ifTrue:[
-        eH := encodingFilter preferredHeight.
-        box1 topInset:(eH negated-4); horizontalInset:mm.
-    ] ifFalse:[
-        encodingFilter beInvisible
-    ].
+"/    self showEncodingFilter ifFalse:[
+"/        encodingFilter beInvisible
+"/    ].
 
     showFontNameLabel ifTrue:[
-        nameLabel := Label label:'' in:self.
-        nameLabel origin:0.0@1.0 corner:1.0@1.0.
-        nameLabel bottomInset:(buttonPanel preferredHeight + (mm*2)).
-        nameLabel topInset:(buttonPanel preferredHeight + (mm*2) + 24) negated; horizontalInset:mm.
+        nameLabel := Label label:'' in:panel2.
+        "/ nameLabel origin:0.0@1.0 corner:1.0@1.0.
+        "/ nameLabel bottomInset:(buttonPanel preferredHeight + (mm*2)).
+        "/ nameLabel topInset:(buttonPanel preferredHeight + (mm*2) + 24) negated; horizontalInset:mm.
         nameLabel level:0; adjust:#left.
     ].
 
-    vPanel := VariableVerticalPanel in:panel.
-    vPanel origin:0.0@0.0 corner:1.0@1.0.
-
-    previewField := HVScrollableView for:TextView in:vPanel.
     "/ previewField origin:0.0@0.0 corner:1.0@0.4.
     previewField autoHideScrollBars:true.
     previewField := previewField scrolledView.
@@ -647,12 +646,8 @@
         previewField borderWidth:1.
     ].
 
-    fontBrowserView := View in:vPanel.
-    "/ fontBrowserView origin:0.0@0.4 corner:1.0@1.0.
-    fontBrowserView bottomInset:(eH + mm).
-
-    v1 := View origin:0.0@0.0 corner:0.4@1.0 in:fontBrowserView.
-
+    v1 := View origin:0.0@0.0 corner:0.4@1.0 in:fp.
+    
     familyLabel := Label label:(resources string:'Family') in:v1.
     familyLabel borderWidth:0.
     familyLabel origin:(0.0 @ 0.0) extent:(1.0 @ nil).
@@ -666,7 +661,7 @@
     familyList := familyList scrolledView.
     self makeTabable:familyList.
 
-    v2 := View origin:0.4@0.0 corner:0.8@1.0 in:fontBrowserView.
+    v2 := View origin:0.4@0.0 corner:0.8@1.0 in:fp.
 
     faceLabel := Label label:(resources string:'Typeface') in:v2.
     faceLabel borderWidth:0.
@@ -679,7 +674,7 @@
     faceList := faceList scrolledView.
     self makeTabable:faceList.
 
-    v3 := View origin:0.8@0.0 corner:1.0@1.0 in:fontBrowserView.
+    v3 := View origin:0.8@0.0 corner:1.0@1.0 in:fp.
 
     sizeLabelHolder := (resources string:'Size') asValue.
     sizeLabel := Label in:v3.
@@ -702,6 +697,7 @@
 
     "
      FontPanel new showAtPointer
+     FontPanel fontFromUser
     "
 
     "Modified: 31.5.1996 / 22:01:45 / cg"
@@ -851,6 +847,7 @@
 
     fonts size > 1 ifTrue:[
         'FontPanel [info]: huh - multiple entries: ' infoPrint. fonts infoPrintCR.
+        "/ self halt.
     ].
     fontShown := fonts first.
     fontShown isScaledFont ifTrue:[
@@ -928,9 +925,18 @@
 getFamilyList 
     "the list of font families"
 
-    |d|
+    |d sav_useXftFontsOnly sav_useXFontsOnly|
 
-    allFonts := self graphicsDevice listOfAvailableFonts.
+    sav_useXftFontsOnly := UserPreferences current useXftFontsOnly.
+    sav_useXFontsOnly := UserPreferences current useXFontsOnly.
+    [
+        UserPreferences current useXftFontsOnly:(xftFontsOnlyHolder value).            
+        UserPreferences current useXFontsOnly:false.            
+        allFonts := self graphicsDevice listOfAvailableFonts.
+    ] ensure:[
+        UserPreferences current useXftFontsOnly:sav_useXftFontsOnly.            
+        UserPreferences current useXFontsOnly:sav_useXFontsOnly.            
+    ].    
     allFonts isNil ifTrue:[^ nil].
 
     d := Dictionary new.
@@ -1076,7 +1082,8 @@
     currentEncoding := selectedFont encoding.
 
     fontsPerFamily isNil ifTrue:[
-        self getFamilyList
+        self updateFamilyList
+        "/ self getFamilyList
     ].
 
     self familySelected:fam showPreview:false.
@@ -1334,12 +1341,24 @@
 familySelected:aFamilyName showPreview:showPreview
     "a fonts family was selected; find available faces and update lists"
 
-    |faces styles list|
+    |familyNameUsed faces styles list idx|
 
-    familyList setSelectElement:aFamilyName.
-
-    currentFamily := aFamilyName.
-    faces := self getFacesForFamily:aFamilyName filtering:combinedFilter.
+    familyNameUsed := aFamilyName.
+    
+    familyList setSelectElement:familyNameUsed.
+    familyList selection isNil ifTrue:[
+        "/ mhm - maybe lowercase...
+        idx := familyList list indexOf:(familyNameUsed := aFamilyName asUppercaseFirst).
+        idx == 0 ifTrue:[
+            idx := familyList list indexOf:(familyNameUsed := aFamilyName asLowercaseFirst).
+        ].
+        idx ~~ 0 ifTrue:[
+            familyList selection:idx.
+        ].
+    ].
+    
+    currentFamily := familyNameUsed.
+    faces := self getFacesForFamily:currentFamily filtering:combinedFilter.
     faces isEmptyOrNil ifTrue:[
         currentFace := currentStyle := currentFaceAndStyle := nil.
         faceList list:nil.
@@ -1349,7 +1368,7 @@
 
     list := SortedCollection new.
     faces do:[:aFace |
-        styles := (self getStylesInFamily:aFamilyName face:aFace filtering:combinedFilter) ? #().
+        styles := (self getStylesInFamily:currentFamily face:aFace filtering:combinedFilter) ? #().
         styles do:[:aStyle |
             aFace isEmpty ifTrue:[
                 list add:(aStyle)
--- a/GenericToolbarIconLibrary.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/GenericToolbarIconLibrary.st	Wed Oct 07 07:58:36 2015 +0100
@@ -168,6 +168,58 @@
 DQDBDQDR@QDPDQDBDQDR@QDQDQDBDRDR@QDQDQ@1H H!!LADTDQ@"@A@BHADPDRD@DQDP@RDPDQHQDQDQD!!DQDQDQDQDQDQDP') colorMapFromArray:#[240 76 0 240 151 26 255 213 5 245 234 120] mask:((ImageMask width:17 height:18) bits:(ByteArray fromPackedString:'@@@@@H@@@\@@@\@@@>@@@>@@_?<@_?<@O?8@G?0@C? @C? @C? @G?0@G70@OA8@D@P@@@@@'); yourself); yourself]
 !
 
+checkToggleOffEnteredIcon
+    ^ self checkToggleOffIcon
+!
+
+checkToggleOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self checkToggleOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#checkToggleOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary checkToggleOffIcon'
+        ifAbsentPut:[(Depth8Image width:13 height:13) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@GA0\GA0\GA0\GA0@@A0\GA0\GA0\GA0\@@@\GA0\GA0\GA0\G@@@GA0\GA0\GA0\GA0@@A0\GA0\GA0\GA0\@@@\GA0\GA0\GA0\G
+@@@GA0\GA0\GA0\GA0@@A0\GA0\GA0\GA0\@@@\GA0\GA0\GA0\G@@@GA0\GA0\GA0\GA0@@A0\GA0\GA0\GA0\@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[142 143 143 242 242 242 212 215 219 202 203 204 230 230 230 237 237 237 246 246 246 244 244 244]; yourself]
+!
+
+checkToggleOnEnteredIcon
+    ^ self checkToggleOnIcon
+!
+
+checkToggleOnIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self checkToggleOnIcon inspect
+     ImageEditor openOnClass:self andSelector:#checkToggleOnIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary checkToggleOnIcon'
+        ifAbsentPut:[(Depth8Image width:13 height:13) bits:(ByteArray fromPackedString:'
+E1\WE1\WE1\WE1\WE1\/K2</K2</MP(^K1\WK2</K2</K1=@H"<WE2</K2</K2<IA1@/E1\/K2</K2<(LPH/K1\WK2</K2</BC@RK2<WE2</C3<=KPD8K2</
+E1\/K0@0GAP3PR</K1\WK2</CTL3C!!$/K2<WE2</K2YBO"\JK2</E1\/K2</M#$SK2</K1\WK2</K2</K2</K2<WE1\WE1\WE1\WE1\WE0@a') colorMapFromArray:#[110 127 170 73 94 150 101 119 165 205 207 209 245 245 245 231 231 232 230 230 230 68 90 146 94 113 161 87 106 157 249 249 249 201 204 208 222 224 225 72 93 149 97 115 164 201 207 221 185 191 208 203 207 213 188 195 214 242 243 246 103 120 167 223 226 233 213 216 220 142 143 143 198 200 202 248 249 250 236 237 237 202 203 204 207 212 226 219 220 220 246 246 246 157 167 192 237 238 241 234 236 240 220 223 228 242 243 244 204 208 214 213 217 221 139 153 187 176 185 209 175 184 207 235 235 236 233 233 234 220 221 222 218 218 219 186 193 213 223 226 229 244 244 244 71 92 148 69 90 146 225 226 226 75 96 151 205 209 214 248 248 248 140 153 186 174 179 185 100 118 165 144 157 189 213 213 214 197 201 205 222 225 233 237 238 238 76 97 152 163 174 200 119 134 171 183 191 213 74 95 151 73 95 150]; yourself]
+!
+
 clearConsoleIcon
     <resource: #programImage>
 
@@ -234,12 +286,208 @@
 QVE**71&QS-0G AST5MST5MSQTT9DJ@@T5MST5MST5MST5MST5MST5MST5MST5MST5MST5MS') ; colorMapFromArray:#[254 201 107 255 238 154 231 208 160 194 135 4 196 136 7 255 255 199 209 157 23 209 166 33 255 242 193 217 175 45 217 158 32 217 165 32 201 152 48 248 240 224 255 255 238 231 172 54 209 168 80 255 242 119 255 221 103 251 230 118 255 254 147 255 212 110 255 201 106 255 252 167 238 221 165 255 251 187 191 130 2 197 139 10 255 233 177 203 146 20 239 224 192 247 238 206 222 173 41 222 177 44 213 165 49 239 239 231 255 255 237 213 174 74 235 177 62 255 252 128 255 255 136 255 202 86 218 184 112 255 224 122 230 206 136 255 225 139 255 217 142 191 131 2 196 138 8 198 140 12 202 144 16 213 167 32 202 143 11 217 176 45 226 197 61 222 159 31 213 174 59 192 136 16 241 240 236 205 160 64 255 255 248 248 183 66 222 189 103 255 198 83 122 152 175 255 252 150 255 255 159 234 213 147 255 255 176 189 129 1 192 131 3 242 230 186 255 255 202 204 147 20 204 151 25 247 237 204 251 244 211 255 255 222 255 242 213 255 255 230 238 209 79 238 199 71 242 198 74 255 255 255 255 251 127 255 229 108 255 204 88 255 191 80 255 206 103 255 238 140 238 217 147 255 252 173 238 222 173 193 135 4 198 140 11 201 144 16 204 146 19 242 230 193 247 237 203 217 154 26 251 247 217 230 196 63 197 138 6 241 242 237 217 175 68 247 238 109 242 191 74 251 216 94 242 187 79 247 188 80 255 206 95 255 238 135 222 192 127 234 209 143 238 222 156 255 255 189 194 136 6 251 242 188 201 143 14 203 146 19 202 147 21 255 255 213 213 154 28 222 166 36 213 156 24 255 255 229 234 187 59 238 197 70 252 248 240 247 202 80 255 255 129 255 230 109 255 213 96 255 212 94 238 211 121 230 203 129 255 246 158 255 255 172 255 238 167 192 132 4 197 138 9 201 142 13 203 145 18 202 151 29 202 146 13 213 173 46 213 159 38 235 216 176 217 169 52 238 222 89 217 173 66 240 244 246 247 209 86 0 0 0 213 176 96 255 206 89 255 189 76 248 194 95 136 162 181 247 238 154 227 200 144 255 252 181 191 130 1 191 129 1 255 254 196 255 238 187 255 255 206 255 255 212 247 238 207 243 232 208 202 144 11 226 169 41 240 240 233 213 173 70 238 181 57 251 247 119 255 238 116 255 222 103 255 199 84 226 197 119 255 254 154 237 237 237 167 167 167 151 151 151 229 229 229 175 175 175 252 252 252 150 150 150 250 250 250 244 244 244 207 207 207 193 193 193 242 242 242 154 154 154 244 244 244 216 216 216 205 205 205 163 163 163 239 239 239 245 245 245 166 166 166 248 248 248 244 244 244 246 246 246 210 210 210 240 240 240 225 225 225 150 150 150 147 147 147 145 145 145 142 142 142 199 199 199 139 139 139 140 140 140 143 143 143 214 214 214 204 204 204 178 178 178 195 195 195 199 199 199 214 214 214 186 186 186]; mask:((ImageMask new) width:18; height:18; bits:(ByteArray fromPackedString:'@@@@_@@@??0@??0@??0@???@???@???@??>@??>@??>@??<@??<@??8@??0@?<@@>@@@@@@@') ; yourself); yourself]
 !
 
+radioOffDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self radioOffDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#radioOffDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary radioOffDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:17 height:17) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C!!IOC@.MS @@@@@@@@@@EPVM0-RFBT9BRXR@@@@@@AFPD, HB@ HB@ R20M@@@@@CP*@ HB@ HB@ HBG3P@@@@''P!!8^
+G!!8^G!!8^G!!8^C"H@@C0PL3L3L3L3L3L3L3L$JP@@H0<A@PDA@PDA@PDA@T(J@@@TN#8>O#8>O#8>O#8>DR @@A]VO3<?O3<?O3<?O3<=E@@@@D0QR$)JR$)J
+R$)JDPTU@@AER@0>TEAPTEAPTEHLQDT@@@AAK2DDS%@OTD8DT$MU@@@@@D4YV@YRG  ^T YYQ1,@@@@@@@\]L"<6M#,/KSD\@@@@@@@@@@@ZJ5]ZTQLZ@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[164 165 162 243 243 241 248 248 248 235 235 235 245 245 244 215 217 213 225 227 222 219 219 218 247 247 247 186 187 184 154 156 152 221 222 220 239 240 238 226 226 226 176 178 175 235 235 233 213 213 211 242 242 240 227 227 227 146 147 144 145 147 143 162 164 161 180 181 178 148 149 145 246 246 246 134 135 132 192 192 191 220 220 220 218 218 218 138 140 136 246 246 245 214 215 213 250 250 250 240 241 238 206 207 205 155 157 153 214 215 212 240 240 240 179 181 178 206 207 206 146 148 143 173 175 172 210 211 209 147 148 145 167 168 165 168 170 164 175 177 173 206 209 203 171 173 169 137 139 136 167 169 165 245 245 243 171 172 169 189 190 187 212 216 208 185 187 184 212 212 211 221 222 221 240 240 238 212 216 209 175 177 174 234 235 233 241 241 239 239 239 237 168 170 166 146 148 144 174 176 173 206 208 202 172 175 170 198 199 197 226 227 226 134 136 132 172 173 169 189 191 188 237 237 235 215 216 214 214 216 213 221 221 220 239 239 238 236 236 236 236 236 234 122 123 120 240 240 239 237 237 237 227 227 226 145 147 144 234 234 233 122 124 120 204 207 201 204 208 200 116 118 114] mask:((ImageMask width:17 height:17) bits:(ByteArray fromPackedString:'@@A?A?A?G?1?O?9?O?9?_?=?_?=?_?=?_?=?_?=?_?=?_?=?O?9?O?9?G?1?A?A?@@A?'); yourself); yourself]
+!
+
+radioOffEnteredIcon
+    ^ self radioOffIcon
+!
+
+radioOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self radioOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#radioOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary radioOffIcon'
+        ifAbsentPut:[(Depth8Image width:17 height:17) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C!!IOC@.MS @@@@@@@@@@EPVM0-RFBT9BRXR@@@@@@AFPD, HB@ HB@ R20M@@@@@CP*@ HB@ HB@ HBG3P@@@@''P!!8^
+G!!8^G!!8^G!!8^C"H@@C0PL3L3L3L3L3L3L3L$JP@@H0<A@PDA@PDA@PDA@T(J@@@TN#8>O#8>O#8>O#8>DR @@A]VO3<?O3<?O3<?O3<=E@@@@D0QR$)JR$)J
+R$)JDPTU@@AER@0>TEAPTEAPTEHLQDT@@@AAK2DDS%@OTD8DT$MU@@@@@D4YV@YRG  ^T YYQ1,@@@@@@@\]L"<6M#,/KSD\@@@@@@@@@@@ZJ5]ZTQLZ@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[164 165 162 243 243 241 248 248 248 235 235 235 245 245 244 215 217 213 225 227 222 219 219 218 247 247 247 186 187 184 154 156 152 221 222 220 239 240 238 226 226 226 176 178 175 235 235 233 213 213 211 242 242 240 227 227 227 146 147 144 145 147 143 162 164 161 180 181 178 148 149 145 246 246 246 134 135 132 192 192 191 220 220 220 218 218 218 138 140 136 246 246 245 214 215 213 250 250 250 240 241 238 206 207 205 155 157 153 214 215 212 240 240 240 179 181 178 206 207 206 146 148 143 173 175 172 210 211 209 147 148 145 167 168 165 168 170 164 175 177 173 206 209 203 171 173 169 137 139 136 167 169 165 245 245 243 171 172 169 189 190 187 212 216 208 185 187 184 212 212 211 221 222 221 240 240 238 212 216 209 175 177 174 234 235 233 241 241 239 239 239 237 168 170 166 146 148 144 174 176 173 206 208 202 172 175 170 198 199 197 226 227 226 134 136 132 172 173 169 189 191 188 237 237 235 215 216 214 214 216 213 221 221 220 239 239 238 236 236 236 236 236 234 122 123 120 240 240 239 237 237 237 227 227 226 145 147 144 234 234 233 122 124 120 204 207 201 204 208 200 116 118 114] mask:((ImageMask width:17 height:17) bits:(ByteArray fromPackedString:'@@A?A?A?G?1?O?9?O?9?_?=?_?=?_?=?_?=?_?=?_?=?_?=?O?9?O?9?G?1?A?A?@@A?'); yourself); yourself]
+!
+
+radioOnDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self radioOnDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#radioOnDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary radioOnDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:17 height:17) bits:(ByteArray fromPackedString:'
+M3\7M3\7M3\7M3\7M3\7M3\7M3\7M51MP#1CSU<7M3\7M3\7M7IDR&*J%II-RTY7M3\7M3]5NVZW%9^W%9^WYS-6M3\7M35#%)ZV%)ZV%)ZVWTD7M3]YQYNS
+%KR ''<B0%INSO5(7M4A$$IB,+96[&)>''$IA[QC\7KHBO#;F<''+R".I&O#7(/M3\%"H2B.Z.]*;6+.8NL!!BT7M2!!>!!W2(/**X+)2-_XU;J3\7NF^M_:&3&KZ+
+)Y:A#&@:M3]OO(^I-:&:(Z""]X2CN%H7M3\''U(ZQ^F%!!ZG&Q!!EP*M3\7M6, UWNK$9VS"WASH&87M3\7M60#MU!!^X%9WL2Q/M3\7M3\7M3]PK!!(UF2=QM3\7
+M3\7M3\7M3\7M3\7M3\7M3\7M0@a') colorMapFromArray:#[55 103 165 56 104 165 58 106 166 63 110 169 64 110 169 64 111 170 69 114 171 70 116 173 76 119 173 76 119 174 79 121 173 80 122 174 85 125 176 87 127 179 89 129 179 102 147 198 104 148 198 114 159 207 115 154 201 115 159 207 118 157 202 123 125 121 125 163 206 127 165 208 128 169 211 129 169 212 130 132 128 130 132 129 131 168 209 131 171 213 134 170 210 136 174 215 137 139 135 137 175 215 138 140 136 142 143 140 143 145 142 145 147 143 145 180 217 146 148 143 148 149 146 148 182 218 149 150 147 149 151 148 153 155 152 153 186 221 154 156 153 155 157 154 155 175 194 156 175 194 158 177 195 160 162 158 161 179 195 163 165 160 163 191 222 164 165 162 164 166 163 167 168 165 167 169 165 168 170 167 171 173 169 171 173 170 171 174 168 174 175 171 174 175 173 174 176 172 175 177 173 175 177 174 176 178 175 177 179 175 178 179 176 180 204 229 181 197 215 184 186 183 186 187 184 186 201 218 187 202 220 189 190 187 191 205 222 199 199 197 199 200 199 201 201 200 201 202 201 202 204 198 202 205 199 203 205 199 203 207 201 204 207 201 205 208 201 207 207 205 209 210 208 210 211 208 210 211 210 211 211 210 211 215 208 212 212 211 212 214 210 212 215 208 212 216 208 213 213 212 213 214 212 214 214 213 215 216 215 215 217 214 215 218 211 215 218 212 221 222 221 222 222 221 222 222 222 223 224 222 224 224 224 224 225 224 224 226 222 225 226 222 225 226 225 225 227 222 225 227 223 226 226 226 227 227 226 227 227 227 230 231 228 231 232 228 232 232 231 232 233 230 233 234 231 234 235 231 234 235 233 235 235 233 235 236 233 236 237 234 237 237 235 238 239 236 238 239 237 239 239 237 239 240 237 239 240 238 240 240 238 240 240 239 240 240 240 240 241 239 241 241 239 241 241 240 242 242 240 243 243 241 244 244 243 245 245 244 245 245 245 246 246 245 246 246 246 247 247 247 248 248 248 250 250 250 163 163 163 118 118 118 147 147 147 186 186 186 156 156 156 150 150 150 175 175 175 102 102 102 120 120 120 95 95 95 173 173 173 175 175 175 246 246 246 106 106 106 150 150 150 198 198 198 111 111 111 171 171 171 167 167 167 161 161 161 194 194 194 115 115 115 168 168 168 103 103 103 202 202 202 114 114 114 161 161 161 108 108 108 199 199 199 102 102 102 180 180 180 225 225 225 139 139 139 96 96 96 112 112 112 98 98 98 140 140 140 151 151 151 158 158 158 171 171 171 122 122 122] mask:((ImageMask width:17 height:17) bits:(ByteArray fromPackedString:'@@A?A?A?G?1?O?9?O?9?_?=?_?=?_?=?_?=?_?=?_?=?_?=?O?9?O?9?G?1?A?A?@@A?'); yourself); yourself]
+!
+
+radioOnEnteredIcon
+    ^ self radioOnIcon
+!
+
+radioOnIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self radioOnIcon inspect
+     ImageEditor openOnClass:self andSelector:#radioOnIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary radioOnIcon'
+        ifAbsentPut:[(Depth8Image width:17 height:17) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J<5K#@<MS @@@@@@@@@@LTNBS$%FH=4 U0R@@@@@@@MKH8 HB@ HB@ 0I=T@@@@@F2C@ HB@ HB@ HB\7(@@@BV118^
+G)]8&W]%G!!8^^Z\@@H&:!!XU.&IFS0<*J!!XV(C @@_74A@\FZ3Y.?2:,A@["M@@@TN#9J\H/D^9JK.\0>''AP@@JT=O6>F_FOHYF6P\S>-XP@@!!8R1C562%F*L
+Y6Z=DV 2@@A^(@1R]YWB\(Z&]#;LL+X@@@@(W94D(;B^ZZPD''JE"@@@@@G;NX@Z)G  ^T+V"G\X@@@@@@K.@,:3IM,%X*+2H@@@@@@@@@@B./&.B-H67@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[164 165 162 243 243 241 248 248 248 235 235 235 245 245 244 215 217 213 225 227 222 219 219 218 247 247 247 186 187 184 154 156 152 221 222 220 239 240 238 226 226 226 176 178 175 235 235 233 213 213 211 242 242 240 227 227 227 146 147 144 145 147 143 162 164 161 180 181 178 148 149 145 246 246 246 134 135 132 192 192 191 220 220 220 218 218 218 138 140 136 246 246 245 214 215 213 250 250 250 240 241 238 206 207 205 155 157 153 214 215 212 240 240 240 179 181 178 206 207 206 146 148 143 173 175 172 210 211 209 147 148 145 167 168 165 168 170 164 175 177 173 206 209 203 171 173 169 137 139 136 167 169 165 245 245 243 171 172 169 189 190 187 212 216 208 185 187 184 212 212 211 221 222 221 240 240 238 212 216 209 175 177 174 234 235 233 241 241 239 239 239 237 168 170 166 146 148 144 174 176 173 206 208 202 172 175 170 198 199 197 226 227 226 134 136 132 172 173 169 189 191 188 237 237 235 215 216 214 214 216 213 221 221 220 239 239 238 236 236 236 236 236 234 122 123 120 240 240 239 237 237 237 227 227 226 145 147 144 234 234 233 122 124 120 204 207 201 204 208 200 116 118 114 0 0 0 178 179 176 156 175 194 199 199 197 203 207 201 203 205 199 149 151 148 149 150 147 136 174 215 137 175 215 191 205 222 161 179 195 69 114 171 212 214 210 215 218 211 153 186 221 130 132 128 171 173 170 125 163 206 181 197 215 233 234 231 56 104 165 234 235 231 55 103 165 211 211 210 223 224 222 225 226 222 225 227 223 89 129 179 87 127 179 174 175 171 174 176 172 128 169 211 127 165 208 235 236 233 222 222 221 153 155 152 142 143 140 184 186 183 123 125 121 213 213 212 215 217 214 244 244 243 76 119 173 164 166 163 224 225 224 174 175 173 186 201 218 129 169 212 131 168 209 155 157 154 215 216 215 245 245 245 80 122 174 118 157 202 115 159 207 163 191 222 134 170 210 155 175 194 207 207 205 187 202 220 64 111 170 64 110 169 104 148 198 180 204 229 238 239 237 239 240 237 212 215 208 168 170 167 171 174 168 202 205 199 202 204 198 230 231 228 231 232 228 148 149 146 158 177 195 209 210 208 210 211 208 240 241 239 160 162 158 85 125 176 205 208 201 232 233 230 199 200 199 210 211 210 215 218 212 241 241 240 70 116 173 163 165 160 130 132 129 224 226 222 201 202 201 201 201 200 232 232 231 58 106 166 213 214 212 222 222 222 143 145 142 236 237 234 154 156 153 145 180 217 214 214 213 79 121 173 76 119 174 115 154 201 114 159 207 225 226 225 224 224 224 177 179 175 131 171 213 211 215 208 63 110 169 102 147 198 238 239 236 148 182 218 137 139 135] mask:((ImageMask width:17 height:17) bits:(ByteArray fromPackedString:'@@A?A?A?G?1?O?9?O?9?_?=?_?=?_?=?_?=?_?=?_?=?_?=?O?9?O?9?G?1?A?A?@@A?'); yourself); yourself]
+!
+
+scrollDownOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollDownOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollDownOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary scrollDownOffIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHCAP HB@ H
+B@ GA@TF@@DB@0 RD1PUE!!\XB@PEA @A@ LEB@4NC1@QB@\DAPX@@PHC@0THB ,LB@\CA@TF@@DB@0LCAP IB@\C@0PEA @A@ LC@0LGB@\C@0LDAPX@@PHC
+@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180]; yourself]
+!
+
+scrollLeftOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollLeftOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollLeftOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary scrollLeftOffIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@DA@PDA@PDA@PDA@PDA@PDB@ HB@ HB@ HB@ HB@ HB@0LC@0LC@0LC@0LC@0LC@0LC@0LC@0LCAP E@0LC@0LC@0LC@0LEBAHH
+B@LC@0LC@0LC@0LEB@4SB@ C@0LC@0LC@0LCB@(NE@ H@0LC@0LC@0LC@0$KC1THB@LC@0LC@0LC@0LHCA@VB@ C@0LC@0LC@0LCA0 QE0 H@0LC@0LC@0LC
+@0LGBA HB@LC@0LC@0LC@0LC@0LGB@\C@0LC@0PDA@PDA@PDA@PDA@PDA@PEAPTEAPTEAPTEAPTEAPTEA XFA XFA XFA XFA XFA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'??????????????????????????????????????????<b'); yourself); yourself]
+!
+
 scrollLockIcon
     <resource: #programImage>
 
     ^ self scrollLock22x22Icon
 !
 
+scrollRightOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollRightOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollRightOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary scrollRightOffIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@DA@PDA@PDA@PDA@PDA@PDB@ HB@ HB@ HB@ HB@ HB@0LC@0LC@0LC@0LC@0LC@0LC@0LCAP E@0LC@0LC@0LC@0LC@0 RB@TC
+@0LC@0LC@0LC@0LHD04HAPLC@0LC@0LC@0LCBAPNB  G@0LC@0LC@0LC@0 UC0,IB@LC@0LC@0LC@0LHE!!@LB@\C@0LC@0LC@0LCBA\QB@\C@0LC@0LC@0LC
+@0 XB@\C@0LC@0LC@0LC@0LGB@\C@0LC@0LC@0PDA@PDA@PDA@PDA@PDA@PEAPTEAPTEAPTEAPTEAPTEA XFA XFA XFA XFA XFA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'??????????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollUpOffIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollUpOffIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollUpOffIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'GenericToolbarIconLibrary scrollUpOffIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LCA0 G
+@0LCA@TF@@DB@0LCAP IB@\C@0PEA @A@ LCAP JB00HA0LDAPX@@PHCAP MC <PDP GA@TF@@DB@0 RD1PUE!!\XB@PEA @A@ LEB@ HB@ HB@\DAPX@@PHC
+@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180]; yourself]
+!
+
 shiftToggleOff26x15
     "This resource specification was automatically generated
      by the ImageEditor of ST/X."
--- a/MacOSX2ToolbarIconLibrary.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/MacOSX2ToolbarIconLibrary.st	Wed Oct 07 07:58:36 2015 +0100
@@ -54,6 +54,29 @@
 APTEAPTEAPTFDP@@@@@O@@XC@0LC@0LF@@<@@@@@@@<QCP4MCP4MDP<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[210 209 210 223 222 223 188 187 188 237 237 237 190 189 190 239 239 239 228 228 228 218 217 218 220 219 220 185 184 185 198 197 198 200 199 200 225 225 225 189 188 189 178 177 178 206 205 206 219 218 219 195 194 195] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@@@@A?8O?0??C?<O?0??C?<O?0??C?<O?0_>@@@@@@b'); yourself); yourself]
 !
 
+checkToggleOffEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self checkToggleOffEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#checkToggleOffEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSX2ToolbarIconLibrary checkToggleOffEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@PDA@PD@L@@@@@@@@BB 0DA@PDA@PLB H@@@@@CQDHEQTUEQTUBADM@@@@@@<HEQTUEQTU
+EQTHC0@@@@@RBATUEQTUEQTUBAH@@@@@A  UEQTUEQTUEP F@@@@@@XHEQTUEQTUEQTHA @@@@@FBATUEQTUEQTUB@X@@@@@A  UEQTUEQTUEP F@@@@@@,G
+EQTUEQTUEQTGB0@@@@@ND0\HB@ HB@ GD08@@@@@@@8KA XFA XFB08@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[185 185 185 223 222 223 187 187 187 163 163 163 237 237 237 214 213 214 178 178 178 241 241 241 254 254 254 218 217 218 193 193 193 184 184 184 221 221 221 173 173 173 199 199 199 175 175 175 151 151 151 236 236 236 177 177 177 216 216 216 225 217 212 255 255 255] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@@@@A?8O?0??C?<O?0??C?<O?0??C?<O?0_>@@@@@@b'); yourself); yourself]
+!
+
 checkToggleOffIcon
     "This resource specification was automatically generated
      by the ImageEditor of ST/X."
@@ -100,6 +123,29 @@
 A!!L@AA$FA XE@ @@@@@AA@TFHQTFA XEA@D@@@@@@@DB@0LC@0LC@ D@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[143 143 143 170 170 170 155 155 155 149 149 149 150 150 150 152 152 152 153 153 153 169 169 169 153 153 153 151 151 151 222 222 222 255 255 255 166 166 166 159 159 159 253 253 253 238 238 238 146 146 146 152 152 152 161 161 161 150 150 150 240 240 240 147 147 147 168 168 168 217 217 217 214 214 214 147 147 147 239 239 239 254 254 254 252 252 252 242 242 242 143 143 143 142 142 142 246 246 246 151 151 151] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@@@@A?8O?0??C?<O?0??C?<O?0??C?<O?0_>@@@@@@b'); yourself); yourself]
 !
 
+checkToggleOnEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self checkToggleOnEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#checkToggleOnEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSX2ToolbarIconLibrary checkToggleOnEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''G2@PDA@PHA<''@@@@@@@''FA,C@0LC@1X[FB\@@@@@G1,C@0LC@08JA!!,_@@@@@B@C@0LC@28)
+K20VH@@@@@@P@0LC@2(]G ,Y@1@@@@@@D@LOE2D\CQHHJ0LP@@@@@A@*D2<EI"<0EPLCD@@@@@@P@2HZH1PDKR(C@1@@@@@@H@L.JBT#@",C@0L @@@@@A<[
+@0$@CADC@0L[G0@@@@@''FA,C@QTC@0L[FB\@@@@@@B\_HA@PDA@ G2\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') colorMapFromArray:#[58 131 213 64 148 243 79 145 217 68 153 248 218 232 245 157 199 244 70 152 244 204 211 224 70 139 215 63 147 242 120 180 244 209 226 243 78 143 214 211 230 248 68 151 244 66 150 244 57 144 248 57 140 235 252 253 254 119 179 243 248 251 254 58 141 236 66 151 246 98 167 243 60 146 248 57 138 231 210 227 243 66 151 248 64 147 240 91 162 240 251 253 254 80 153 243 56 144 248 66 149 244 59 139 230 254 254 255 223 222 223 232 240 249 142 190 241 133 178 234 54 129 214 155 199 244 67 151 246 66 150 245 112 175 241 51 131 223 65 149 244 255 255 255 141 183 226] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@@@@A?8O?0??C?<O?0??C?<O?0??C?<O?0_>@@@@@@b'); yourself); yourself]
+!
+
 checkToggleOnIcon
     "This resource specification was automatically generated
      by the ImageEditor of ST/X."
--- a/MacOSXToolbarIconLibrary.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/MacOSXToolbarIconLibrary.st	Wed Oct 07 07:58:36 2015 +0100
@@ -150,6 +150,282 @@
 NS%VYC$JJB!!TUB (UEP(UB!!TJEP(A5=_EAP4L =_W3AJDE=_E@ILZ$1*M2)MCB1MJ!!YLSD0<Y&Y&F6Y]I1D5A%4[F6X[GUTXJQ!!UFD$ WD$XUQ!!UUVL&I TE
 I"XEI"XEI TEQBXWH#<A@S<AO3<?H D?@PD"XE-+G6-+G6-[V1=+V1=+V0M''Y6]''L6]KY6]''R6\\L5 :RE]HRD!!HCT MCU\.U5\HF!!$YFQ$YFQ$YFQ$YNB-E
 S$]YC%%YK2=YVU%YK09SP2L@') colorMapFromArray:#[101 172 248 53 140 250 61 135 247 46 108 250 105 175 248 57 144 249 207 230 254 64 139 247 43 118 250 109 178 248 67 143 247 233 232 233 89 165 249 43 131 251 43 93 250 93 168 249 146 198 251 225 240 254 255 255 255 80 159 246 78 159 248 141 189 240 82 161 249 49 116 249 62 149 249 42 128 251 117 150 239 67 152 248 45 133 250 55 125 248 95 170 248 49 136 250 198 225 253 101 172 247 52 140 250 181 192 232 105 175 247 81 160 247 57 143 249 207 230 253 84 163 248 61 147 248 212 232 253 42 124 251 88 165 249 70 147 246 43 130 251 42 93 250 92 168 249 99 167 243 221 237 253 46 134 251 146 197 251 225 239 254 193 212 235 81 161 249 42 127 251 90 167 248 65 117 245 95 169 248 57 130 247 186 186 186 100 172 247 52 140 249 194 213 236 104 175 247 81 160 246 111 141 235 56 143 249 42 116 251 109 177 247 185 197 236 43 130 250 68 152 249 220 237 253 46 134 250 72 156 248 224 239 254 77 118 242 137 184 240 101 173 248 108 171 243 105 176 248 61 107 244 85 163 249 62 147 249 90 166 248 44 131 251 46 130 250 43 94 250 95 169 247 48 136 249 197 224 253 74 157 248 80 160 246 78 160 248 48 111 249 108 177 247 91 159 243 52 121 249 91 167 249 93 167 247 67 152 249 46 133 250 97 170 247 96 170 248 72 155 248 49 137 250] mask:((Depth1Image width:16 height:18) bits:(ByteArray fromPackedString:'??;????????????????????????????????????????????>'); yourself); yourself]
+!
+
+scrollDownDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollDownDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollDownDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollDownDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@A8QC@4MCP4MCP4MCP4PE @QLTIBP$EAN#$8MSL.IA@@BTIBPS8=OCD.KR,%F2XN@@%APS<<N3$-J"$&G1($C @IPS<=N3$6J"\%H!!8YI@8@BTD?OS8?OSP1
+LB8,FRPN@@%AO34EA1TXG"H]JQ$$C @IPS<=O0DDB@<LKB0YI@8@BTD?OS0=@@LFK"X&FRPN@@%AO349N3PBLB$^G!!$$C @IPS<=N3$6K3D,H!!8YI@8@BTD?
+OS,9M"(''IRH^FRPN@@%AO309NCP)I"P!!GA $C @IO309MSP2I"P!!G!!,WI@8@D3D=N3$9NB4+J"$(I!!<T@B@SB (JB (KB ,KB0,RH0@a') colorMapFromArray:#[52 52 50 56 56 60 68 70 70 80 78 80 100 100 100 112 112 110 120 118 120 144 144 140 148 146 150 152 152 150 152 154 150 156 154 150 156 158 160 160 158 160 160 160 160 164 162 160 164 166 170 168 168 170 172 170 170 172 172 170 172 174 170 176 178 180 188 188 190 188 190 190 192 192 190 192 192 200 192 194 200 196 196 200 196 198 200 200 198 200 200 200 200 200 202 200 204 204 200 204 204 210 204 206 210 208 206 210 208 208 210 208 210 210 212 212 210 212 214 220 216 214 220 216 216 220 216 218 220 220 218 220 220 220 220 220 222 220 224 224 230 224 226 230 228 226 230 228 228 230 228 230 230 232 230 230 232 232 230 232 234 230 232 234 240 236 234 230 236 234 240 236 236 240 236 238 240 240 238 240 240 240 240 240 242 240 244 242 240 244 244 240 244 244 250 244 246 250 248 246 250] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'_?=??7??_?=??7??_?=??7??_?=??7??_?=??7??_?<b'); yourself); yourself]
+!
+
+scrollDownEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollDownEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollDownEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollDownEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@A<NBP$IBP$IBP$IBP$KGP@PN41KR4-KRT%IRT%HM@,@BT1EP#<?O28.K"4(HDDI@@%KP#48NC &I"X&H!!,:BP@IR3<8M#X6H2L#H18ZM0$@BT,?NC1@PB</
+K2<,F#\I@@%KO3 EA1DSEQ$TJ1(7BP@IR3<8P@DDB@0JKBTZM0$@BT,?NC1@@@LFK2\ZF#\I@@%KO3 6OB<BK2(^F!!(7BP@IR3<8M#X6J"<*H18ZM0$@BT,?
+NCX6M"L#H2L^FC\I@@%KNST2L#H^G!!8^GA\7BP@IR#L1LC@0F!!(ZFA\VM0$@D#9GQ$QDQC\7M3\7M2$M@BPRBP$IBP$IBP$IBP$OHP@a') colorMapFromArray:#[12 38 52 13 41 57 17 56 76 20 66 91 28 91 124 32 106 145 34 113 155 45 148 203 46 151 207 60 127 177 66 161 212 71 123 162 76 166 214 89 143 184 92 144 183 93 147 188 97 149 188 103 179 220 105 154 191 128 192 226 141 198 229 143 199 229 148 192 216 152 198 222 155 201 226 155 205 232 156 202 227 159 206 232 160 208 233 162 186 204 164 213 239 166 191 209 166 215 241 167 194 214 168 218 245 169 219 246 174 195 211 177 213 233 181 224 247 183 222 242 185 226 248 187 202 213 187 227 248 192 221 237 197 228 245 197 231 249 198 231 249 200 232 249 207 229 242 209 231 244 211 235 247 212 236 248 213 226 235 213 237 250 214 238 251 219 221 223 220 240 251 222 241 252 223 225 227 223 234 242 223 242 252 226 242 252 227 235 241 227 244 252 229 244 252 231 234 236 233 246 253 234 234 234 238 239 240 238 248 253 240 240 242 244 245 246 250 252 254 251 253 254 253 253 255 253 254 255 254 255 255] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'_?=??7??_?=??7??_?=??7??_?=??7??_?=??7??_?<b'); yourself); yourself]
+!
+
+scrollDownIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollDownIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollDownIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollDownIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHCAP HB@ H
+B@ GA@TF@@DB@0 RD1PUE!!\XB@PEA @A@ LEB@4NC1@QB@\DAPX@@PHC@0THB ,LB@\CA@TF@@DB@0LCAP IB@\C@0PEA @A@ LC@0LGB@\C@0LDAPX@@PHC
+@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180]; yourself]
+!
+
+scrollLeftDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollLeftDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollLeftDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollLeftDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@=NC@1ZV%)ZC@0LC@0LS =NUQ 2L#H2L#H2L#H2L!!QNSVXKL"T%IRT>O#8>VD($L4AYL&TWE1\2Y#HWE2Q$U2]@B5 $U5]XL (2
+U5]$X3@''PCH1U1X$R08&R1XVBQT0I4@%OQX=VA-HJE <O@ ;RR]@H2EGH%@^FT<"NS% T"@''PC0.D3(/S@@*K0TEG2,SI4AVQ5MEXP\ZQ@]EQQE^Q"]@B@X8
+M3\-K$L.M3]^GV@''PFIE@14]GQ=TG14]M HRI4@:WQ1BP$IBP$IBMR%\KB]ATQ=_J2,+J2,+J2,+J1@@ACPMCP4MCP4MCP4MCP5[@P@a') colorMapFromArray:#[162 162 162 185 185 185 191 191 195 197 197 201 207 207 207 210 210 213 215 215 218 224 224 226 230 230 231 232 233 234 112 112 112 243 243 244 148 148 148 158 158 158 55 55 55 195 195 195 198 198 200 203 204 207 210 211 212 215 215 217 226 226 226 229 230 231 234 234 235 240 240 240 244 244 244 146 146 146 157 157 157 51 51 51 190 190 193 196 196 199 78 78 78 208 208 211 217 218 218 224 224 225 229 229 230 233 233 234 238 238 239 242 242 243 144 144 144 155 155 155 177 177 177 187 187 191 199 199 199 204 204 206 209 209 210 213 213 216 221 221 223 226 226 228 234 234 234 238 239 240 243 243 243 153 153 153 174 174 174 188 188 192 194 194 198 202 202 205 207 207 210 214 214 216 220 220 222 228 228 229 232 232 233 237 237 238 241 241 242 248 248 248 151 151 151 171 171 171 188 189 192 198 198 198 205 205 205 206 206 209 214 214 215 218 218 220 100 100 100 233 233 233 238 238 238 242 242 242 118 118 118 150 150 150 165 165 165 191 191 191 69 69 69 202 202 203 207 208 210 211 211 214 217 217 219 228 228 228 231 231 232 236 236 237 240 240 241 244 244 245 149 149 149 164 164 164 186 186 190 192 192 196 200 200 203 205 205 208 212 212 214 216 216 219 226 227 228 231 232 233 234 234 236 241 241 241 245 245 245] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@C???????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollLeftEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollLeftEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollLeftEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollLeftEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@CH0F!!(ZF!!(ZF!!(ZF!!(ZLB &H3$/K2</K2</K2</IQ@@F#$.BDEAPTEAPTEAFQ $HQ(/BD,,KB07SC\,K@X5NBDZK4D,R$("KQX-
+R$(+RQD!!F"=AKD("KPE@KT)JJ4$QHQ(/PR0"KP(LD25JR"-IDRDZBQ\DC#,TM$TNJR$CQ#<!!F $WACPNRD4]C"$)@4X?HQ(IE0P)M@8[O@8)JPMFO2DZBR@D
+JR$4C#DNJR$C@#<!!F $>L0LC@04*CPLCG ,?HQ)CQ1UFQ$YFQ$YF@ ,''O2D\AP\OO3<?O3<?O3<?O1=BOTP!!HRD!!HRD!!HRD!!HREBN @a') colorMapFromArray:#[92 144 183 13 41 57 155 201 226 164 213 239 181 224 247 207 222 233 213 237 250 231 234 236 232 246 253 251 253 254 12 38 52 152 198 222 28 91 124 183 222 242 200 232 249 223 225 227 227 235 241 238 239 240 248 248 248 103 179 220 20 66 91 159 206 232 32 106 145 198 231 249 212 236 248 222 241 252 60 127 177 66 161 212 100 152 191 143 199 229 160 208 233 187 202 213 197 231 249 52 110 153 223 242 252 229 237 245 244 245 246 253 253 255 98 150 189 148 192 216 166 191 209 169 219 246 197 228 245 211 235 247 220 240 251 229 244 252 238 248 253 253 254 255 97 149 188 141 198 229 165 190 208 168 218 245 187 227 248 209 231 244 46 151 207 227 243 252 240 240 242 254 255 255 117 142 160 17 56 76 155 205 232 176 200 218 185 226 248 219 221 223 45 148 203 227 244 252 71 123 162 250 252 254 94 146 185 128 192 226 156 202 227 166 215 241 34 113 155 207 229 242 214 238 251 225 242 252 233 245 252 76 166 214] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@C???????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollLeftIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollLeftIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollLeftIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollLeftIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@DA@PDA@PDA@PDA@PDA@PDB@ HB@ HB@ HB@ HB@ HB@0LC@0LC@0LC@0LC@0LC@0LC@0LC@0LCAP E@0LC@0LC@0LC@0LEBAHH
+B@LC@0LC@0LC@0LEB@4SB@ C@0LC@0LC@0LCB@(NE@ H@0LC@0LC@0LC@0$KC1THB@LC@0LC@0LC@0LHCA@VB@ C@0LC@0LC@0LCA0 QE0 H@0LC@0LC@0LC
+@0LGBA HB@LC@0LC@0LC@0LC@0LGB@\C@0LC@0PDA@PDA@PDA@PDA@PDA@PEAPTEAPTEAPTEAPTEAPTEA XFA XFA XFA XFA XFA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'??????????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollRightDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollRightDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollRightDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollRightDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@DP5I2\''I2\''I2\''I2\''MTP[U3MMST5MST5MST5MY1T(F!!%MSU)ZV%)ZV%(XB40?CP@YSQ %IT@LPBT%IS<>B @@L0,?B )@DD@2
+B (>E$,@@CM&B#8>FDMYFC<>BRMX@@AMI#9%YRUCV4D%B#AJBP@@I@!!#UUT=JSQPM#4:NRD@@A\<N24-YFE]HFQVAQD.@@@1X1MFQ"INNBHTQ P+A @@BR8_
+G!!9IS4%"G!!8+@4 @@C4,QQ4]NP\9GQ4]W3]T@@@/J%8OC0<OC0<OTPH\D @ADQ= T5MST5MST5MST5IBQ09\WE1\WE1\WE1\WE1BQ@@a') colorMapFromArray:#[158 158 158 177 177 177 190 190 194 199 199 202 206 207 210 211 211 214 217 217 218 219 219 221 226 226 228 234 234 235 238 238 239 242 242 243 246 246 247 157 157 157 175 175 175 191 192 195 73 73 73 207 207 209 212 212 213 214 214 217 218 219 221 228 228 228 233 233 234 236 236 238 243 243 243 247 247 247 156 156 156 171 171 171 189 189 192 198 199 202 204 204 208 210 210 213 216 216 216 220 220 221 225 226 228 231 231 233 238 238 238 241 241 242 239 239 240 151 151 151 169 169 169 63 63 63 195 195 199 203 203 206 209 209 212 213 213 216 218 218 220 225 225 226 232 232 233 235 236 236 242 242 242 246 246 246 146 146 146 167 167 167 190 190 190 194 194 198 205 205 205 210 211 213 214 215 217 217 217 220 224 224 226 231 231 232 236 236 237 240 240 241 244 244 245 142 142 142 165 165 165 60 60 60 198 198 198 200 200 204 208 209 212 212 212 212 215 215 217 222 222 225 229 229 231 236 236 236 240 240 240 245 245 245 128 128 128 162 162 162 187 187 187 191 191 195 201 201 202 206 206 209 213 214 215 217 217 219 222 222 224 231 231 231 235 235 236 112 112 112 243 243 244 121 121 121 160 160 160 184 184 184 192 193 196 197 197 201 208 208 210 86 86 86 215 215 218 221 221 223 228 228 230 233 233 235 240 241 241 244 244 244] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@C???????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollRightEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollRightEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollRightEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollRightEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@A4HQ4]GQ4]GQ4]GQ4]GBA4HA"P[F1,[F1,[F1,[DS4RQ2PPMRH"H"H"H"H"Q$TGAD\[MR,NC!!$,FP8NC#LWF QGF2HNHRDOBP<E
+HRDMJS8DQ1,"C"D!!C2TBC0T!!CR$>AD\[H 8!!HP<%G2(OAP4)O QGO3,:G!!82D1 .GCIBI"@DQ3<;N!!8^L# 7ESH(P"X AD\?N3(^G#IDECH(G$H&H@QGO0L:
+G!!82M#H(G!!9BK2@DQ3<1I4IBP01CP$IBB$D AD\-NPD&I"X&I"X&K4D@H@Q@E#P<HB@ HB@ HB@ H@,#LD$DA@PDA@PDA@PDA@P#GP@a') colorMapFromArray:#[148 192 216 159 206 232 32 106 145 197 231 249 52 110 153 223 242 252 229 237 245 244 245 246 96 148 187 18 60 82 160 208 233 187 202 213 197 228 245 211 235 247 220 240 251 229 244 252 238 248 253 253 253 255 91 143 182 15 50 69 155 205 232 175 215 237 200 217 230 209 231 244 46 151 207 227 243 252 240 240 242 253 254 255 126 191 225 163 187 206 169 219 246 36 118 162 219 221 223 214 238 251 227 244 252 71 123 162 254 255 255 14 46 63 156 202 227 168 218 245 187 227 248 207 229 242 44 146 200 225 242 252 233 245 252 250 252 254 121 189 224 155 201 226 176 198 215 185 226 248 200 232 249 213 237 250 231 234 236 232 246 253 76 166 214 114 185 223 23 75 103 166 215 241 181 224 247 198 231 249 223 225 227 227 235 241 238 239 240 251 253 254 103 153 190 152 198 222 164 213 239 183 222 242 39 127 175 212 236 248 222 241 252 60 127 177 248 248 248 98 148 185] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'@@C???????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollRightIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollRightIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollRightIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollRightIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@@@@@@@@@@@@@@@@@@@@@DA@PDA@PDA@PDA@PDA@PDB@ HB@ HB@ HB@ HB@ HB@0LC@0LC@0LC@0LC@0LC@0LC@0LCAP E@0LC@0LC@0LC@0LC@0 RB@TC
+@0LC@0LC@0LC@0LHD04HAPLC@0LC@0LC@0LCBAPNB  G@0LC@0LC@0LC@0 UC0,IB@LC@0LC@0LC@0LHE!!@LB@\C@0LC@0LC@0LCBA\QB@\C@0LC@0LC@0LC
+@0 XB@\C@0LC@0LC@0LC@0LGB@\C@0LC@0LC@0PDA@PDA@PDA@PDA@PDA@PEAPTEAPTEAPTEAPTEAPTEA XFA XFA XFA XFA XFA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'??????????????????????????????????????????<b'); yourself); yourself]
+!
+
+scrollUpDisabledIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollUpDisabledIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollUpDisabledIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollUpDisabledIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@B@SB (JB (KB ,KB0,RH0@SLTIBP$EAN#$8MSL.IAP@BTIBPS8=OCD.KR,%F2XN@@%APS<<N3$-J"$&G1($C @IPS<=N3$6J"\%H!!8YI@8@BTD?OS,9M"<1
+KBH^FRPN@@%AO349N3PBLB$^G!!$$C @IPS<=OC4@@0X.I"XYI@8@BTD?OS<AA@ OCB0,FRPN@@%AO34EA1TXG"H]JQ$$C @IPS<=O#<=MCD0K"0YI@8@BTD?
+OS,9M"(''IRH^FRPN@@%AO309NCP)I"P!!GA $C @IO309MSP2I"P!!G!!,WI@8@DSD=N3$9NB4+J"$(I!!<P@A8QC@4MCP4MCP4MCP4PE @a') colorMapFromArray:#[52 52 50 56 56 60 68 70 70 80 78 80 100 100 100 112 112 110 120 118 120 144 144 140 148 146 150 152 152 150 152 154 150 156 154 150 156 158 160 160 158 160 160 160 160 164 162 160 164 166 170 168 168 170 172 170 170 172 172 170 172 174 170 176 178 180 188 188 190 188 190 190 192 192 190 192 192 200 192 194 200 196 196 200 196 198 200 200 198 200 200 200 200 200 202 200 204 204 200 204 204 210 204 206 210 208 206 210 208 208 210 208 210 210 212 212 210 212 214 220 216 214 220 216 216 220 216 218 220 220 218 220 220 220 220 220 222 220 224 224 230 224 226 230 228 226 230 228 228 230 228 230 230 232 230 230 232 232 230 232 234 230 232 234 240 236 234 230 236 234 240 236 236 240 236 238 240 240 238 240 240 240 240 240 242 240 244 242 240 244 244 240 244 244 250 244 246 250 248 246 250] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'_?=??7??_?=??7??_?=??7??_?=??7??_?=??7??_?<b'); yourself); yourself]
+!
+
+scrollUpEnteredIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollUpEnteredIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollUpEnteredIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollUpEnteredIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@BPRBP$IBP$IBP$IBP$OHP@RN41KR4-KRT%IRT%HM@4@BT1EP#<?O28.K"4(HDDI@@%KP#48NC &I"X&H!!,:BP@IR3<8M#X6H2L#H18ZM0$@BT,?NCX6M"(/
+J"L^F#\I@@%KO3 6OB<BK2(^F!!(7BP@IR3<8OD@@@0X/I1(ZM0$@BT,?ND@AA@ LB"0%F#\I@@%KO3 EA1DSEQ$TJ1(7BP@IR3<8ODA@K2</K20ZM0$@BT,?
+NCX6M"L#H2L^FC\I@@%KNST2L#H^G!!8^GA\7BP@IR#L1LC@0F!!(ZFA\VM0$@DC9GQ$QDQC\7M3\7M2$K@A<NBP$IBP$IBP$IBP$KGP@a') colorMapFromArray:#[12 38 52 13 41 57 17 56 76 20 66 91 28 91 124 32 106 145 34 113 155 45 148 203 46 151 207 60 127 177 66 161 212 71 123 162 76 166 214 89 143 184 92 144 183 93 147 188 97 149 188 103 179 220 105 154 191 128 192 226 141 198 229 143 199 229 148 192 216 152 198 222 155 201 226 155 205 232 156 202 227 159 206 232 160 208 233 162 186 204 164 213 239 166 191 209 166 215 241 167 194 214 168 218 245 169 219 246 174 195 211 177 213 233 181 224 247 183 222 242 185 226 248 187 202 213 187 227 248 192 221 237 197 228 245 197 231 249 198 231 249 200 232 249 207 229 242 209 231 244 211 235 247 212 236 248 213 226 235 213 237 250 214 238 251 219 221 223 220 240 251 222 241 252 223 225 227 223 234 242 223 242 252 226 242 252 227 235 241 227 244 252 229 244 252 231 234 236 233 246 253 234 234 234 238 239 240 238 248 253 240 240 242 244 245 246 250 252 254 251 253 254 253 253 255 253 254 255 254 255 255] mask:((ImageMask width:16 height:16) bits:(ByteArray fromPackedString:'_?=??7??_?=??7??_?=??7??_?=??7??_?=??7??_?<b'); yourself); yourself]
+!
+
+scrollUpIcon
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self scrollUpIcon inspect
+     ImageEditor openOnClass:self andSelector:#scrollUpIcon
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'MacOSXToolbarIconLibrary scrollUpIcon'
+        ifAbsentPut:[(Depth8Image width:16 height:16) bits:(ByteArray fromPackedString:'
+@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LCA0 G
+@0LCA@TF@@DB@0LCAP IB@\C@0PEA @A@ LCAP JB00HA0LDAPX@@PHCAP MC <PDP GA@TF@@DB@0 RD1PUE!!\XB@PEA @A@ LEB@ HB@ HB@\DAPX@@PHC
+@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @A@ LC@0LC@0LC@0LDAPX@@PHC@0LC@0LC@0LCA@TF@@DB@0LC@0LC@0LC@0PEA @a') colorMapFromArray:#[228 228 230 232 232 230 236 238 240 240 240 240 240 242 240 244 242 240 236 234 230 244 244 240 244 246 250 44 46 50 32 30 30 52 54 50 92 92 90 32 34 30 72 74 70 120 122 120 140 140 140 136 134 130 84 86 90 120 120 120 156 158 160 176 174 170 184 184 180 192 192 190 184 182 180]; yourself]
 ! !
 
 !MacOSXToolbarIconLibrary class methodsFor:'image specs - widgets'!
--- a/ScrollableView.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/ScrollableView.st	Wed Oct 07 07:58:36 2015 +0100
@@ -1244,6 +1244,20 @@
 
 !ScrollableView methodsFor:'change & update'!
 
+pointerInView
+    |pv|
+    
+    windowGroup isNil ifTrue:[^ false].
+    (pv := windowGroup pointerView) isNil ifTrue:[
+        self device isNil ifTrue:[^ false].
+        pv := self device viewFromPoint:(self device pointerPosition).
+        pv isNil ifTrue:[^ false].
+    ].
+    (pv isSameOrComponentOf:self) ifTrue:[^ true].
+    "/ Transcript showCR:pv.
+    ^ false.
+!
+
 update:something with:argument from:changedObject
     "whenever the scrolledView changes its contents, the scroller(s) must
      be updated as well"
@@ -1251,6 +1265,13 @@
     |doUpdate|
 
     doUpdate := false.
+
+    something == #pointerInView ifTrue:[
+        (styleSheet at:#'scrollBar.hideIfPointerOutside' default:false) ifTrue:[
+            doUpdate := true
+        ]    
+    ].
+
     changedObject == scrolledView ifTrue:[
         something == #sizeOfContents ifTrue:[
             vScrollBar notNil ifTrue:[
@@ -1273,29 +1294,39 @@
                         doUpdate := true
                     ].
                 ].
-            ].
+            ].    
         ].
-
-        doUpdate ifTrue:[
-            self updateScrollBarVisibility
-        ]
     ].
 
+    doUpdate ifTrue:[
+        self updateScrollBarVisibility
+    ]
 !
 
 updateHScrollBarVisibility
-    |hide anyChange|
+    |hide anyChange scrollToOriginOnHide|
 
     anyChange := false.
+    scrollToOriginOnHide := true.
+
     hideHScrollBar ~~ false ifTrue:[
         hScrollBar notNil ifTrue:[
             hide := hScrollBar thumbHeight >= 100.
+            hide ifFalse:[
+                (styleSheet at:#'scrollBar.hideIfPointerOutside' default:false) ifTrue:[
+                    (self pointerInView) ifFalse:[ 
+                        scrollToOriginOnHide := false.
+                        hide := true.
+                    ].
+                ].
+            ].    
             hide ~~ hScrollBar realized not "hScrollBarHidden" ifTrue:[
                 hScrollBarHidden := hide.
                 hide ifTrue:[
-                    "/ just in case: scroll to left
-
-                    scrolledView scrollHorizontalToPercent:0.
+                    scrollToOriginOnHide ifTrue:[
+                        "/ just in case: scroll to left
+                        scrolledView scrollHorizontalToPercent:0.
+                    ].        
                     hScrollBar beInvisible
                 ] ifFalse:[
                     hScrollBar beVisible
@@ -1314,15 +1345,17 @@
 updateScrollBarVisibility
     "check if any scrollbar needs to be hidden or shown"
 
-    |anyChange hide|
+    |anyChange|
 
     anyChange := self updateVScrollBarVisibility.
     anyChange := anyChange | self updateHScrollBarVisibility.
 
+    "/ stupid - showing one may need the other and vice versa...
+    "/ ...therefore, check again
     anyChange ifTrue:[
         self setupDimensionsConfigureScrolledView:false.
 
-        "/ force him to recompute its dimension ...
+        "/ force bars to recompute...
         scrolledView notNil ifTrue:[
             vScrollBar notNil ifTrue:[
                 vScrollBar setThumbFor:scrolledView.
@@ -1332,32 +1365,6 @@
             ].
         ].
 
-        "/ stupid - showing one may need the other ...
-        "/ and vice versa; do it again.
-
-
-"/        anyChange := false.
-"/        hideVScrollBar ~~ false ifTrue:[
-"/            vScrollBar notNil ifTrue:[
-"/                hide := vScrollBar thumbHeight >= 100.
-"/                hide ~~ vScrollBar realized not "vScrollBarHidden" ifTrue:[
-"/                    vScrollBarHidden := hide.
-"/                    hide ifTrue:[vScrollBar beInvisible] ifFalse:[vScrollBar beVisible].
-"/                    anyChange := true.
-"/                ]
-"/            ].
-"/        ].
-"/        hideHScrollBar ~~ false ifTrue:[
-"/            hScrollBar notNil ifTrue:[
-"/                hide := hScrollBar thumbHeight >= 100.
-"/                hide ~~ hScrollBar realized not "hScrollBarHidden" ifTrue:[
-"/                    hScrollBarHidden := hide.
-"/                    hide ifTrue:[hScrollBar beInvisible] ifFalse:[hScrollBar beVisible].
-"/                    anyChange := true.
-"/                ]
-"/            ].
-"/        ].
-
         anyChange := self updateVScrollBarVisibility.
         anyChange := anyChange | self updateHScrollBarVisibility.
         anyChange ifTrue:[
@@ -1370,18 +1377,27 @@
 !
 
 updateVScrollBarVisibility
-    |hide anyChange|
+    |hide anyChange scrollToOriginOnHide|
 
     anyChange := false.
+    scrollToOriginOnHide := true.
+
     hideVScrollBar ~~ false ifTrue:[
         vScrollBar notNil ifTrue:[
             hide := vScrollBar thumbHeight >= 100.
+            (styleSheet at:#'scrollBar.hideIfPointerOutside' default:false) ifTrue:[
+                (self pointerInView) ifFalse:[ 
+                    scrollToOriginOnHide := false.
+                    hide := true.
+                ].
+            ].    
             hide ~~ vScrollBar realized not" vScrollBarHidden" ifTrue:[
                 vScrollBarHidden := hide.
                 hide ifTrue:[
-                    "/ just in case: scroll to top
-
-                    scrolledView scrollVerticalToPercent:0.
+                    scrollToOriginOnHide ifTrue:[ 
+                        "/ just in case: scroll to top
+                        scrolledView scrollVerticalToPercent:0. 
+                    ].
                     vScrollBar beInvisible
                 ] ifFalse:[
                     vScrollBar beVisible
@@ -1424,6 +1440,21 @@
     "Created: 6.3.1997 / 18:06:23 / cg"
 !
 
+pointerEnter:state x:x y:y
+    super pointerEnter:state x:x y:y.
+    (styleSheet at:#'scrollBar.hideIfPointerOutside' default:false) ifTrue:[
+        self updateScrollBarVisibility
+    ]    
+!
+
+pointerLeave:state
+    super pointerLeave:state.
+
+    (styleSheet at:#'scrollBar.hideIfPointerOutside' default:false) ifTrue:[
+        self updateScrollBarVisibility
+    ]    
+!
+
 requestAutoAccept
     "request to accept: this is invoked when a dialog closes via accept or cancel.
      This forces my value to be accepted into my model.
@@ -1657,7 +1688,8 @@
     "initialize style specifics"
 
     <resource: #style (#'scrollBar.position' 
-                       #'scrollBar.hiding')>
+                       #'scrollBar.hiding'
+                       #'scrollBar.hideIfPointerOutside')>
 
     super initStyle.
 
@@ -1668,6 +1700,9 @@
 
     scrolledViewHMargin := scrolledViewVMargin := DefaultScrolledViewMargin.
     scrollBarVSpacing := scrollBarHSpacing := DefaultScrollBarSpacing.
+
+"/    self level:0.
+"/    self border:(SimpleBorder width:1 color:Color grey).
 !
 
 initialize
@@ -1705,6 +1740,7 @@
     "destroy any horizontal scrollBar"
 
     hScrollBar notNil ifTrue:[
+        hScrollBar removeDependent:self.
         hScrollBar destroy.
         hScrollBar := nil
     ].
@@ -1717,6 +1753,7 @@
     "destroy any vertical scrollBar"
 
     vScrollBar notNil ifTrue:[
+        vScrollBar removeDependent:self.
         vScrollBar destroy.
         vScrollBar := nil
     ].
@@ -1849,6 +1886,7 @@
             "/ ]
         ].
         vScrollBar thumbOrigin:0 thumbHeight:100.
+        vScrollBar addDependent:self.
     ] ifFalse:[
         vScrollBar notNil ifTrue:[
             self releaseVerticalScrollBar
@@ -1873,6 +1911,7 @@
             ]
         ].
         hScrollBar thumbOrigin:0 thumbHeight:100.
+        hScrollBar addDependent:self.
     ] ifFalse:[
         hScrollBar notNil ifTrue:[
             self releaseHorizontalScrollBar
--- a/Scroller.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/Scroller.st	Wed Oct 07 07:58:36 2015 +0100
@@ -1153,7 +1153,7 @@
 
     light := thumbLightColor.
     shadow := thumbShadowColor.
-    styleSheet name == #winVista ifTrue:[
+    (styleSheet at:#'scroller.vista3DStyle' default:false) "styleSheet name == #winVista" ifTrue:[
         light := (entered ifTrue:[thumbEnteredColor] ifFalse:[thumbColor]) lightened.
         shadow := (entered ifTrue:[thumbEnteredColor] ifFalse:[thumbColor]) darkened.
     ].
@@ -1171,7 +1171,7 @@
     (orientation == #vertical) ifTrue:[
         y := t + (h // 2) - 1.
         xL := l + lvl - 1 + DefaultTallyInset.
-        xR := l + w - lvl "+ 1" - DefaultTallyInset.
+        xR := l + w - lvl + 1 - DefaultTallyInset.
 
         dist := DefaultTallyDistance ? self graphicsDevice verticalPixelPerMillimeter rounded.
 
@@ -1196,8 +1196,7 @@
     ] ifFalse:[
         x := l + (w // 2) - 1.
         yT := t + lvl - 1 + DefaultTallyInset.
-        yB := t + h - lvl "+ 1" - DefaultTallyInset.
-
+        yB := t + h - lvl + 1 - DefaultTallyInset.
 
         dist := DefaultTallyDistance ? self graphicsDevice horizontalPixelPerMillimeter rounded.
 
@@ -1236,7 +1235,7 @@
 
     styleName := styleSheet name.
     xpStyle := styleName == #winXP.
-    vistaStyle := styleName == #winVista.
+    vistaStyle := styleSheet at:#'scroller.vista3DStyle' default:false. "/ styleName == #winVista.
 
     w := thumbFrame width.
     h := thumbFrame height.
@@ -1256,6 +1255,8 @@
             "/ 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.
+            
             (orientation == #vertical) ifTrue:[
                 n := w
             ] ifFalse:[
@@ -1293,7 +1294,7 @@
                         ].
                     ].
                 ].
-                self paint:(Color white mixed:m with:clr).
+                self paint:(clr2 mixed:m with:clr).
                 (orientation == #vertical) ifTrue:[
                     self displayLineFromX:(l+i-1) y:t+1 toX:(l+i-1) y:(t+h-2)
                 ] ifFalse:[
@@ -1394,6 +1395,7 @@
                 self displayLineFromX:l+w-3 y:t+h-2 toX:l+w-3 y:t+h-2.
             ].
         ] ifFalse:[
+            h := h - 1.
             self displayRectangleX:l y:t width:w height:h.
         ].
         vistaStyle ifTrue:[
@@ -1409,7 +1411,7 @@
         thumbImage displayOn:self x:l y:t
     ].
 
-    (tallyLevel == 0 or:[tallyMarks == 0]) ifTrue:[
+    (false "tallyLevel == 0" or:[tallyMarks == 0]) ifTrue:[
         shadowForm notNil ifTrue:[
             "next style - draw tally bitmap"
             handleX := l + ((w - 8) // 2).
--- a/TextView.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/TextView.st	Wed Oct 07 07:58:36 2015 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
@@ -413,7 +411,7 @@
 	   )
 	  (VerticalPanelViewSpec
 	     name: 'VerticalPanel1'
-	     layout: (LayoutFrame 0 0.0 52 0 0 1.0 -30 1)
+             layout: (LayoutFrame 0 0.0 52 0 0 1.0 -32 1)
 	     horizontalLayout: fit
 	     verticalLayout: top
 	     component:
@@ -522,7 +520,7 @@
 	   )
 	  (HorizontalPanelViewSpec
 	     name: 'horizontalPanelView'
-             layout: (LayoutFrame 0 0.0 -30 1.0 0 1.0 0 1.0)
+             layout: (LayoutFrame 0 0.0 -32 1.0 -16 1.0 0 1.0)
 	     level: 0
 	     horizontalLayout: fitSpace
 	     verticalLayout: center
@@ -540,7 +538,7 @@
 		   translateLabel: true
 		   tabable: true
 		   model: cancel
-                   extent: (Point 101 21)
+                   useDefaultExtent: true
 		 )
 		(ActionButtonSpec
 		   label: 'Prev'
@@ -549,7 +547,7 @@
 		   translateLabel: true
 		   tabable: true
 		   model: prevAction
-                   extent: (Point 101 21)
+                   useDefaultExtent: true
 		 )
 		(ActionButtonSpec
 		   label: 'Next'
@@ -560,7 +558,7 @@
 		   tabable: true
 		   model: nextAction
 		   isDefault: true
-                   extent: (Point 101 21)
+                   useDefaultExtent: true
 		 )
 		)
 
--- a/VariablePanel.st	Tue Oct 06 06:43:18 2015 +0200
+++ b/VariablePanel.st	Wed Oct 07 07:58:36 2015 +0100
@@ -20,7 +20,7 @@
 		showHandle showHandleWhenEntered handlePosition handleColor
 		handleStyle handleLevel noColor trackLine redrawLocked
 		orientation handleLabels knobHeight realRelativeSizes
-		snapAdornment'
+		snapAdornment needResize'
 	classVariableNames:'DefaultShowHandle DefaultHandleStyle DefaultHandlePosition
 		DefaultTrackingLine DefaultSeparatingLine DefaultHandleColor
 		DefaultHandleLevel DefaultVCursor DefaultHCursor
@@ -1180,7 +1180,7 @@
     ] ifFalse:[
         barHeight := nPixel max:0
     ].
-
+    barHeight := barHeight max:(styleSheet at:#'variablePanel.minBarHeight' default:barHeight).
     realized ifTrue:[
         self resizeSubviews
     ]
@@ -1298,6 +1298,10 @@
 
         oldHeight ~~ barHeight ifTrue:[
             "must recompute subViews"
+            realized ifFalse:[
+                needResize := true.
+                ^ self.
+            ].
             self setupSubviews.
             self resizeSubviews.
         ]
@@ -1405,10 +1409,10 @@
                     y := hy + (barHeightInt // 2).   "/ center of the bar
 
                     separatingLine ifTrue:[
-                        self paint:shadowColor.
+                        self paint:self shadowColor.
                         self displayLineFromX:mar y:y toX:(width - mar) y:y.
                         y := y + 1.
-                        self paint:lightColor.
+                        self paint:self lightColor.
                         self displayLineFromX:mar y:y toX:(width - mar) y:y.
                         self paint:viewBackground.
                     ].
@@ -1604,11 +1608,11 @@
     "draw a handles bitmap at hx/hy"
 
     shadowForm notNil ifTrue:[
-        self paint:shadowColor.
+        self paint:self shadowColor.
         self displayForm:shadowForm x:hx y:hy.
     ].
     lightForm notNil ifTrue:[
-        self paint:lightColor.
+        self paint:self lightColor.
         self displayForm:lightForm x:hx y:hy.
     ].
     self paint:viewBackground
@@ -1992,6 +1996,8 @@
             barWidth := (1.5 * mm) rounded. "motif style width"
         ].
     ].
+    barWidth := styleSheet at:#'variablePanel.barWidth' default:barWidth.
+    
     self computeBarHeight.
 
     handleStyle == #mswindows ifTrue:[
@@ -2005,7 +2011,8 @@
     orientation isNil ifTrue:[orientation := #vertical].
     super initialize.
     self bitGravity:nil.
-
+    needResize := true.
+    
     "Modified: / 29.7.1998 / 16:07:23 / cg"
 ! !
 
@@ -2530,7 +2537,7 @@
 
 realize
     super realize.
-    self anyNonRelativeSubviews ifTrue:[
+    (needResize or:[self anyNonRelativeSubviews]) ifTrue:[
         self setupSubviews.
         self sizeChanged:nil.   "/ force recomputation of subviews
     ].
@@ -2676,10 +2683,10 @@
 !VariablePanel class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg/VariablePanel.st,v 1.106 2015-05-11 15:04:17 cg Exp $'
+    ^ '$Header$'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libwidg/VariablePanel.st,v 1.106 2015-05-11 15:04:17 cg Exp $'
+    ^ '$Header$'
 ! !