Submissions for secondary structure prediction are now filtered to remove empty seque...
[jalview.git] / src / jalview / gui / CutAndPasteTransfer.java
index bd2eb7d..be2cf97 100755 (executable)
@@ -39,6 +39,19 @@ import javax.swing.*;
  */\r
 public class CutAndPasteTransfer extends GCutAndPasteTransfer\r
 {\r
+\r
+  public CutAndPasteTransfer()\r
+  {\r
+    SwingUtilities.invokeLater(new Runnable()\r
+    {\r
+      public void run()\r
+      {\r
+        textarea.requestFocus();\r
+      }\r
+    });\r
+\r
+  }\r
+\r
     /**\r
      * DOCUMENT ME!\r
      */\r
@@ -67,6 +80,11 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
         textarea.setText(text);\r
     }\r
 \r
+    public void appendText(String text)\r
+    {\r
+      textarea.append(text);\r
+    }\r
+\r
     /**\r
      * DOCUMENT ME!\r
      *\r
@@ -74,8 +92,9 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
      */\r
     public void copyItem_actionPerformed(ActionEvent e)\r
     {\r
+        textarea.getSelectedText();\r
         Clipboard c = Toolkit.getDefaultToolkit().getSystemClipboard();\r
-        c.setContents(new StringSelection(textarea.getText()), null);\r
+        c.setContents(new StringSelection(textarea.getSelectedText()), null);\r
     }\r
 \r
     /**\r
@@ -95,7 +114,7 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
 \r
         try\r
         {\r
-            textarea.setText((String) contents.getTransferData(\r
+            textarea.append((String) contents.getTransferData(\r
                     DataFlavor.stringFlavor));\r
         }\r
         catch (Exception ex)\r
@@ -115,7 +134,7 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
 \r
         if (FormatAdapter.formats.contains(format))\r
         {\r
-            sequences = FormatAdapter.readFile(getText(), "Paste", format);\r
+            sequences = new FormatAdapter().readFile(getText(), "Paste", format);\r
         }\r
 \r
         if (sequences != null)\r
@@ -167,4 +186,31 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
         {\r
         }\r
     }\r
+\r
+    public void textarea_mousePressed(MouseEvent e)\r
+    {\r
+      if(SwingUtilities.isRightMouseButton(e))\r
+      {\r
+        JPopupMenu popup = new JPopupMenu("Edit");\r
+        JMenuItem item = new JMenuItem("Copy");\r
+        item.addActionListener(new ActionListener()\r
+            {public void actionPerformed(ActionEvent e)\r
+                  {\r
+                    copyItem_actionPerformed(e);\r
+                  }\r
+            });\r
+        popup.add(item);\r
+        item = new JMenuItem("Paste");\r
+        item.addActionListener(new ActionListener()\r
+            {public void actionPerformed(ActionEvent e)\r
+                  {\r
+                    pasteMenu_actionPerformed(e);\r
+                  }\r
+            });\r
+        popup.add(item);\r
+        popup.show(this, e.getX(), e.getY()+textarea.getY()+30);\r
+\r
+      }\r
+    }\r
+\r
 }\r