Merge branch 'Release_2_7_Branch_hotfix_JAL-962' into develop
[jalview.git] / src / jalview / bin / JalviewLite.java
index 33ff254..cff6987 100644 (file)
@@ -716,6 +716,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
@@ -1840,7 +1863,27 @@ public class JalviewLite extends Applet implements
           }\r
         }\r
 \r
-        String param = applet.getParameter("features");\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
+        //\r
+        // hide specific groups\r
+        // \r
+        String param = applet.getParameter("hidefeaturegroups");\r
+        if (param != null)\r
+        {\r
+          newAlignFrame.setFeatureGroupState(separatorListToArray(param), false);        \r
+//          applet.setFeatureGroupStateOn(newAlignFrame, param, false);\r
+        }\r
+        // show specific groups\r
+        param = applet.getParameter("showfeaturegroups");\r
+        if (param != null)\r
+        {\r
+          newAlignFrame.setFeatureGroupState(separatorListToArray(param), true);        \r
+//          applet.setFeatureGroupStateOn(newAlignFrame, param, true);\r
+        }\r
+        // and now load features\r
+        param = applet.getParameter("features");\r
         if (param != null)\r
         {\r
           param = setProtocolState(param);\r
@@ -2059,21 +2102,6 @@ public class JalviewLite extends Applet implements
                   protocols);\r
 \r
         }\r
-        // ///////////////////////////\r
-        // modify display of features\r
-        //\r
-        // hide specific groups\r
-        param = applet.getParameter("hidefeaturegroups");\r
-        if (param != null)\r
-        {\r
-          applet.setFeatureGroupStateOn(newAlignFrame, param, false);\r
-        }\r
-        // show specific groups\r
-        param = applet.getParameter("showfeaturegroups");\r
-        if (param != null)\r
-        {\r
-          applet.setFeatureGroupStateOn(newAlignFrame, param, true);\r
-        }\r
       }\r
       else\r
       {\r