REPLACE added to edit command
[jalview.git] / src / jalview / appletgui / APopupMenu.java
index b281fcd..8af2759 100755 (executable)
@@ -70,6 +70,7 @@ public class APopupMenu
   MenuItem repGroup = new MenuItem();\r
   MenuItem sequenceName = new MenuItem("Edit Name/Description");\r
   MenuItem sequenceFeature = new MenuItem("Create Sequence Feature");\r
+  MenuItem editSequence = new MenuItem("Edit Sequence");\r
 \r
   Sequence seq;\r
   MenuItem revealAll = new MenuItem();\r
@@ -310,7 +311,6 @@ public class APopupMenu
 \r
       if (dialog.accept)\r
       {\r
-\r
         getGroup().setName(dialog.getName().replace(' ', '_'));\r
         getGroup().setDescription(dialog.getDescription());\r
       }\r
@@ -324,6 +324,42 @@ public class APopupMenu
     {\r
       ap.alignFrame.cut_actionPerformed();\r
     }\r
+    else if(source == editSequence)\r
+    {\r
+      SequenceGroup sg = ap.av.getSelectionGroup();\r
+\r
+      if(sg!=null)\r
+      {\r
+        if (seq == null)\r
+          seq = (Sequence) sg.getSequenceAt(0);\r
+\r
+        EditNameDialog dialog = new EditNameDialog(seq.getSequenceAsString(\r
+            sg.getStartRes(),\r
+            sg.getEndRes() + 1),\r
+                                                   null,\r
+                                                   "Edit Sequence ",\r
+                                                   null,\r
+\r
+                                                   ap.alignFrame,\r
+                                                   "Edit Sequence",\r
+                                                   500, 100);\r
+\r
+        if (dialog.accept)\r
+        {\r
+          EditCommand editCommand = new EditCommand(\r
+              "Edit Sequences", EditCommand.REPLACE,\r
+              dialog.getName(),\r
+              sg.getSequencesAsArray(ap.av.hiddenRepSequences),\r
+              sg.getStartRes(), sg.getEndRes()+1, ap.av.alignment\r
+              );\r
+\r
+          ap.alignFrame.addHistoryItem(editCommand);\r
+\r
+          ap.av.firePropertyChange("alignment", null,\r
+                                 ap.av.getAlignment().getSequences());\r
+        }\r
+      }\r
+    }\r
     else if (source == toUpper || source == toLower || source == toggleCase)\r
     {\r
       SequenceGroup sg = ap.av.getSelectionGroup();\r
@@ -597,6 +633,10 @@ public class APopupMenu
     copy.addActionListener(this);\r
     editMenu.add(cut);\r
     cut.addActionListener(this);\r
+\r
+    editMenu.add(editSequence);\r
+    editSequence.addActionListener(this);\r
+\r
     editMenu.add(toUpper);\r
     toUpper.addActionListener(this);\r
     editMenu.add(toLower);\r