Merge remote-tracking branch 'origin/Tcoffee_JAL-1065' into develop
[jalview.git] / src / jalview / bin / JalviewLite.java
index 562bc92..342ff4c 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)\r
- * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle\r
  * \r
  * This file is part of Jalview.\r
  * \r
@@ -492,6 +492,8 @@ public class JalviewLite extends Applet implements
       boolean seqlimits = suffix.equalsIgnoreCase("true");\r
       if (alf.viewport.getSelectionGroup() != null)\r
       {\r
+        // JBPNote: getSelectionAsNewSequence behaviour has changed - this method now returns a full copy of sequence data\r
+        // TODO consider using getSequenceSelection instead here\r
         String reply = new AppletFormatAdapter().formatSequences(format,\r
                 new Alignment(alf.viewport.getSelectionAsNewSequence()),\r
                 seqlimits);\r
@@ -716,6 +718,29 @@ public class JalviewLite extends Applet implements
   /*\r
    * (non-Javadoc)\r
    * \r
+   * @see jalview.bin.JalviewLiteJsApi#loadAnnotation(java.lang.String)\r
+   */\r
+  public void loadFeatures(String features, boolean autoenabledisplay)\r
+  {\r
+    loadFeaturesFrom(getDefaultTargetFrame(), features, autoenabledisplay);\r
+  }\r
+\r
+  /*\r
+   * (non-Javadoc)\r
+   * \r
+   * @see\r
+   * jalview.bin.JalviewLiteJsApi#loadAnnotationFrom(jalview.appletgui.AlignFrame\r
+   * , java.lang.String)\r
+   */\r
+  public void loadFeaturesFrom(AlignFrame alf, String features, boolean autoenabledisplay)\r
+  {\r
+    alf.parseFeaturesFile(features, AppletFormatAdapter.PASTE, autoenabledisplay);\r
+  }\r
+\r
+\r
+  /*\r
+   * (non-Javadoc)\r
+   * \r
    * @see jalview.bin.JalviewLiteJsApi#getFeatures(java.lang.String)\r
    */\r
   public String getFeatures(String format)\r
@@ -1798,8 +1823,7 @@ public class JalviewLite extends Applet implements
 \r
         if (protocol == jalview.io.AppletFormatAdapter.PASTE)\r
         {\r
-          newAlignFrame.setTitle("Sequences from "\r
-                  + applet.getDocumentBase());\r
+          newAlignFrame.setTitle("Sequences from " + applet.getDocumentBase());\r
         }\r
 \r
         newAlignFrame.statusBar.setText("Successfully loaded file " + file);\r
@@ -1840,6 +1864,24 @@ public class JalviewLite extends Applet implements
           }\r
         }\r
 \r
+\r
+        /*\r
+         * Try to load T-Coffee score file\r
+         */\r
+        String sScoreFile = applet.getParameter("scoreFile");\r
+        if( sScoreFile != null && !"".equals(sScoreFile) ) {\r
+            try {\r
+               URL urlScore = new URL(sScoreFile);\r
+               newAlignFrame.loadScoreFile(urlScore);\r
+               \r
+            }\r
+            catch( Exception e ) {\r
+               // TODO error message log (shows a warning dialogbox?)\r
+               System.err.printf("Cannot read score file: '%s'. Cause: %s \n", sScoreFile, e.getMessage());\r
+            }\r
+        }\r
+       \r
+\r
         // ///////////////////////////\r
         // modify display of features\r
         // we do this before any features have been loaded, ensuring any hidden groups are hidden when features first displayed\r