#UI_ENHANCEMENT by cg
authorClaus Gittinger <cg@exept.de>
Tue, 17 Jul 2018 13:40:33 +0200
changeset 18270 07b44c3ea287
parent 18269 e38a2d59333f
child 18271 f30308d770d0
#UI_ENHANCEMENT by cg class: AbstractDirectoryBrowser added: #findAndSelectFilesMatching: #findFilesMatching:
AbstractDirectoryBrowser.st
--- a/AbstractDirectoryBrowser.st	Tue Jul 17 13:40:24 2018 +0200
+++ b/AbstractDirectoryBrowser.st	Tue Jul 17 13:40:33 2018 +0200
@@ -63,6 +63,22 @@
     ^ updateToExternFileHolderLock
 ! !
 
+!AbstractDirectoryBrowser methodsFor:'actions'!
+
+findFilesMatching:aGLOBPattern
+    |matching|
+
+    matching := OrderedCollection new.
+    self directory recursiveDirectoryContentsAsFilenamesDo:[:each |
+        (aGLOBPattern match:each baseName) ifTrue:[
+            matching add:each
+        ].    
+    ].
+    ^ matching
+
+    "Created: / 17-07-2018 / 12:53:32 / Claus Gittinger"
+! !
+
 !AbstractDirectoryBrowser methodsFor:'drag & drop'!
 
 canDrop:aDropContext
@@ -189,6 +205,12 @@
     "erase the selected files"
 
     self eraseFiles:(self selectedFiles copy).
+!
+
+findAndSelectFilesMatching:aGLOBPattern
+    self selectFiles:(self findFilesMatching:aGLOBPattern).
+
+    "Created: / 17-07-2018 / 12:48:23 / Claus Gittinger"
 ! !
 
 !AbstractDirectoryBrowser methodsFor:'selection'!