DirectoryTreeBrowser.st
branchjv
changeset 13182 bc686a7cc736
parent 12571 b2e5fdb702cb
parent 13154 2d99f6a0181b
child 13289 cc75e3cd0362
equal deleted inserted replaced
13181:b35f00f464c2 13182:bc686a7cc736
    64     DirectoryTreeBrowser open
    64     DirectoryTreeBrowser open
    65                                                                 [exEnd]
    65                                                                 [exEnd]
    66 "
    66 "
    67 ! !
    67 ! !
    68 
    68 
    69 
       
    70 !DirectoryTreeBrowser class methodsFor:'instance creation'!
    69 !DirectoryTreeBrowser class methodsFor:'instance creation'!
    71 
       
    72 
       
    73 
    70 
    74 openOn:aFileName
    71 openOn:aFileName
    75     | file |
    72     | file |
    76 
    73 
    77     file := aFileName asFilename.
    74     file := aFileName asFilename.
   100     DirectoryTreeBrowser openOn:Filename homeDirectory  
    97     DirectoryTreeBrowser openOn:Filename homeDirectory  
   101     DirectoryTreeBrowser openOn:(Filename homeDirectory construct:'.bashrc') withFiles:false  
    98     DirectoryTreeBrowser openOn:(Filename homeDirectory construct:'.bashrc') withFiles:false  
   102 "
    99 "
   103 ! !
   100 ! !
   104 
   101 
   105 
       
   106 !DirectoryTreeBrowser class methodsFor:'defaults'!
   102 !DirectoryTreeBrowser class methodsFor:'defaults'!
   107 
   103 
   108 timeForExpandOnDropInMilliseconds
   104 timeForExpandOnDropInMilliseconds
   109 
   105 
   110     ^ 1500
   106     ^ 1500
   111 ! !
   107 ! !
   112 
       
   113 
   108 
   114 !DirectoryTreeBrowser class methodsFor:'interface specs'!
   109 !DirectoryTreeBrowser class methodsFor:'interface specs'!
   115 
   110 
   116 windowSpec
   111 windowSpec
   117     "This resource specification was automatically generated
   112     "This resource specification was automatically generated
   177          
   172          
   178         )
   173         )
   179       )
   174       )
   180 ! !
   175 ! !
   181 
   176 
   182 
       
   183 !DirectoryTreeBrowser class methodsFor:'menu specs'!
   177 !DirectoryTreeBrowser class methodsFor:'menu specs'!
   184 
   178 
   185 menu
   179 menu
   186     "This resource specification was automatically generated
   180     "This resource specification was automatically generated
   187      by the MenuEditor of ST/X."
   181      by the MenuEditor of ST/X."
   398         nil
   392         nil
   399         nil
   393         nil
   400       )
   394       )
   401 ! !
   395 ! !
   402 
   396 
   403 
       
   404 !DirectoryTreeBrowser class methodsFor:'plugIn spec'!
   397 !DirectoryTreeBrowser class methodsFor:'plugIn spec'!
   405 
   398 
   406 aspectSelectors
   399 aspectSelectors
   407     "This resource specification was automatically generated
   400     "This resource specification was automatically generated
   408      by the UIPainter of ST/X."
   401      by the UIPainter of ST/X."
   413     "Return a description of exported aspects;
   406     "Return a description of exported aspects;
   414      these can be connected to aspects of an embedding application
   407      these can be connected to aspects of an embedding application
   415      (if this app is embedded in a subCanvas)."
   408      (if this app is embedded in a subCanvas)."
   416 
   409 
   417     ^ #(
   410     ^ #(
   418         selectedDirectoryModel
   411         treeSelectionHolder
   419         rootHolder
   412         rootHolder
   420         filterModel
   413         filterModel
   421         showFiles
   414         showFiles
   422         showHiddenFiles
   415         showHiddenFiles
   423       ).
   416       ).
   424 ! !
   417 ! !
   425 
   418 
   426 
       
   427 !DirectoryTreeBrowser methodsFor:'accessing'!
   419 !DirectoryTreeBrowser methodsFor:'accessing'!
   428 
   420 
   429 allowRenameOnOneClick
   421 allowRenameOnOneClick
   430 
   422 
   431     ^ false
   423     ^ false
   453     updateTreeSelection isNil ifTrue:[
   445     updateTreeSelection isNil ifTrue:[
   454         updateTreeSelection := self class newLock.
   446         updateTreeSelection := self class newLock.
   455     ].
   447     ].
   456     ^ updateTreeSelection
   448     ^ updateTreeSelection
   457 ! !
   449 ! !
   458 
       
   459 
   450 
   460 !DirectoryTreeBrowser methodsFor:'actions'!
   451 !DirectoryTreeBrowser methodsFor:'actions'!
   461 
   452 
   462 doDoubleClick:anIndex 
   453 doDoubleClick:anIndex 
   463     "handle a doubleClick on a directory
   454     "handle a doubleClick on a directory
   710     sel do:[:item|
   701     sel do:[:item|
   711         item invalidateRepairNow:true.
   702         item invalidateRepairNow:true.
   712     ]
   703     ]
   713 ! !
   704 ! !
   714 
   705 
   715 
       
   716 !DirectoryTreeBrowser methodsFor:'aspects'!
   706 !DirectoryTreeBrowser methodsFor:'aspects'!
   717 
   707 
   718 allowFileOperations
   708 allowFileOperations
   719     "allowFileOperations
   709     "allowFileOperations
   720     "
   710     "
   802     treeSelectionHolder isNil ifTrue:[
   792     treeSelectionHolder isNil ifTrue:[
   803         treeSelectionHolder := ValueHolder new.
   793         treeSelectionHolder := ValueHolder new.
   804         treeSelectionHolder addDependent:self.
   794         treeSelectionHolder addDependent:self.
   805     ].
   795     ].
   806     ^ treeSelectionHolder
   796     ^ treeSelectionHolder
   807 ! !
   797 !
   808 
   798 
       
   799 treeSelectionHolder:aValueHolder
       
   800     treeSelectionHolder removeDependent:self.
       
   801     treeSelectionHolder := aValueHolder.
       
   802     treeSelectionHolder addDependent:self.
       
   803 ! !
   809 
   804 
   810 !DirectoryTreeBrowser methodsFor:'change & update'!
   805 !DirectoryTreeBrowser methodsFor:'change & update'!
   811 
   806 
   812 changeMatchBlock
   807 changeMatchBlock
   813     self setMatchBlockInList:(self fileList).
   808     self setMatchBlockInList:(self fileList).
   922         ^ self
   917         ^ self
   923     ].
   918     ].
   924     super update:something with:aParameter from:aModel.
   919     super update:something with:aParameter from:aModel.
   925     ^ self
   920     ^ self
   926 ! !
   921 ! !
   927 
       
   928 
   922 
   929 !DirectoryTreeBrowser methodsFor:'drag & drop'!
   923 !DirectoryTreeBrowser methodsFor:'drag & drop'!
   930 
   924 
   931 dropDestinationPath
   925 dropDestinationPath
   932     |destination|
   926     |destination|
  1050     Processor 
  1044     Processor 
  1051         addTimedBlock:expandItemTimedBlock
  1045         addTimedBlock:expandItemTimedBlock
  1052         afterMilliseconds:(self class timeForExpandOnDropInMilliseconds).
  1046         afterMilliseconds:(self class timeForExpandOnDropInMilliseconds).
  1053 ! !
  1047 ! !
  1054 
  1048 
  1055 
       
  1056 !DirectoryTreeBrowser methodsFor:'event handling'!
  1049 !DirectoryTreeBrowser methodsFor:'event handling'!
  1057 
  1050 
  1058 processEvent:anEvent
  1051 processEvent:anEvent
  1059     "filter keyboard events.
  1052     "filter keyboard events.
  1060      Return true, if I have eaten the event"
  1053      Return true, if I have eaten the event"
  1111         ^ true
  1104         ^ true
  1112     ].
  1105     ].
  1113 
  1106 
  1114     ^ false
  1107     ^ false
  1115 ! !
  1108 ! !
  1116 
       
  1117 
  1109 
  1118 !DirectoryTreeBrowser methodsFor:'queries'!
  1110 !DirectoryTreeBrowser methodsFor:'queries'!
  1119 
  1111 
  1120 hasOpenEditor
  1112 hasOpenEditor
  1121 
  1113 
  1141 "/            ^ true
  1133 "/            ^ true
  1142 "/        ]
  1134 "/        ]
  1143 "/    ].
  1135 "/    ].
  1144 "/    ^ false
  1136 "/    ^ false
  1145 ! !
  1137 ! !
  1146 
       
  1147 
  1138 
  1148 !DirectoryTreeBrowser methodsFor:'selection'!
  1139 !DirectoryTreeBrowser methodsFor:'selection'!
  1149 
  1140 
  1150 firstSelectedDirectory
  1141 firstSelectedDirectory
  1151 
  1142 
  1265     selection := self treeSelectionHolder value.
  1256     selection := self treeSelectionHolder value.
  1266     selection isNil ifTrue:[ ^ #() ].
  1257     selection isNil ifTrue:[ ^ #() ].
  1267     self multipleSelect ifTrue:[^ selection ].
  1258     self multipleSelect ifTrue:[^ selection ].
  1268     ^ Array with:selection. "Wrap single value into Array"
  1259     ^ Array with:selection. "Wrap single value into Array"
  1269 ! !
  1260 ! !
  1270 
       
  1271 
  1261 
  1272 !DirectoryTreeBrowser methodsFor:'startup & release'!
  1262 !DirectoryTreeBrowser methodsFor:'startup & release'!
  1273 
  1263 
  1274 makeDependent
  1264 makeDependent
  1275 
  1265 
  1369 release
  1359 release
  1370     self fileList stopMonitoringTask.
  1360     self fileList stopMonitoringTask.
  1371     ^ super release.
  1361     ^ super release.
  1372 ! !
  1362 ! !
  1373 
  1363 
  1374 
       
  1375 !DirectoryTreeBrowser::DirTreeBrowserHFL methodsFor:'accessing'!
  1364 !DirectoryTreeBrowser::DirTreeBrowserHFL methodsFor:'accessing'!
  1376 
  1365 
  1377 draggedItem
  1366 draggedItem
  1378 
  1367 
  1379     ^ draggedItem
  1368     ^ draggedItem
  1381 
  1370 
  1382 draggedItem:anItemOrNil
  1371 draggedItem:anItemOrNil
  1383 
  1372 
  1384     draggedItem := anItemOrNil.
  1373     draggedItem := anItemOrNil.
  1385 ! !
  1374 ! !
  1386 
       
  1387 
  1375 
  1388 !DirectoryTreeBrowser::DirTreeBrowserHFL methodsFor:'protocol'!
  1376 !DirectoryTreeBrowser::DirTreeBrowserHFL methodsFor:'protocol'!
  1389 
  1377 
  1390 grayDirectoryIcon
  1378 grayDirectoryIcon
  1391 
  1379 
  1403         ^ self grayDirectoryIcon.
  1391         ^ self grayDirectoryIcon.
  1404     ].
  1392     ].
  1405     ^ super iconFor:anItem.
  1393     ^ super iconFor:anItem.
  1406 ! !
  1394 ! !
  1407 
  1395 
  1408 
       
  1409 !DirectoryTreeBrowser class methodsFor:'documentation'!
  1396 !DirectoryTreeBrowser class methodsFor:'documentation'!
  1410 
  1397 
  1411 version
  1398 version
  1412     ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.123 2013-03-24 11:40:12 cg Exp $'
  1399     ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.124 2013-07-10 10:14:03 cg Exp $'
  1413 !
  1400 !
  1414 
  1401 
  1415 version_CVS
  1402 version_CVS
  1416     ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.123 2013-03-24 11:40:12 cg Exp $'
  1403     ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.124 2013-07-10 10:14:03 cg Exp $'
  1417 !
  1404 !
  1418 
  1405 
  1419 version_HG
  1406 version_HG
  1420 
  1407 
  1421     ^ '$Changeset: <not expanded> $'
  1408     ^ '$Changeset: <not expanded> $'