test data for JAL-701
[jalview.git] / src / jalview / appletgui / AlignFrame.java
index 80b01d0..7030637 100644 (file)
@@ -1032,7 +1032,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 \r
   private Hashtable getDisplayedFeatureCols()\r
   {\r
-    if (alignPanel.getFeatureRenderer() != null)\r
+    if (alignPanel.getFeatureRenderer() != null && viewport.featuresDisplayed!=null)\r
     {\r
       FeatureRenderer fr = alignPanel.getFeatureRenderer();\r
       Hashtable fcols = new Hashtable();\r
@@ -1065,12 +1065,25 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 \r
     if (displayTextbox)\r
     {\r
-      CutAndPasteTransfer cap = new CutAndPasteTransfer(false, this);\r
+      boolean frimport=false;\r
+      if (features==null || features.equals("No Features Visible"))\r
+      {\r
+        features = "# No features visible - paste some and import them here.";\r
+        frimport=true;\r
+      }\r
+      \r
+      CutAndPasteTransfer cap = new CutAndPasteTransfer(frimport, this);\r
+      if (frimport)\r
+      {\r
+        cap.setAnnotationImport();\r
+      }\r
       Frame frame = new Frame();\r
       frame.add(cap);\r
       jalview.bin.JalviewLite.addFrame(frame, "Features", 600, 500);\r
-\r
       cap.setText(features);\r
+    } else {\r
+      if (features==null)\r
+        features = "";\r
     }\r
 \r
     return features;\r
@@ -2574,7 +2587,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
   }\r
   protected void documentation_actionPerformed()\r
   {\r
-    showURL("http://www.jalview.org/help.html", "HELP");\r
+    alignPanel.av.applet.openJalviewHelpUrl();\r
   }\r
 \r
   protected void about_actionPerformed()\r
@@ -2645,45 +2658,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     }\r
     else\r
     {\r
-      try\r
-      {\r
-        if (url.indexOf(":") == -1)\r
-        {\r
-          // TODO: verify (Bas Vroling bug) prepend codebase or server URL to\r
-          // form valid URL\r
-          // Should really use docbase, not codebase.\r
-          if (url.indexOf("/") == 0)\r
-          {\r
-            String codebase = viewport.applet.getCodeBase().toString();\r
-            url = codebase.substring(0, codebase.length()\r
-                    - viewport.applet.getCodeBase().getFile().length())\r
-                    + url;\r
-          }\r
-          else\r
-          {\r
-            url = viewport.applet.getCodeBase() + url;\r
-          }\r
-          System.out.println("Show url (prepended codebase): " + url);\r
-        }\r
-        else\r
-        {\r
-          System.out.println("Show url: " + url);\r
-        }\r
-        if (url.indexOf("javascript:") == 0)\r
-        {\r
-          // no target for the javascript context\r
-          viewport.applet.getAppletContext().showDocument(\r
-                  new java.net.URL(url));\r
-        }\r
-        else\r
-        {\r
-          viewport.applet.getAppletContext().showDocument(\r
-                  new java.net.URL(url), target);\r
-        }\r
-      } catch (Exception ex)\r
-      {\r
-        ex.printStackTrace();\r
-      }\r
+      viewport.applet.showURL(url, target);\r
     }\r
   }\r
 \r
@@ -3581,4 +3556,18 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
   {\r
     alignPanel.seqPanel.scrollTo(row, column);    \r
   }\r
+  public void scrollToRow(int row)\r
+  {\r
+    alignPanel.seqPanel.scrollToRow(row);    \r
+  }\r
+  public void scrollToColumn(int column)\r
+  {\r
+    alignPanel.seqPanel.scrollToColumn(column);    \r
+  }\r
+  /**\r
+   * @return the alignments unique ID.\r
+   */\r
+  public String getSequenceSetId() {\r
+    return viewport.getSequenceSetId();\r
+  }\r
 }\r