added standard-submenu generators (in item menu)
authorClaus Gittinger <cg@exept.de>
Mon, 24 Aug 1998 13:09:47 +0200
changeset 968 f52b5744063b
parent 967 c3f483120cd7
child 969 c6530cd784bd
added standard-submenu generators (in item menu)
MenuEditor.st
--- a/MenuEditor.st	Mon Aug 24 13:05:14 1998 +0200
+++ b/MenuEditor.st	Mon Aug 24 13:09:47 1998 +0200
@@ -1414,11 +1414,40 @@
                 #activeHelpKey: #addSubMenuLink
                 #labelImage: #(#ResourceRetriever #MenuEditor #linkSubmenuImage 'Submenu Link')
             )
+             #(#MenuItem
+                #label: '-'
+            )
+             #(#MenuItem
+                #label: 'Standard Submenu'
+                #translateLabel: true
+                #submenu: 
+                 #(#Menu
+                    
+                     #(
+                       #(#MenuItem
+                          #label: 'Standard File Menu'
+                          #translateLabel: true
+                          #value: #doCreateStandardFileMenu
+                      )
+                       #(#MenuItem
+                          #label: 'Standard Edit Menu'
+                          #translateLabel: true
+                          #value: #doCreateStandardEditMenu
+                      )
+                       #(#MenuItem
+                          #label: 'Standard Help Menu'
+                          #translateLabel: true
+                          #value: #doCreateStandardHelpMenu
+                      )
+                    ) nil
+                    nil
+                )
+            )
           ) nil
           nil
       )
 
-    "Modified: / 20.5.1998 / 00:40:39 / cg"
+    "Modified: / 23.8.1998 / 15:48:21 / cg"
 !
 
 menuDefaultLink
@@ -2452,6 +2481,14 @@
 
 !
 
+startGroup:aSymbolOrNil
+    "set the startGroup attribute"
+
+    startGroup := aSymbolOrNil
+
+    "Created: / 23.8.1998 / 15:56:03 / cg"
+!
+
 submenuChannel
     "return the value of the instance variable 'submenuChannel' (automatically generated)"
 
@@ -2470,6 +2507,14 @@
     translateLabel := aBoolean
 
     "Created: / 6.6.1998 / 17:23:33 / cg"
+!
+
+value:aSymbol
+    "set the value attribute"
+
+    value := aSymbol
+
+    "Created: / 23.8.1998 / 16:02:10 / cg"
 ! !
 
 !MenuEditor::Item methodsFor:'building'!
@@ -2971,6 +3016,54 @@
     self addElement:(self nodeLabel:nil)
 !
 
+doCreateStandardEditMenu
+
+    |node|
+    node := self nodeLabel:'Edit'.
+    node parent: self selectedNode.        
+    node add:(self nodeLabel:'Copy'  selector:#copySelection).
+    node add:(self nodeLabel:'Cut'   selector:#cutSelection).
+    node add:(self nodeLabel:'Paste' selector:#paste).
+    self addElement:node
+
+    "Created: / 23.8.1998 / 15:52:16 / cg"
+    "Modified: / 23.8.1998 / 15:59:36 / cg"
+!
+
+doCreateStandardFileMenu
+
+    |node|
+    node := self nodeLabel:'File'.
+    node parent: self selectedNode.        
+    node add:(self nodeLabel:'New'        selector:#menuNew).
+    node add:(self nodeLabel:'-'          ).
+    node add:(self nodeLabel:'Open...'    selector:#menuOpen).
+    node add:(self nodeLabel:'-'          ).
+    node add:(self nodeLabel:'Save'       selector:#menuSave).
+    node add:(self nodeLabel:'Save As...' selector:#menuSaveAs).
+    node add:(self nodeLabel:'-'          ).
+    node add:(self nodeLabel:'Exit'       selector:#closeRequest).
+    self addElement:node
+
+    "Created: / 23.8.1998 / 15:51:55 / cg"
+    "Modified: / 23.8.1998 / 16:04:24 / cg"
+!
+
+doCreateStandardHelpMenu
+
+    |node|
+    node := self nodeLabel:'Help'.
+    node parent: self selectedNode.        
+    node contents startGroup:#right.
+    node add:(self nodeLabel:'Documentation'          selector:#openDocumentation).
+    node add:(self nodeLabel:'-').
+    node add:(self nodeLabel:'About this Application' selector:#openAboutThisApplication).
+    self addElement:node
+
+    "Created: / 23.8.1998 / 15:52:46 / cg"
+    "Modified: / 23.8.1998 / 17:30:12 / cg"
+!
+
 doCut
     |app|
 
@@ -3061,6 +3154,14 @@
     "Modified: / 6.6.1998 / 17:22:35 / cg"
 !
 
+nodeLabel:aLabel selector:aSelector
+
+    ^TreeItem new contents: (((MenuEditor::Item new label:aLabel) value:aSelector) translateLabel:true)
+
+    "Modified: / 6.6.1998 / 17:22:35 / cg"
+    "Created: / 23.8.1998 / 15:58:59 / cg"
+!
+
 selectedNodeAdd:something
 
     |node|