FileBrowserV2.st
branchjv
changeset 12682 6fb2176bf0fa
parent 12431 9f0c59c742d5
parent 12670 5a655023b0a5
child 12807 ba8c5416aa28
--- a/FileBrowserV2.st	Tue Apr 16 16:11:00 2013 +0200
+++ b/FileBrowserV2.st	Wed Apr 17 10:22:54 2013 +0200
@@ -81,6 +81,7 @@
 "
 ! !
 
+
 !FileBrowserV2 class methodsFor:'instance creation'!
 
 on:aDirectoryPath
@@ -197,6 +198,7 @@
     ^ clone
 ! !
 
+
 !FileBrowserV2 class methodsFor:'class initialization'!
 
 initialize
@@ -296,6 +298,7 @@
     ].
 ! !
 
+
 !FileBrowserV2 class methodsFor:'defaults'!
 
 entryFieldEndStringForMultipleSelection
@@ -303,6 +306,7 @@
     ^ ('[*]')
 ! !
 
+
 !FileBrowserV2 class methodsFor:'help specs'!
 
 flyByHelpSpec
@@ -368,6 +372,7 @@
 )
 ! !
 
+
 !FileBrowserV2 class methodsFor:'image specs'!
 
 applicationIcon
@@ -403,6 +408,7 @@
     ^ ToolbarIconLibrary hideToolbarIconH26
 ! !
 
+
 !FileBrowserV2 class methodsFor:'interface specs'!
 
 windowSpec
@@ -420,341 +426,342 @@
 
     <resource: #canvas>
 
-    ^
+    ^ 
      #(FullSpec
-	name: windowSpec
-	window:
+        name: windowSpec
+        window: 
        (WindowSpec
-	  label: FileBrowser
-	  name: FileBrowser
-	  min: (Point 10 10)
-	  bounds: (Rectangle 0 0 800 600)
-	  menu: mainMenu
-	  icon: defaultIcon
-	)
-	component:
+          label: FileBrowser
+          name: FileBrowser
+          min: (Point 10 10)
+          bounds: (Rectangle 0 0 800 768)
+          menu: mainMenu
+          icon: defaultIcon
+        )
+        component: 
        (SpecCollection
-	  collection: (
-	   (ViewSpec
-	      name: 'ToolbarBox'
-	      layout: (LayoutFrame 0 0 0 0 0 1 40 0)
-	      level: 0
-	      visibilityChannel: toolBarVisibleHolder
-	      component:
-	     (SpecCollection
-		collection: (
-		 (ActionButtonSpec
-		    label: 'hideToolBarIcon'
-		    name: 'HideToolBarButton'
-		    layout: (LayoutFrame 0 0 0 0 13 0 40 0)
-		    activeHelpKey: hideToolBar
-		    hasCharacterOrientedLabel: false
-		    translateLabel: true
-		    model: hideToolbar
-		    postBuildCallback: hideToolBarButtonCreated:
-		  )
-		 (MenuPanelSpec
-		    name: 'ToolBar'
-		    layout: (LayoutFrame 13 0 0 0 0 1 40 0)
-		    menu: toolBarMainMenu
-		    textDefault: true
-		  )
-		 )
-
-	      )
-	    )
-	   (ViewSpec
-	      name: 'FilenameEntryFieldBox'
-	      layout: (LayoutFrame 0 0 40 0 0 1 65 0)
-	      level: 0
-	      visibilityChannel: filenameEntryFieldVisibleHolder
-	      component:
-	     (SpecCollection
-		collection: (
-		 (ActionButtonSpec
-		    label: 'hideFilenameEntryFieldIcon'
-		    name: 'HideFilenameEntryFieldButton'
-		    layout: (LayoutFrame 0 0 0 0 13 0 0 1)
-		    activeHelpKey: hideFilenameEntryField
-		    hasCharacterOrientedLabel: false
-		    translateLabel: true
-		    model: hideFilenameEntryField
-		    postBuildCallback: hideFilenameEntryFieldButtonCreated:
-		  )
-		 (HorizontalPanelViewSpec
-		    name: 'HorizontalPanel1'
-		    layout: (LayoutFrame 13 0.0 0 0.0 0 1.0 0 1.0)
-		    level: 1
-		    horizontalLayout: leftFit
-		    verticalLayout: fit
-		    horizontalSpace: 3
-		    verticalSpace: 3
-		    component:
-		   (SpecCollection
-		      collection: (
-		       (ComboListSpec
-			  name: 'ComboList1'
-			  visibilityChannel: driveSelectorVisible
-			  model: selectedDeviceDrive
-			  comboList: listOfDeviceDrives
-			  useIndex: false
-			  hidePullDownMenuButton: false
-			  extent: (Point 53 23)
-			)
-		       (VariableHorizontalPanelSpec
-			  name: 'VariableHorizontalPanel1'
-			  level: 0
-			  showHandle: true
-			  component:
-			 (SpecCollection
-			    collection: (
-			     (NonScrollableArbitraryComponentSpec
-				name: 'NonScrollableArbitraryComponent1'
-				component: FilenameEditFieldV2
-				postBuildCallback: postBuildEditField:
-			      )
-			     (ViewSpec
-				name: 'FilterBox'
-				component:
-			       (SpecCollection
-				  collection: (
-				   (LabelSpec
-				      label: 'Filter:'
-				      name: 'Filter'
-				      layout: (LayoutFrame 0 0 0 0 40 0 0 1)
-				      translateLabel: true
-				      adjust: left
-				      postBuildCallback: postBuildPathViewBox:
-				    )
-				   (ComboBoxSpec
-				      name: 'FilterSelectionBox'
-				      layout: (LayoutFrame 40 0 0 0 0 1 0 1)
-				      model: filterModel
-				      immediateAccept: true
-				      acceptOnPointerLeave: false
-				      comboList: filterListModel
-				    )
-				   )
-
-				)
-				postBuildCallback: postBuildPathViewBox:
-			      )
-			     )
-
-			  )
-			  handles: (Any 0.774936 1.0)
-			  postBuildCallback: postBuildPathViewBox:
-			  useDefaultExtent: true
-			)
-		       )
-
-		    )
-		    postBuildCallback: postBuildPathViewBox:
-		  )
-		 )
-
-	      )
-	    )
-	   (#'FileBrowserV2UISpecifications::PanelSpec'
-	      name: 'BrowserBox'
-	      layout: (LayoutFrame 0 0.0 65 0.0 0 1.0 -26 1.0)
-	      level: 0
-	      showHandle: true
-	      snapMode: both
-	      whichView: last
-	      orientation: vertical
-	      visibility: viewNoteBookApplicationHolder
-	      component:
-	     (SpecCollection
-		collection: (
-		 (#'FileBrowserV2UISpecifications::PanelSpec'
-		    name: 'HorizontalPanel'
-		    level: 0
-		    snapMode: both
-		    whichView: first
-		    orientation: horizontal
-		    visibility: showDirectoryTree
-		    component:
-		   (SpecCollection
-		      collection: (
-		       (SubCanvasSpec
-			  name: 'DirectoryTreeBrowser'
-			  hasHorizontalScrollBar: false
-			  hasVerticalScrollBar: false
-			  majorKey: DirectoryTreeBrowser
-			  createNewApplication: true
-			  createNewBuilder: true
-			  postBuildCallback: postBuildDirectoryTree:
-			)
-		       (SubCanvasSpec
-			  name: 'DirectoryContentsBrowser'
-			  hasHorizontalScrollBar: false
-			  hasVerticalScrollBar: false
-			  majorKey: DirectoryContentsBrowser
-			  createNewApplication: true
-			  createNewBuilder: true
-			)
-		       )
-
-		    )
-		    handles: (Any 0.225 1.0)
-		  )
-		 (SubCanvasSpec
-		    name: 'FileApplicationNoteBook'
-		    tabable: false
-		    hasHorizontalScrollBar: false
-		    hasVerticalScrollBar: false
-		    majorKey: FileApplicationNoteBook
-		    createNewApplication: true
-		    createNewBuilder: true
-		  )
-		 )
-
-	      )
-	      handles: (Any 0.5 1.0)
-	    )
-	   (ViewSpec
-	      name: 'InfoBox'
-	      layout: (LayoutFrame 0 0 -26 1 0 1 0 1)
-	      level: 0
-	      visibilityChannel: infoBarVisibleHolder
-	      component:
-	     (SpecCollection
-		collection: (
-		 (LabelSpec
-		    label: 'NotifyLabel'
-		    name: 'NotifyLabel'
-		    layout: (LayoutFrame 0 0 1 0.0 -220 1 1 1.0)
-		    level: -1
-		    translateLabel: true
-		    labelChannel: notifyChannel
-		    adjust: left
-		  )
-		 (LabelSpec
-		    label: 'encoding'
-		    name: 'EncodingLabel'
-		    layout: (LayoutFrame -318 1 2 0.0 -235 1 0 1.0)
-		    activeHelpKey: encodingLabel
-		    level: 0
-		    labelChannel: fileEncodingHolder
-		    adjust: right
-		    menu: encodingMenu
-		  )
-		 (LabelSpec
-		    name: 'FileEncodingLockedLabel'
-		    layout: (LayoutFrame -235 1 2 0.0 -220 1 20 0.0)
-		    activeHelpKey: encodingLockedLabel
-		    level: 0
-		    labelChannel: fileEncodingLockImageHolder
-		    adjust: right
-		    menu: encodingMenu
-		  )
-		 (LabelSpec
-		    label: 'Shown Files'
-		    name: 'ShownFilesLabel'
-		    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
-		    activeHelpKey: numberOfFiles
-		    level: -1
-		    translateLabel: true
-		    labelChannel: shownFiles
-		    adjust: right
-		  )
-		 (ViewSpec
-		    name: 'ProgressIndicatorBox'
-		    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
-		    level: -1
-		    visibilityChannel: activityVisibilityChannel
-		    component:
-		   (SpecCollection
-		      collection: (
-		       (ProgressIndicatorSpec
-			  name: 'ProgressIndicator1'
-			  layout: (LayoutFrame 5 0.0 -7 0.5 -5 1.0 7 0.5)
-			  backgroundColor: (Color 0.0 66.6666666666667 66.6666666666667)
-			  isActivityIndicator: true
-			)
-		       )
-
-		    )
-		  )
-		 (LabelSpec
-		    name: 'BusyLabel'
-		    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
-		    activeHelpKey: modeLabel
-		    level: -1
-		    visibilityChannel: busyLabelVisibleHolder
-		    translateLabel: true
-		    labelChannel: busyLabelHolder
-		    adjust: right
-		  )
-		 (LabelSpec
-		    label: 'M'
-		    name: 'ModeLabel'
-		    layout: (LayoutFrame -65 1 1 0.0 -55 1 1 1.0)
-		    activeHelpKey: modeLabel
-		    level: -1
-		    translateLabel: true
-		    labelChannel: modeLabelHolder
-		    adjust: right
-		    postBuildCallback: postBuildEditModeInfoLabel:
-		  )
-		 (LabelSpec
-		    label: 'L'
-		    name: 'LineLabel'
-		    layout: (LayoutFrame -55 1 1 0.0 -20 1 1 1.0)
-		    activeHelpKey: lineLabel
-		    level: -1
-		    translateLabel: true
-		    labelChannel: cursorLineLabelHolder
-		    adjust: right
-		  )
-		 (LabelSpec
-		    label: 'C'
-		    name: 'ColLabel'
-		    layout: (LayoutFrame -20 1 1 0.0 0 1 1 1.0)
-		    activeHelpKey: columnLabel
-		    level: -1
-		    translateLabel: true
-		    labelChannel: cursorColLabelHolder
-		    adjust: right
-		  )
-		 )
-
-	      )
-	      keepSpaceForOSXResizeHandleH: true
-	    )
-	   (LabelSpec
-	      label: 'Preview'
-	      name: 'PreviewLabel'
-	      layout: (LayoutFrame 0 0.5 39 0 100 0.5 61 0)
-	      level: 0
-	      borderWidth: 1
-	      visibilityChannel: previewVisibleHolder
-	      backgroundColor: (Color 86.9993133440147 86.9993133440147 86.9993133440147)
-	      translateLabel: true
-	    )
-	   (ArbitraryComponentSpec
-	      name: 'Preview'
-	      layout: (LayoutFrame 0 0.5 63 0 -147 1 -319 1)
-	      level: 1
-	      visibilityChannel: previewVisibleHolder
-	      hasBorder: false
-	      component: ImageView
-	    )
-	   (ActionButtonSpec
-	      label: 'closePreviewButtonImage'
-	      name: 'ClosePreviewButton'
-	      layout: (LayoutFrame -169 1 39 0 -147 1 61 0)
-	      visibilityChannel: previewVisibleHolder
-	      hasCharacterOrientedLabel: false
-	      translateLabel: true
-	    )
-	   )
-
-	)
+          collection: (
+           (ViewSpec
+              name: 'ToolbarBox'
+              layout: (LayoutFrame 0 0 0 0 0 1 40 0)
+              level: 0
+              visibilityChannel: toolBarVisibleHolder
+              component: 
+             (SpecCollection
+                collection: (
+                 (ActionButtonSpec
+                    label: 'hideToolBarIcon'
+                    name: 'HideToolBarButton'
+                    layout: (LayoutFrame 0 0 0 0 13 0 40 0)
+                    activeHelpKey: hideToolBar
+                    hasCharacterOrientedLabel: false
+                    translateLabel: true
+                    model: hideToolbar
+                    postBuildCallback: hideToolBarButtonCreated:
+                  )
+                 (MenuPanelSpec
+                    name: 'ToolBar'
+                    layout: (LayoutFrame 13 0 0 0 0 1 40 0)
+                    menu: toolBarMainMenu
+                    textDefault: true
+                  )
+                 )
+               
+              )
+            )
+           (ViewSpec
+              name: 'FilenameEntryFieldBox'
+              layout: (LayoutFrame 0 0 40 0 0 1 65 0)
+              level: 0
+              visibilityChannel: filenameEntryFieldVisibleHolder
+              component: 
+             (SpecCollection
+                collection: (
+                 (ActionButtonSpec
+                    label: 'hideFilenameEntryFieldIcon'
+                    name: 'HideFilenameEntryFieldButton'
+                    layout: (LayoutFrame 0 0 0 0 13 0 0 1)
+                    activeHelpKey: hideFilenameEntryField
+                    hasCharacterOrientedLabel: false
+                    translateLabel: true
+                    model: hideFilenameEntryField
+                    postBuildCallback: hideFilenameEntryFieldButtonCreated:
+                  )
+                 (HorizontalPanelViewSpec
+                    name: 'HorizontalPanel1'
+                    layout: (LayoutFrame 13 0.0 0 0.0 0 1.0 0 1.0)
+                    level: 1
+                    horizontalLayout: leftFit
+                    verticalLayout: fit
+                    horizontalSpace: 3
+                    verticalSpace: 3
+                    component: 
+                   (SpecCollection
+                      collection: (
+                       (ComboListSpec
+                          name: 'ComboList1'
+                          visibilityChannel: driveSelectorVisible
+                          model: selectedDeviceDrive
+                          comboList: listOfDeviceDrives
+                          useIndex: false
+                          hidePullDownMenuButton: false
+                          extent: (Point 53 23)
+                        )
+                       (VariableHorizontalPanelSpec
+                          name: 'VariableHorizontalPanel1'
+                          level: 0
+                          showHandle: true
+                          component: 
+                         (SpecCollection
+                            collection: (
+                             (NonScrollableArbitraryComponentSpec
+                                name: 'NonScrollableArbitraryComponent1'
+                                component: FilenameEditFieldV2
+                                postBuildCallback: postBuildEditField:
+                              )
+                             (ViewSpec
+                                name: 'FilterBox'
+                                component: 
+                               (SpecCollection
+                                  collection: (
+                                   (LabelSpec
+                                      label: 'Filter:'
+                                      name: 'Filter'
+                                      layout: (LayoutFrame 0 0 0 0 40 0 0 1)
+                                      translateLabel: true
+                                      adjust: left
+                                      postBuildCallback: postBuildPathViewBox:
+                                    )
+                                   (ComboBoxSpec
+                                      name: 'FilterSelectionBox'
+                                      layout: (LayoutFrame 40 0 0 0 0 1 0 1)
+                                      model: filterModel
+                                      immediateAccept: true
+                                      acceptOnPointerLeave: false
+                                      comboList: filterListModel
+                                    )
+                                   )
+                                 
+                                )
+                                postBuildCallback: postBuildPathViewBox:
+                              )
+                             )
+                           
+                          )
+                          handles: (Any 0.774936 1.0)
+                          postBuildCallback: postBuildPathViewBox:
+                          useDefaultExtent: true
+                        )
+                       )
+                     
+                    )
+                    postBuildCallback: postBuildPathViewBox:
+                  )
+                 )
+               
+              )
+            )
+           (#'FileBrowserV2UISpecifications::PanelSpec'
+              name: 'BrowserBox'
+              layout: (LayoutFrame 0 0.0 65 0.0 0 1.0 -26 1.0)
+              level: 0
+              showHandle: true
+              snapMode: both
+              whichView: last
+              orientation: vertical
+              visibility: viewNoteBookApplicationHolder
+              component: 
+             (SpecCollection
+                collection: (
+                 (#'FileBrowserV2UISpecifications::PanelSpec'
+                    name: 'HorizontalPanel'
+                    level: 0
+                    snapMode: both
+                    whichView: first
+                    orientation: horizontal
+                    visibility: showDirectoryTree
+                    component: 
+                   (SpecCollection
+                      collection: (
+                       (SubCanvasSpec
+                          name: 'DirectoryTreeBrowser'
+                          hasHorizontalScrollBar: false
+                          hasVerticalScrollBar: false
+                          majorKey: DirectoryTreeBrowser
+                          createNewApplication: true
+                          createNewBuilder: true
+                          postBuildCallback: postBuildDirectoryTree:
+                        )
+                       (SubCanvasSpec
+                          name: 'DirectoryContentsBrowser'
+                          hasHorizontalScrollBar: false
+                          hasVerticalScrollBar: false
+                          majorKey: DirectoryContentsBrowser
+                          createNewApplication: true
+                          createNewBuilder: true
+                        )
+                       )
+                     
+                    )
+                    handles: (Any 0.225 1.0)
+                  )
+                 (SubCanvasSpec
+                    name: 'FileApplicationNoteBook'
+                    tabable: false
+                    hasHorizontalScrollBar: false
+                    hasVerticalScrollBar: false
+                    majorKey: FileApplicationNoteBook
+                    createNewApplication: true
+                    createNewBuilder: true
+                  )
+                 )
+               
+              )
+              handles: (Any 0.5 1.0)
+            )
+           (ViewSpec
+              name: 'InfoBox'
+              layout: (LayoutFrame 0 0 -26 1 0 1 0 1)
+              level: 0
+              visibilityChannel: infoBarVisibleHolder
+              component: 
+             (SpecCollection
+                collection: (
+                 (LabelSpec
+                    label: 'NotifyLabel'
+                    name: 'NotifyLabel'
+                    layout: (LayoutFrame 0 0 1 0.0 -220 1 1 1.0)
+                    level: -1
+                    translateLabel: true
+                    labelChannel: notifyChannel
+                    adjust: left
+                  )
+                 (LabelSpec
+                    label: 'encoding'
+                    name: 'EncodingLabel'
+                    layout: (LayoutFrame -318 1 2 0.0 -235 1 0 1.0)
+                    activeHelpKey: encodingLabel
+                    level: 0
+                    labelChannel: fileEncodingHolder
+                    adjust: right
+                    menu: encodingMenu
+                  )
+                 (LabelSpec
+                    name: 'FileEncodingLockedLabel'
+                    layout: (LayoutFrame -235 1 2 0.0 -220 1 20 0.0)
+                    activeHelpKey: encodingLockedLabel
+                    level: 0
+                    labelChannel: fileEncodingLockImageHolder
+                    adjust: right
+                    menu: encodingMenu
+                  )
+                 (LabelSpec
+                    label: 'Shown Files'
+                    name: 'ShownFilesLabel'
+                    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
+                    activeHelpKey: numberOfFiles
+                    level: -1
+                    translateLabel: true
+                    labelChannel: shownFiles
+                    adjust: right
+                  )
+                 (ViewSpec
+                    name: 'ProgressIndicatorBox'
+                    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
+                    level: -1
+                    visibilityChannel: activityVisibilityChannel
+                    component: 
+                   (SpecCollection
+                      collection: (
+                       (ProgressIndicatorSpec
+                          name: 'ProgressIndicator1'
+                          layout: (LayoutFrame 5 0.0 -7 0.5 -5 1.0 7 0.5)
+                          backgroundColor: (Color 0.0 66.6666666666667 66.6666666666667)
+                          isActivityIndicator: true
+                        )
+                       )
+                     
+                    )
+                  )
+                 (LabelSpec
+                    name: 'BusyLabel'
+                    layout: (LayoutFrame -220 1 1 0.0 -65 1 1 1.0)
+                    activeHelpKey: modeLabel
+                    level: -1
+                    visibilityChannel: busyLabelVisibleHolder
+                    translateLabel: true
+                    labelChannel: busyLabelHolder
+                    adjust: right
+                  )
+                 (LabelSpec
+                    label: 'M'
+                    name: 'ModeLabel'
+                    layout: (LayoutFrame -65 1 1 0.0 -55 1 1 1.0)
+                    activeHelpKey: modeLabel
+                    level: -1
+                    translateLabel: true
+                    labelChannel: modeLabelHolder
+                    adjust: right
+                    postBuildCallback: postBuildEditModeInfoLabel:
+                  )
+                 (LabelSpec
+                    label: 'L'
+                    name: 'LineLabel'
+                    layout: (LayoutFrame -55 1 1 0.0 -20 1 1 1.0)
+                    activeHelpKey: lineLabel
+                    level: -1
+                    translateLabel: true
+                    labelChannel: cursorLineLabelHolder
+                    adjust: right
+                  )
+                 (LabelSpec
+                    label: 'C'
+                    name: 'ColLabel'
+                    layout: (LayoutFrame -20 1 1 0.0 0 1 1 1.0)
+                    activeHelpKey: columnLabel
+                    level: -1
+                    translateLabel: true
+                    labelChannel: cursorColLabelHolder
+                    adjust: right
+                  )
+                 )
+               
+              )
+              keepSpaceForOSXResizeHandleH: true
+            )
+           (LabelSpec
+              label: 'Preview'
+              name: 'PreviewLabel'
+              layout: (LayoutFrame 0 0.5 39 0 100 0.5 61 0)
+              level: 0
+              borderWidth: 1
+              visibilityChannel: previewVisibleHolder
+              backgroundColor: (Color 86.9993133440147 86.9993133440147 86.9993133440147)
+              translateLabel: true
+            )
+           (ArbitraryComponentSpec
+              name: 'Preview'
+              layout: (LayoutFrame 0 0.5 63 0 -147 1 -319 1)
+              level: 1
+              visibilityChannel: previewVisibleHolder
+              hasBorder: false
+              component: ImageView
+            )
+           (ActionButtonSpec
+              label: 'closePreviewButtonImage'
+              name: 'ClosePreviewButton'
+              layout: (LayoutFrame -169 1 39 0 -147 1 61 0)
+              visibilityChannel: previewVisibleHolder
+              hasCharacterOrientedLabel: false
+              translateLabel: true
+            )
+           )
+         
+        )
       )
 ! !
 
+
 !FileBrowserV2 class methodsFor:'menu specs'!
 
 editModeInfoLabelMenu
@@ -1247,6 +1254,7 @@
       )
 ! !
 
+
 !FileBrowserV2 methodsFor:'actions'!
 
 changeFileBrowserTitleTo:aString
@@ -1286,6 +1294,7 @@
     ].
 ! !
 
+
 !FileBrowserV2 methodsFor:'aspects'!
 
 busyLabelHolder
@@ -1432,6 +1441,7 @@
     ^ selectedDeviceDrive
 ! !
 
+
 !FileBrowserV2 methodsFor:'aspects-visibility'!
 
 busyLabelVisibleHolder
@@ -1468,6 +1478,7 @@
     ^ self aspectFor:#toolBarVisibleHolder ifAbsent:[true asValue]
 ! !
 
+
 !FileBrowserV2 methodsFor:'change & update'!
 
 currentFileNameHolderChanged
@@ -1733,6 +1744,7 @@
     ].
 ! !
 
+
 !FileBrowserV2 methodsFor:'event handling'!
 
 crPressedInPathField
@@ -1808,6 +1820,7 @@
     "Modified: / 17-05-2007 / 09:12:53 / cg"
 ! !
 
+
 !FileBrowserV2 methodsFor:'menu accessing'!
 
 menuFileHistory
@@ -1856,12 +1869,24 @@
     "Modified: / 09-09-2012 / 13:08:42 / cg"
 ! !
 
+
 !FileBrowserV2 methodsFor:'queries'!
 
+defaultWindowExtent
+    "use nearly the full screen height, but at least 768px if available.
+     Keep the width as defined in the windowSpec"
+
+    |maxHeight|
+
+    maxHeight := self window device usableHeightAt:self window origin.
+    ^ Point x:nil y:(((maxHeight - 200) max:self window extent y) min:maxHeight).
+!
+
 getAllFilesAsStrings
     ^ self directoryContentsBrowser getAllFilesAsStrings
 ! !
 
+
 !FileBrowserV2 methodsFor:'startup & release'!
 
 closeRequest
@@ -2023,10 +2048,11 @@
     ^ super release
 ! !
 
+
 !FileBrowserV2 class methodsFor:'documentation'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.205 2013-01-26 21:04:45 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.206 2013-04-16 13:04:04 stefan Exp $'
 !
 
 version_HG