Edit menu added
authoramwaterhouse <Andrew Waterhouse>
Fri, 28 Apr 2006 12:34:28 +0000 (12:34 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 28 Apr 2006 12:34:28 +0000 (12:34 +0000)
src/jalview/gui/PopupMenu.java

index 4f2326a..968262b 100755 (executable)
@@ -68,8 +68,13 @@ public class PopupMenu extends JPopupMenu
     JCheckBoxMenuItem showBoxes = new JCheckBoxMenuItem();\r
     JCheckBoxMenuItem showText = new JCheckBoxMenuItem();\r
     JCheckBoxMenuItem showColourText = new JCheckBoxMenuItem();\r
+  JMenu jMenu1 = new JMenu();\r
+  JMenuItem cut = new JMenuItem();\r
+  JMenuItem copy = new JMenuItem();\r
+  JMenuItem upperCase = new JMenuItem();\r
+  JMenuItem lowerCase = new JMenuItem();\r
 \r
-    /**\r
+  /**\r
      * Creates a new PopupMenu object.\r
      *\r
      * @param ap DOCUMENT ME!\r
@@ -227,6 +232,8 @@ public class PopupMenu extends JPopupMenu
             showColourText.setSelected(sg.getColourText());\r
             showBoxes.setSelected(sg.getDisplayBoxes());\r
         }\r
+        else\r
+          groupMenu.setVisible(false);\r
 \r
         if (!ap.av.alignment.getGroups().contains(sg))\r
         {\r
@@ -284,7 +291,7 @@ public class PopupMenu extends JPopupMenu
     private void jbInit() throws Exception\r
     {\r
         groupMenu.setText("Group");\r
-        groupMenu.setText("Define");\r
+        groupMenu.setText("Group");\r
         groupName.setText("Name");\r
         groupName.addActionListener(new java.awt.event.ActionListener()\r
             {\r
@@ -355,9 +362,43 @@ public class PopupMenu extends JPopupMenu
                     showColourText_actionPerformed(e);\r
                 }\r
             });\r
-        add(groupMenu);\r
+    jMenu1.setText("Edit");\r
+    cut.setText("Cut");\r
+    cut.addActionListener(new ActionListener()\r
+    {\r
+      public void actionPerformed(ActionEvent e)\r
+      {\r
+        cut_actionPerformed(e);\r
+      }\r
+    });\r
+    upperCase.setText("To Upper Case");\r
+    upperCase.addActionListener(new ActionListener()\r
+    {\r
+      public void actionPerformed(ActionEvent e)\r
+      {\r
+        upperCase_actionPerformed(e);\r
+      }\r
+    });\r
+    copy.setText("Copy");\r
+    copy.addActionListener(new ActionListener()\r
+    {\r
+      public void actionPerformed(ActionEvent e)\r
+      {\r
+        copy_actionPerformed(e);\r
+      }\r
+    });\r
+    lowerCase.setText("To Lower Case");\r
+    lowerCase.addActionListener(new ActionListener()\r
+    {\r
+      public void actionPerformed(ActionEvent e)\r
+      {\r
+        lowerCase_actionPerformed(e);\r
+      }\r
+    });\r
+    add(groupMenu);\r
         add(sequenceMenu);\r
-        groupMenu.add(groupName);\r
+    this.add(jMenu1);\r
+    groupMenu.add(groupName);\r
         groupMenu.addSeparator();\r
         groupMenu.add(unGroupMenuItem);\r
         groupMenu.add(colourMenu);\r
@@ -406,7 +447,11 @@ public class PopupMenu extends JPopupMenu
         colourMenu.addSeparator();\r
         colourMenu.add(abovePIDColour);\r
         colourMenu.add(conservationMenuItem);\r
-        noColourmenuItem.setText("None");\r
+    jMenu1.add(copy);\r
+    jMenu1.add(cut);\r
+    jMenu1.add(upperCase);\r
+    jMenu1.add(lowerCase);\r
+    noColourmenuItem.setText("None");\r
         noColourmenuItem.addActionListener(new java.awt.event.ActionListener()\r
             {\r
                 public void actionPerformed(ActionEvent e)\r
@@ -988,4 +1033,40 @@ public class PopupMenu extends JPopupMenu
         refresh();\r
     }\r
 \r
+  public void copy_actionPerformed(ActionEvent e)\r
+  {\r
+    ap.alignFrame.copy_actionPerformed(null);\r
+  }\r
+\r
+  public void cut_actionPerformed(ActionEvent e)\r
+  {\r
+    ap.alignFrame.cut_actionPerformed(null);\r
+  }\r
+\r
+  public void upperCase_actionPerformed(ActionEvent e)\r
+  {\r
+    SequenceGroup sg = ap.av.getSelectionGroup();\r
+    if(sg==null)\r
+      return;\r
+\r
+    for(int g=0; g<sg.getSize(); g++)\r
+    {\r
+      sg.getSequenceAt(g).changeCase(true, sg.getStartRes(), sg.getEndRes()+1);\r
+    }\r
+    ap.repaint();\r
+  }\r
+\r
+  public void lowerCase_actionPerformed(ActionEvent e)\r
+  {\r
+    SequenceGroup sg = ap.av.getSelectionGroup();\r
+    if(sg==null)\r
+      return;\r
+\r
+    for(int g=0; g<sg.getSize(); g++)\r
+    {\r
+      sg.getSequenceAt(g).changeCase(false, sg.getStartRes(), sg.getEndRes()+1);\r
+    }\r
+    ap.repaint();\r
+  }\r
+\r
 }\r