JAL-3210 Improvements to eclipse detection. New src tree and SwingJS updated from...
[jalview.git] / src / jalview / api / JalviewApp.java
diff --git a/src/jalview/api/JalviewApp.java b/src/jalview/api/JalviewApp.java
new file mode 100644 (file)
index 0000000..0548c85
--- /dev/null
@@ -0,0 +1,82 @@
+package jalview.api;
+
+import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.HiddenColumns;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceGroup;
+import jalview.datamodel.SequenceI;
+import jalview.io.DataSourceType;
+import jalview.io.NewickFile;
+import jalview.javascript.JSFunctionExec;
+import jalview.javascript.MouseOverStructureListener;
+import jalview.structure.SelectionSource;
+import jalview.structure.VamsasSource;
+
+import java.applet.AppletContext;
+import java.io.IOException;
+import java.net.URL;
+import java.util.Hashtable;
+import java.util.Vector;
+
+import netscape.javascript.JSObject;
+
+public interface JalviewApp
+{
+  public String getParameter(String name);
+
+  public boolean getDefaultParameter(String name, boolean def);
+
+  public URL getDocumentBase();
+
+  public URL getCodeBase();
+
+  public void setAlignPdbStructures(boolean defaultParameter);
+
+  public void newStructureView(PDBEntry pdb, SequenceI[] seqs,
+          String[] chains, DataSourceType protocol);
+
+  public void alignedStructureView(PDBEntry[] pdb, SequenceI[][] seqs,
+          String[][] chains, String[] protocols);
+
+  public void updateForAnnotations();
+
+  public AlignViewportI getViewport();
+
+  public void setFeatureGroupState(String[] groups, boolean state);
+
+  public boolean parseFeaturesFile(String param, DataSourceType protocol);
+
+  public void newFeatureSettings();
+
+  public boolean loadScoreFile(String sScoreFile) throws IOException;
+
+  public void loadTree(NewickFile fin, String treeFile) throws IOException;
+
+  public Vector<Runnable> getJsExecQueue(JSFunctionExec jsFunctionExec);
+
+  public AppletContext getAppletContext();
+
+  public boolean isJsfallbackEnabled();
+
+  public JSObject getJSObject();
+
+  public StructureSelectionManagerProvider getStructureSelectionManagerProvider();
+
+  public void updateColoursFromMouseOver(Object source,
+          MouseOverStructureListener mouseOverStructureListener);
+
+  public Object[] getSelectionForListener(SequenceGroup seqsel, ColumnSelection colsel,
+          HiddenColumns hidden, SelectionSource source, Object alignFrame);
+
+  public String arrayToSeparatorList(String[] array);
+
+  public Hashtable<String, int[]> getJSHashes();
+
+  Hashtable<String, Hashtable<String, String[]>> getJSMessages();
+
+  public Object getFrameForSource(VamsasSource source);
+
+  public jalview.renderer.seqfeatures.FeatureRenderer getNewFeatureRenderer(
+          AlignViewportI vp);
+
+}