FileBrowser.st
changeset 1758 a429c5b81d47
parent 1757 8040a544d813
child 1784 329e3a904236
--- a/FileBrowser.st	Mon Jul 27 20:22:50 1998 +0200
+++ b/FileBrowser.st	Mon Jul 27 20:31:55 1998 +0200
@@ -1069,21 +1069,30 @@
     "depending on the showLongList setting, show or hde the tabSpec view"
 
     showLongList ifTrue:[
-	false "self is3D" ifTrue:[
-	    scrollView topInset:(tabRulerView superView height).
-	    tabRulerView superView leftInset:(fileListView originRelativeTo:scrollView) x.
-	] ifFalse:[
-	    scrollView topInset:(tabRulerView height).
-	    tabRulerView leftInset:(fileListView originRelativeTo:scrollView) x.
-	].
-	tabRulerView hiddenTabs:#(1).
-	tabRulerView fixedTabs:#(1).
+        tabRulerView isNil ifTrue:[
+            self createTabRulerIn:scrollView superView.
+        ].
+        tabRulerView beVisible.
+        
+        false "self is3D" ifTrue:[
+            scrollView topInset:(tabRulerView superView height).
+            tabRulerView superView leftInset:(fileListView originRelativeTo:scrollView) x.
+        ] ifFalse:[
+            scrollView topInset:(tabRulerView height).
+            tabRulerView leftInset:(fileListView originRelativeTo:scrollView) x.
+        ].
+        tabRulerView hiddenTabs:#(1).
+        tabRulerView fixedTabs:#(1).
     ] ifFalse:[
-	scrollView topInset:0
+        tabRulerView notNil ifTrue:[
+            tabRulerView beInvisible.
+        ].
+        scrollView topInset:0
     ].
     tabSpec := nil.
 
-    "Created: 19.4.1997 / 09:50:02 / cg"
+    "Created: / 19.4.1997 / 09:50:02 / cg"
+    "Modified: / 27.7.1998 / 20:31:03 / cg"
 ! !
 
 !FileBrowser methodsFor:'help '!
@@ -1114,6 +1123,27 @@
 
 !FileBrowser methodsFor:'initialization'!
 
+createTabRulerIn:topFrame
+    |v|
+
+    false "self is3D" ifTrue:[
+        v := View in:topFrame.
+        v level:-1.
+        tabRulerView := TabSpecRuler in:v.
+        tabRulerView level:1.
+        v origin:(0.0@0.0) corner:(1.0@10).
+        tabRulerView origin:(0.0@0.0) corner:(1.0@1.0).
+    ] ifFalse:[
+        tabRulerView := TabSpecRuler in:topFrame.
+        tabRulerView origin:(0.0@0.0) corner:(1.0@10).
+    ].
+    tabRulerView borderWidth:0.
+    tabRulerView synchronousOperation:true.
+
+    "Created: / 27.7.1998 / 20:23:10 / cg"
+    "Modified: / 27.7.1998 / 20:30:10 / cg"
+!
+
 currentDirectory:aDirectoryPath
     "set the directory to be browsed"
 
@@ -1181,32 +1211,32 @@
     lockUpdate := false.
 
     CommandHistory isNil ifTrue:[
-        CommandHistory := OrderedCollection new.
-        CommandHistorySize := 50
+	CommandHistory := OrderedCollection new.
+	CommandHistorySize := 50
     ].
     DirectoryHistory isNil ifTrue:[
-        DirectoryHistory := OrderedCollection new.
-        DirectoryHistoryWhere := OrderedCollection new.
-        HistorySize := 15.
+	DirectoryHistory := OrderedCollection new.
+	DirectoryHistoryWhere := OrderedCollection new.
+	HistorySize := 15.
     ].
     commandIndex := 0.
 
     icons := IdentityDictionary new.
 
     Icons isNil ifTrue:[
-        self class initializeIcons
+	self class initializeIcons
     ].
 
     myName := (resources string:self class name).
     self label:myName.
 
     labelFrame := View 
-                        origin:(0.0 @ 0.0)
-                        corner:(1.0 @ (font height * 2))
-                        in:self.
+			origin:(0.0 @ 0.0)
+			corner:(1.0 @ (font height * 2))
+			in:self.
 
     styleSheet name = #st80 ifTrue:[
-        labelFrame level:1
+	labelFrame level:1
     ].
 
     spacing := ViewSpacing.
@@ -1225,8 +1255,8 @@
     filterModel := '*' asValue.
     filterField := EditField in:labelFrame.
     filterField 
-        origin:[((width // 4 * 3) + halfSpacing) @ halfSpacing]
-        corner:(1.0 @ (filterField heightIncludingBorder + halfSpacing + halfSpacing) ).
+	origin:[((width // 4 * 3) + halfSpacing) @ halfSpacing]
+	corner:(1.0 @ (filterField heightIncludingBorder + halfSpacing + halfSpacing) ).
     filterField rightInset:halfSpacing.
     filterField model:filterModel.
 
@@ -1248,12 +1278,12 @@
 
     labelView := FilenameEditField in:labelFrame.
     labelView 
-        origin:(halfSpacing @ halfSpacing)
-        extent:[((width // 4 * 3) - spacing - borderWidth)
-                @
-                (filterField heightIncludingBorder)
-                "(font height + font descent)"
-               ].
+	origin:(halfSpacing @ halfSpacing)
+	extent:[((width // 4 * 3) - spacing - borderWidth)
+		@
+		(filterField heightIncludingBorder)
+		"(font height + font descent)"
+	       ].
     labelView menu:#labelMenu; aspect:#path; changeMessage:#pathChanged:.
     labelView model:self.
     labelView backgroundColor:(labelFrame viewBackground).
@@ -1290,25 +1320,15 @@
     frame := VariableVerticalPanel origin:0.0@0.0 corner:1.0@1.0 in:self.
     frame topInset:labelFrame height.
     commandView notNil ifTrue:[
-        frame bottomInset:(commandView height + spacing + spacing)
+	frame bottomInset:(commandView height + spacing + spacing)
     ].
 
     topFrame := View in:frame.
     topFrame origin:(0.0 @ 0.0) corner:(1.0 @ 0.3).
 
-    false "self is3D" ifTrue:[
-        v := View in:topFrame.
-        v level:-1.
-        tabRulerView := TabSpecRuler in:v.
-        tabRulerView level:1.
-        v origin:(0.0@0.0) corner:(1.0@10).
-        tabRulerView origin:(0.0@0.0) corner:(1.0@1.0).
-    ] ifFalse:[
-        tabRulerView := TabSpecRuler in:topFrame.
-        tabRulerView origin:(0.0@0.0) corner:(1.0@10).
-    ].
-    tabRulerView borderWidth:0.
-    tabRulerView synchronousOperation:true.
+false ifTrue:[
+    self createTabRulerIn:topFrame.
+].
 
     scrollView := ScrollableView in:topFrame.
     scrollView origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
@@ -1322,20 +1342,20 @@
     fileListView menuHolder:self; menuPerformer:self; menuMessage:#fileListMenu.
     fileListView allowDrag:true.
     fileListView dragObjectConverter:[:obj | 
-                                        |dir nm path idx|
-
-                                        nm := obj theObject asString.
-                                        idx := fileListView list indexOf:nm.
-                                        idx == 0 ifTrue:[
-                                            "/ cannot happen ...
-                                            nil
-                                        ] ifFalse:[
-                                            nm := fileList at:idx.
-                                            dir := currentDirectory pathName asFilename.
-                                            path := dir constructString:nm.
-                                            DropObject newFile:path.
-                                        ]
-                                     ].
+					|dir nm path idx|
+
+					nm := obj theObject asString.
+					idx := fileListView list indexOf:nm.
+					idx == 0 ifTrue:[
+					    "/ cannot happen ...
+					    nil
+					] ifFalse:[
+					    nm := fileList at:idx.
+					    dir := currentDirectory pathName asFilename.
+					    path := dir constructString:nm.
+					    DropObject newFile:path.
+					]
+				     ].
 
     "/ sigh - must be delayed - origin is not yet fixe
 "/    tabRulerView leftInset:(fileListView originRelativeTo:scrollView) x.
@@ -1346,7 +1366,7 @@
     v origin:(0.0 @ 0.3) corner:(1.0 @ 1.0).
     subView := v scrolledView.
     (subView respondsTo:#directoryForFileDialog:) ifTrue:[
-        subView directoryForFileDialog:currentDirectory
+	subView directoryForFileDialog:currentDirectory
     ].
 
 "/    buttonPanel := HorizontalPanelView in:self.
@@ -1370,9 +1390,9 @@
 
     ObjectMemory addDependent:self.
 
-    "Modified: 6.9.1995 / 20:26:06 / claus"
-    "Modified: 16.9.1997 / 14:52:46 / stefan"
-    "Modified: 8.10.1997 / 17:07:27 / cg"
+    "Modified: / 6.9.1995 / 20:26:06 / claus"
+    "Modified: / 16.9.1997 / 14:52:46 / stefan"
+    "Modified: / 27.7.1998 / 20:23:13 / cg"
 !
 
 initializeCommandViewIn:frame
@@ -3530,10 +3550,12 @@
     tabSpec align:    #(#left #left).
     tabSpec addDependent:self.
 
-    tabRulerView tabulatorSpecification:tabSpec.
-
-    "Created: 17.4.1997 / 02:51:41 / cg"
-    "Modified: 17.4.1997 / 02:55:17 / cg"
+    tabRulerView notNil ifTrue:[
+	tabRulerView tabulatorSpecification:tabSpec.
+    ].
+
+    "Created: / 17.4.1997 / 02:51:41 / cg"
+    "Modified: / 27.7.1998 / 20:23:34 / cg"
 !
 
 iconForFile:aFilenameString
@@ -4045,5 +4067,5 @@
 !FileBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/FileBrowser.st,v 1.236 1998-07-27 18:22:50 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileBrowser.st,v 1.237 1998-07-27 18:31:55 cg Exp $'
 ! !