enable/disable of edit-menu items
authorClaus Gittinger <cg@exept.de>
Tue, 23 Jun 2009 10:55:37 +0200
changeset 8657 4a54180313b5
parent 8656 6c92a022f929
child 8658 bf595f0cb6f5
enable/disable of edit-menu items
VersionDiffBrowser.st
--- a/VersionDiffBrowser.st	Sat Jun 20 10:47:16 2009 +0200
+++ b/VersionDiffBrowser.st	Tue Jun 23 10:55:37 2009 +0200
@@ -1404,15 +1404,14 @@
 !
 
 addAcceptToTextViewMenus
-    "
-    add to the standard diff text view or single text views menu an accept entry.
-    The acceptAction will fetch the corresponding change and apply it
-    (not the shown text)
+    "add to the standard diff text view or single text views menu an accept entry.
+     The acceptAction will fetch the corresponding change and apply it
+     (not the shown text)
 
-    <return: self>
+     <return: self>
     "
 
-    |m diffTextView leftView rightView singleView|
+    |diffTextView leftView rightView singleView|
 
     diffTextView := self diffTextView.
     leftView := diffTextView leftTextView.
@@ -1424,29 +1423,37 @@
         with:rightView
         with:singleView)
     do:[:v |
-        m := v editMenu.
-        (m selectorAt:#accept) isNil ifTrue:[
-            m addLabels:(resources array:#('-' 'Accept'))
-              selectors:(Array with:nil with:#accept)
-              after:#copySelection.
-        ].
-        m 
-            actionAt:#accept 
-            put:[
-                v == singleView ifTrue:[
-                    self acceptInSingleView
-                ] ifFalse:[     
-                    v == leftView ifTrue:[
-                       self acceptInLeftView
-                    ] ifFalse:[
-                       self acceptInRightView
+        |mGen|
+
+        mGen := [
+            |m|
+
+            m := v editMenu.
+
+            (m selectorAt:#accept) isNil ifTrue:[
+                m addLabels:(resources array:#('-' 'Accept'))
+                  selectors:(Array with:nil with:#accept)
+                  after:#copySelection.
+            ].
+            m 
+                actionAt:#accept 
+                put:[
+                    v == singleView ifTrue:[
+                        self acceptInSingleView
+                    ] ifFalse:[     
+                        v == leftView ifTrue:[
+                           self acceptInLeftView
+                        ] ifFalse:[
+                           self acceptInRightView
+                        ].
                     ].
                 ].
-            ].
-        m selectorAt:#accept put:nil.
-        m enable:#copySelection.
-        m setEnable:#accept to:[self halt. self canAcceptInCodeView].
-        v menuHolder:m.
+            m selectorAt:#accept put:nil.
+            m enable:#copySelection.
+            m setEnable:#accept to:[self canAcceptInCodeView].
+            m
+        ].
+        v menuHolder:mGen.
         v menuMessage:#value.
     ]
 !
@@ -2055,5 +2062,5 @@
 !VersionDiffBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/VersionDiffBrowser.st,v 1.82 2009-05-14 10:07:05 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/VersionDiffBrowser.st,v 1.83 2009-06-23 08:55:37 cg Exp $'
 ! !