JAL-3379 JalviewJS-API specs - preliminary
[jalview.git] / doc / JalviewJS-API.md
1 ## public interface JalviewJSApi
2
3 # full list of available methods:
4
5   public boolean addPdbFile(AlignFrame alFrame, String sequenceId, String pdbEntryString, String pdbFile);
6   public String arrayToSeparatorList(String[] array);
7   public String getAlignment(String format);
8   public String getAlignment(String format, String suffix);
9   public String getAlignmentFrom(AlignFrame alf, String format);
10   public String getAlignmentFrom(AlignFrame alf, String format, String suffix);
11   public String getAlignmentOrder();
12   public String getAlignmentOrderFrom(AlignFrame alf);
13   public String getAlignmentOrderFrom(AlignFrame alf, String sep);
14   public String getAnnotation();
15   public String getAnnotationFrom(AlignFrame alf);
16   public Object getAppletParameter(String name, boolean asString);
17   public URL getCodeBase();
18   public URL getDocumentBase();
19   public String getFeatureGroups();
20   public String getFeatureGroupsOfState(boolean visible);
21   public String getFeatureGroupsOfStateOn(AlignFrame alf, boolean visible);
22   public String getFeatureGroupsOn(AlignFrame alf);
23   public String getFeatures(String format);
24   public String getFeaturesFrom(AlignFrame alf, String format);
25   public Object getFrameForSource(VamsasSource source);
26   public jalview.renderer.seqfeatures.FeatureRenderer getNewFeatureRenderer(AlignViewportI vp);
27   public String getParameter(String name);
28   public String getSelectedSequences();
29   public String getSelectedSequences(String sep);
30   public String getSelectedSequencesAsAlignment(String format, String suffix);
31   public String getSelectedSequencesAsAlignmentFrom(AlignFrame alf, String format, String suffix);
32   public String getSelectedSequencesFrom(AlignFrame alf);
33   public String getSelectedSequencesFrom(AlignFrame alf, String sep);
34   public Object[] getSelectionForListener(SequenceGroup seqsel, ColumnSelection colsel, HiddenColumns hidden, SelectionSource source, Object alignFrame);
35   public String getSeparator();
36   public AlignViewportI getViewport();
37   public void highlight(String sequenceId, String position, String alignedPosition);
38   public void highlightIn(AlignFrame alf, String sequenceId, String position, String alignedPosition);
39   public AlignFrame loadAlignment(String text, String title);
40   public void loadAnnotation(String annotation);
41   public void loadAnnotationFrom(AlignFrame alf, String annotation);
42   public void loadFeatures(String features, boolean autoenabledisplay);
43   public boolean loadFeaturesFrom(AlignFrame alf, String features, boolean autoenabledisplay);
44   public boolean loadScoreFile(String sScoreFile) throws IOException;
45   public void newFeatureSettings();
46   public void newStructureView(PDBEntry pdb, SequenceI[] seqs, String[] chains, DataSourceType protocol);
47   public Object openPcaPanel(AlignFrame af, String modelName);
48   public Object openTreePanel(AlignFrame af, String treeType, String modelName);
49   public String orderAlignmentBy(AlignFrame alf, String order, String undoName, String sep);
50   public String orderBy(String order, String undoName);
51   public String orderBy(String order, String undoName, String sep);
52   public Object parseArguments(String[] args);
53   public boolean parseFeaturesFile(String param, DataSourceType protocol);
54   public void removeSelectionListener(AlignFrame af, String listener);
55   public void scrollViewToColumnIn(AlignFrame alf, String leftHandColumn);
56   public void scrollViewToIn(AlignFrame alf, String topRow, String leftHandColumn);
57   public void scrollViewToRowIn(AlignFrame alf, String topRow);
58   public void select(String sequenceIds, String columns);
59   public void select(String sequenceIds, String columns, String sep);
60   public void selectIn(AlignFrame alf, String sequenceIds, String columns);
61   public void selectIn(AlignFrame alf, String sequenceIds, String columns, String sep);
62   public String[] separatorListToArray(String list);
63   public void setFeatureGroupState(String groups, boolean state);
64   public void setFeatureGroupState(String[] groups, boolean state);
65   public void setFeatureGroupStateOn(AlignFrame alf, String groups, boolean state);
66   public void setSelectionListener(AlignFrame af, String listener);
67   public void setSelectionListener(String listener);
68   public void setSeparator(String separator);
69   public void showOverview();
70   public void updateForAnnotations();
71
72 # proposed alias list:
73  
74 - remove overloaded methods
75 - indicate null options
76 - use standard arrays; no need for special separators
77 - possibly return more actual objects, not just strings
78  
79   public boolean addPdbFile(AlignFrame alFrame, String sequenceId, String pdbEntryString, String pdbFile);
80   public String getAlignment(AlignFrame alf, String format, boolean includeStartEnd);
81   public String[] getAlignmentOrder(AlignFrame alf);
82   public String getAnnotation(AlignFrame alf);
83   public Object getAppletParameter(String name, boolean asString);
84   public URL getCodeBase();
85   public URL getDocumentBase();
86   public String[] getFeatureGroups();
87   public String[] getFeatureGroupsOfState(boolean visible);
88   public String getFeatures(AlignFrame alf, String format);
89   public jalview.renderer.seqfeatures.FeatureRenderer getNewFeatureRenderer(AlignViewportI vp);
90   public String getParameter(String name);
91   public String[] getSelectedSequences(AlignFrame alf);
92   public String[] getSelectedSequencesAsAlignment(AlignFrame alf, String format, boolean includeStartEnd);
93   public Object[] getSelectionForListener(SequenceGroup seqsel, ColumnSelection colsel, HiddenColumns hidden, SelectionSource source, Object alignFrame);
94   public AlignViewportI getViewport();
95   public void highlight(AlignFrame alf, String sequenceId, String position, String alignedPosition);
96   public AlignFrame loadAlignment(String text, String title);
97   public void loadAnnotation(AlignFrame alf, String annotation);
98   public boolean loadFeatures(AlignFrame alf, String features, boolean autoenabledisplay);
99   public boolean loadScoreFile(String sScoreFile) throws IOException;
100   public void newFeatureSettings();
101   public void newStructureView(PDBEntry pdb, SequenceI[] seqs, String[] chains, DataSourceType protocol);
102   public Object openPcaPanel(AlignFrame af, String modelName);
103   public Object openTreePanel(AlignFrame af, String treeType, String modelName);
104   public String[] orderBy(AlignFrame alf, String order, String undoName);
105   public Object parseArguments(String[] args);
106   public boolean parseFeaturesFile(String param, DataSourceType protocol);
107   public void removeSelectionListener(AlignFrame af, String listener);
108   public void scrollViewTo(AlignFrame alf, String topRow, String leftHandColumn);
109   public void select(AlignFrame alf, String[] sequenceIds, String[] columns);
110   public void setFeatureGroupState(AlignFrame alf, String groups, boolean state);
111   public void setSelectionListener(AlignFrame af, String listener);
112   public void showOverview();
113   public void updateForAnnotations();
114
115 # unknown methods/shouldn't be in interface?
116
117   public String arrayToSeparatorList(String[] array);
118   public Object getFrameForSource(VamsasSource source);
119   public String getSeparator();
120   public String[] separatorListToArray(String list);
121   public void setSeparator(String separator);
122