* datasource protocol for access to PDBEntry
*/
String protocol = null;
-
+ /**
+ * Load a bunch of pdb entries associated with sequences in the alignment and display them - aligning them if necessary.
+ * @param pdbentries each pdb file (at least one needed)
+ * @param boundseqs each set of sequences for each pdb file (must match number of pdb files)
+ * @param boundchains the target pdb chain corresponding with each sequence associated with each pdb file (may be null at any level)
+ * @param align true/false
+ * @param ap associated alignment
+ * @param protocol how to get pdb data
+ */
+ public AppletJmol(PDBEntry[] pdbentries, SequenceI[][] boundseqs, String[][] boundchains, boolean align, AlignmentPanel ap, String protocol)
+ {
+ throw new Error("Not yet implemented.");
+ }
public AppletJmol(PDBEntry pdbentry, SequenceI[] seq, String[] chains,
AlignmentPanel ap, String protocol)
{
coloursMenu.add(user);
helpMenu.add(jmolHelp);
+ this.setLayout(new BorderLayout());
setMenuBar(menuBar);
renderPanel = new RenderPanel();
embedMenuIfNeeded(renderPanel);
this.add(renderPanel, BorderLayout.CENTER);
+ scriptWindow = new Panel();
+ scriptWindow.setVisible(false);
+ // this.add(scriptWindow, BorderLayout.SOUTH);
+
try
{
jmb.allocateViewer(renderPanel, true, ap.av.applet.getName()+"_jmol_",
ap.av.applet.getDocumentBase(), ap.av.applet.getCodeBase(),
- "-applet");
+ "-applet", scriptWindow, null);
} catch (Exception e)
{
System.err
closeViewer();
}
});
-
+ if (pdbentry.getProperty()==null)
+ {
+ pdbentry.setProperty(new Hashtable());
+ pdbentry.getProperty().put("protocol", protocol);
+ }
if (pdbentry.getFile() != null)
{
// import structure data from pdbentry.getFile based on given protocol
if (protocol.equals(AppletFormatAdapter.PASTE))
{
+ // TODO: JAL-623 : correctly record file contents for matching up later
+ // pdbentry.getProperty().put("pdbfilehash",""+pdbentry.getFile().hashCode());
loadInline(pdbentry.getFile());
}
else if (protocol.equals(AppletFormatAdapter.FILE)
public void loadInline(String string)
{
loadedInline = true;
- jmb.viewer.openStringInline(string);
+ jmb.loadInline(string);
}
void setChainMenuItems(Vector chains)
{
}
}
-
+ Panel splitPane=null;
public void showConsole(boolean showConsole)
{
- if (scriptWindow == null)
+ if (showConsole)
{
- scriptWindow = new Panel(new BorderLayout());
- inputLine = new TextField();
- history = new TextArea(5, 40);
- scriptWindow.add(history, BorderLayout.CENTER);
- scriptWindow.add(inputLine, BorderLayout.SOUTH);
- add(scriptWindow, BorderLayout.SOUTH);
+ remove(renderPanel);
+ splitPane = new Panel();
+
+ splitPane.setLayout(new java.awt.GridLayout(2,1));
+ splitPane.add(renderPanel);
+ splitPane.add(scriptWindow);
+ scriptWindow.setVisible(true);
+ this.add(splitPane, BorderLayout.CENTER);
+ splitPane.setVisible(true);
+ splitPane.validate();
+ } else {
scriptWindow.setVisible(false);
- history.setEditable(false);
- inputLine.addKeyListener(this);
+ remove(splitPane);
+ add(renderPanel, BorderLayout.CENTER);
+ splitPane=null;
}
-
- scriptWindow.setVisible(!scriptWindow.isVisible());
validate();
}