355 ! ! |
357 ! ! |
356 |
358 |
357 !DirectoryView methodsFor:'callbacks'! |
359 !DirectoryView methodsFor:'callbacks'! |
358 |
360 |
359 fileDoubleClicked |
361 fileDoubleClicked |
360 |
362 |numArgs selectedFile| |
361 (fileDoubleClickAction notNil and: [self selectionOfFile value notNil]) |
363 |
362 ifTrue: |
364 fileDoubleClickAction notNil ifTrue:[ |
363 [ |
365 (selectedFile := self selectionOfFile value) notNil ifTrue:[ |
364 fileDoubleClickAction numArgs = 0 |
366 numArgs := fileDoubleClickAction argumentCount. |
365 ifTrue: |
367 numArgs == 0 ifTrue:[ |
366 [ |
368 fileDoubleClickAction value |
367 fileDoubleClickAction value |
369 ] ifFalse:[ |
368 ]. |
370 numArgs = 1 ifTrue:[ |
369 fileDoubleClickAction numArgs = 1 |
371 fileDoubleClickAction value: (directory asFilename construct:selectedFile baseName) name |
370 ifTrue: |
372 ] |
371 [ |
373 ] |
372 fileDoubleClickAction value: (directory asFilename construct: self selectionOfFile value baseName) name |
|
373 ] |
374 ] |
374 ] |
375 ] |
375 ! |
376 ! |
376 |
377 |
377 fileSelected |
378 fileSelected |
378 |
379 |numArgs selectedFile| |
379 (fileSelectAction notNil and: [self selectionOfFile value notNil]) |
380 |
380 ifTrue: |
381 fileSelectAction notNil ifTrue:[ |
381 [ |
382 (selectedFile := self selectionOfFile value) notNil ifTrue:[ |
382 fileSelectAction numArgs = 0 |
383 numArgs := fileSelectAction argumentCount. |
383 ifTrue: |
384 numArgs == 0 ifTrue:[ |
384 [ |
385 fileSelectAction value |
385 fileSelectAction value |
386 ] ifFalse:[ |
386 ]. |
387 numArgs == 1 ifTrue:[ |
387 fileSelectAction numArgs = 1 |
388 fileSelectAction value: (directory asFilename construct:selectedFile baseName) name |
388 ifTrue: |
389 ] |
389 [ |
390 ] |
390 fileSelectAction value: (directory asFilename construct: self selectionOfFile value baseName) name |
|
391 ] |
391 ] |
392 ] |
392 ] |
393 ! ! |
393 ! ! |
394 |
394 |
395 !DirectoryView methodsFor:'initialization'! |
395 !DirectoryView methodsFor:'initialization'! |
535 |
535 |
536 newRow := FileRow new fileName: fileName asFilename. |
536 newRow := FileRow new fileName: fileName asFilename. |
537 "/ how stupid is that? |
537 "/ how stupid is that? |
538 nearestFileRow := listOfFiles indexOf: (listOfFiles detect: [:fileRow| fileRow baseName > fileName baseName] ifNone: nil). |
538 nearestFileRow := listOfFiles indexOf: (listOfFiles detect: [:fileRow| fileRow baseName > fileName baseName] ifNone: nil). |
539 "/ nearestFileRow := listOfFiles findFirst:[:fileRow | fileRow baseName > fileName baseName]. |
539 "/ nearestFileRow := listOfFiles findFirst:[:fileRow | fileRow baseName > fileName baseName]. |
540 nearestFileRow = 0 |
540 nearestFileRow == 0 |
541 ifTrue: [listOfFiles add: newRow] |
541 ifTrue: [listOfFiles add: newRow] |
542 ifFalse: [listOfFiles add: newRow beforeIndex: nearestFileRow]. |
542 ifFalse: [listOfFiles add: newRow beforeIndex: nearestFileRow]. |
543 "/ r is uninitialized - therefore selection is lost |
543 "/ r is uninitialized - therefore selection is lost |
544 monitoring ifTrue: [self selectionOfFile value: r]. |
544 monitoring ifTrue: [self selectionOfFile value: r]. |
545 ] |
545 ] |
588 listOfFileFilters remove: selectedFileFilter ifAbsent: nil |
588 listOfFileFilters remove: selectedFileFilter ifAbsent: nil |
589 ]. |
589 ]. |
590 selectedFileFilter := aString. |
590 selectedFileFilter := aString. |
591 |
591 |
592 ((listOfFileFilters includes: selectedFileFilter) not |
592 ((listOfFileFilters includes: selectedFileFilter) not |
593 and:[selectedFileFilter notEmpty]) |
593 and:[selectedFileFilter notEmpty] |
594 ifTrue: [ |
594 ) ifTrue: [ |
595 listOfFileFilters addFirst: selectedFileFilter |
595 listOfFileFilters addFirst: selectedFileFilter |
596 ]. |
596 ]. |
597 ((listOfFileFilters includes: selectedFileFilter) |
597 ((listOfFileFilters includes: selectedFileFilter) |
598 and:[fileFilterSelectAction notNil]) |
598 and:[fileFilterSelectAction notNil] |
599 ifTrue: [ |
599 ) ifTrue: [ |
600 (nArgs := fileFilterSelectAction numArgs) == 0 |
600 (nArgs := fileFilterSelectAction argumentCount) == 0 ifTrue: [ |
601 ifTrue: [ |
|
602 fileFilterSelectAction value |
601 fileFilterSelectAction value |
603 ] ifFalse:[ |
602 ] ifFalse:[ |
604 nArgs == 1 ifTrue:[ |
603 nArgs == 1 ifTrue:[ |
605 fileFilterSelectAction value: selectedFileFilter |
604 fileFilterSelectAction value: selectedFileFilter |
606 ] ifFalse:[ |
605 ] ifFalse:[ |