add history for cut and paste
[jalview.git] / src / jalview / gui / AlignFrame.java
index a20a3fe..22c48bc 100755 (executable)
@@ -52,7 +52,6 @@ public class AlignFrame extends GAlignFrame
      }\r
    });\r
 \r
-   AlignmentUtil.fetchSequenceFeatures(al, alignPanel);\r
   }\r
 \r
   protected void saveAs_actionPerformed(ActionEvent e)\r
@@ -148,8 +147,8 @@ public class AlignFrame extends GAlignFrame
     }catch(Exception ex){}\r
   }\r
 \r
-  ArrayList  historyList = new ArrayList();\r
-  ArrayList redoList = new ArrayList();\r
+  Stack historyList = new Stack();\r
+  Stack redoList = new Stack();\r
 \r
   void updateEditMenuBar()\r
   {\r
@@ -287,6 +286,7 @@ public class AlignFrame extends GAlignFrame
 \r
   protected void pasteThis_actionPerformed(ActionEvent e)\r
   {\r
+    addHistoryItem("Paste");\r
     paste(false);\r
   }\r
 \r
@@ -344,6 +344,7 @@ public class AlignFrame extends GAlignFrame
 \r
   protected void delete_actionPerformed(ActionEvent e)\r
   {\r
+    addHistoryItem("Delete");\r
     if (viewport.getRubberbandGroup() == null)\r
       return;\r
 \r
@@ -611,6 +612,11 @@ public class AlignFrame extends GAlignFrame
   public void sequenceFeatures_actionPerformed(ActionEvent evt)\r
   {\r
     viewport.showSequenceFeatures(sequenceFeatures.isSelected());\r
+    if(viewport.showSequenceFeatures && !((Alignment)viewport.alignment).featuresAdded)\r
+    {\r
+         AlignmentUtil.fetchSequenceFeatures( viewport.alignment , alignPanel);\r
+         ((Alignment)viewport.alignment).featuresAdded = true;\r
+    }\r
     alignPanel.RefreshPanels();\r
   }\r
 \r
@@ -973,7 +979,6 @@ if ( viewport.getConservationSelected() )
       return;\r
     }\r
 \r
-    JInternalFrame frame = new javax.swing.JInternalFrame();\r
     TreePanel tp=null;\r
    if (viewport.getSelection() != null && viewport.getSelection().size() > 3)\r
    {\r
@@ -986,8 +991,7 @@ if ( viewport.getConservationSelected() )
                          type, pwType,  0, viewport.alignment.getWidth());\r
    }\r
 \r
-   frame.setContentPane(tp);\r
-   Desktop.addInternalFrame(frame, title, 600, 500);\r
+   Desktop.addInternalFrame(tp, title, 600, 500);\r
   }\r
 \r
 \r
@@ -1016,7 +1020,7 @@ if ( viewport.getConservationSelected() )
       image = new Image[9];\r
       for(int i=0; i<9; i++)\r
       {\r
-        java.net.URL url = getClass().getResource("/dna" + (i+1) + ".gif");\r
+        java.net.URL url = getClass().getResource("/images/dna" + (i+1) + ".gif");\r
         if (url != null)\r
         {\r
           image[i] = java.awt.Toolkit.getDefaultToolkit().createImage(url);\r