FileBrowserV2.st
changeset 6131 71d479fd930d
parent 6119 8c1742758850
child 6145 b705cf7c5470
--- a/FileBrowserV2.st	Thu Nov 11 10:51:15 2004 +0100
+++ b/FileBrowserV2.st	Fri Nov 12 12:02:14 2004 +0100
@@ -1523,6 +1523,51 @@
     ^ false
 ! !
 
+!FileBrowserV2 methodsFor:'menu accessing'!
+
+menuFileHistory
+    "initialize the file history menu
+    "
+    <resource: #programMenu >
+
+    |menu hist text removeItem removeCol|
+
+    menu := Menu new.
+    menu findGuiResourcesIn:self.
+    menu receiver:self.
+
+    hist := self fileHistory.
+    hist isEmpty ifTrue:[^ nil].
+
+    removeCol := OrderedCollection new.
+    hist do:[:aFileItem|
+        "aFileItem fileName exists" true ifTrue:[
+            menu addItem:(MenuItem label: aFileItem fileName asString value:[
+                self setCurrentFileName:(aFileItem fileName).
+                self openApplByFileItem:aFileItem
+            ]).
+        ] ifFalse:[
+            removeCol add:aFileItem.
+        ]
+    ].
+    "/ remove all not existing history entries
+    removeCol do:[ : el |
+        hist remove:el.
+    ].
+    removeItem := MenuItem new.
+    removeItem translateLabel:true.
+    text := resources string:'Clear History'.
+    "/ text := LabelAndIcon icon:(self class clearHistoryIcon) string:text.
+    removeItem label:text.
+    removeItem value:[
+        self fileHistory removeAll.
+        self enableFileHistory value:false.
+    ].
+    menu addSeparator.
+    menu addItem:removeItem.
+    ^ menu
+! !
+
 !FileBrowserV2 methodsFor:'startup & release'!
 
 closeRequest
@@ -1611,7 +1656,7 @@
 !FileBrowserV2 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.131 2004-10-30 09:08:31 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.132 2004-11-12 11:02:14 penk Exp $'
 ! !
 
 FileBrowserV2 initialize!