136 ^directory ? (directory := Filename currentDirectory asAbsoluteFilename name) |
136 ^directory ? (directory := Filename currentDirectory asAbsoluteFilename name) |
137 ! |
137 ! |
138 |
138 |
139 directory: aDirectory |
139 directory: aDirectory |
140 |
140 |
141 directory := aDirectory asFilename asAbsoluteFilename name |
141 |dir| |
|
142 (directory ~= (dir := aDirectory asFilename asAbsoluteFilename name)) |
|
143 ifTrue: |
|
144 [ |
|
145 directory := dir. |
|
146 self listOfShellOutput |
|
147 at: self listOfShellOutput size |
|
148 put: self getDirectoryTextString |
|
149 ] |
142 ! |
150 ! |
143 |
151 |
144 numberOfMaxLines |
152 numberOfMaxLines |
145 |
153 |
146 ^numberOfMaxLines ? (numberOfMaxLines := 500) |
154 ^numberOfMaxLines ? (numberOfMaxLines := 500) |
286 |
294 |
287 listDoubleClicked: anLineIndex |
295 listDoubleClicked: anLineIndex |
288 |
296 |
289 |stream streamAtLine possibleFileName selectedFileName fileFound| |
297 |stream streamAtLine possibleFileName selectedFileName fileFound| |
290 possibleFileName := ''. |
298 possibleFileName := ''. |
291 stream := (self listOfShellOutput at: anLineIndex) readStream. |
299 stream := (self listOfShellOutput at: anLineIndex) string readStream. |
292 fileFound := false. |
300 fileFound := false. |
293 [stream atEnd | fileFound] |
301 [stream atEnd | fileFound] |
294 whileFalse: |
302 whileFalse: |
295 [ |
303 [ |
296 possibleFileName := possibleFileName, stream next. |
304 possibleFileName := possibleFileName, stream next. |
297 (("((selectedFileName := possibleFileName) asFilename exists) or:" |
305 (("((selectedFileName := possibleFileName) asFilename exists) or:" |
298 (selectedFileName := directory, Filename separator, possibleFileName) asFilename exists) |
306 (selectedFileName := directory, Filename separator, possibleFileName) asFilename exists) |
299 and: [selectedFileName asFilename isDirectory not]) |
307 and: [selectedFileName asFilename isDirectory not]) |
300 ifTrue: |
308 ifTrue: |
301 [ |
309 [ |
302 |possibleLineIndex listSize lineNumber| |
310 |possibleLineIndex listSize lineNumber| |
303 fileFound := true. |
311 fileFound := true. |
304 self openFile: selectedFileName. |
312 self openFile: selectedFileName. |
305 [stream atEnd | lineNumber notNil] |
313 [stream atEnd | lineNumber notNil] |
306 whileFalse: |
314 whileFalse: |
307 [ |
315 [ |
308 lineNumber := Integer readFrom: stream nextAlphaNumericWord onError: nil. |
316 lineNumber := Integer readFrom: stream nextAlphaNumericWord onError: nil. |
309 ]. |
317 ]. |
310 lineNumber := lineNumber ? 1. |
318 lineNumber := lineNumber ? 1. |
311 listSize := self fileContentsView list size. |
319 listSize := self fileContentsView list size. |
312 (lineNumber between: 1 and: listSize) |
320 (lineNumber between: 1 and: listSize) |