StructureSelectionManager ssm;
+ /**
+ * decide if new structures are aligned to existing ones
+ */
+ private boolean superposeAdded = true;
+
public enum ViewerType
{
JMOL, CHIMERA
new SequenceI[seqsForPdbs.size()][]);
if (sview != null)
{
+ sview.setAlignAddedStructures(superposeAdded);
new Thread(new Runnable()
{
@Override
if (viewerType.equals(ViewerType.JMOL))
{
- sview = new AppJmol(ap, pdbsForFile, theSeqs);
+ sview = new AppJmol(ap, superposeAdded, pdbsForFile, theSeqs);
}
else if (viewerType.equals(ViewerType.CHIMERA))
{
- sview = new ChimeraViewFrame(pdbsForFile, theSeqs, ap);
+ sview = new ChimeraViewFrame(pdbsForFile, superposeAdded, theSeqs,
+ ap);
}
else
{
{
if (sview != null)
{
- if (!sview.addAlreadyLoadedFile(seqsForPdb, null, ap, pdb.getId()))
+ sview.setAlignAddedStructures(superposeAdded);
+ String pdbId = pdb.getId();
+ if (!sview.addAlreadyLoadedFile(seqsForPdb, null, ap, pdbId))
{
- sview.addToExistingViewer(pdb, seqsForPdb, null, ap, pdb.getId());
+ sview.addToExistingViewer(pdb, seqsForPdb, null, ap, pdbId);
}
sview.updateTitleAndMenus();
+ sview.raiseViewer();
return sview;
}
ViewerType viewerType = getViewerType();
return sview != null && sview.isVisible();
}
+ public void setSuperpose(boolean alignAddedStructures)
+ {
+ superposeAdded = alignAddedStructures;
+ }
+
}