import org.junit.BeforeClass;
import org.junit.Test;
+import jalview.api.structures.JalviewStructureDisplayI;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
import jalview.gui.AlignFrame;
}
+ @Test
+ public void testSingleSeqViewJMol()
+ {
+ String inFile = "examples/1gaq.txt";
+ AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+ inFile, FormatAdapter.FILE);
+ assertTrue("Didn't read input file " + inFile, af != null);
+ for (SequenceI sq : af.getViewport().getAlignment().getSequences())
+ {
+ SequenceI dsq = sq.getDatasetSequence();
+ while (dsq.getDatasetSequence() != null)
+ {
+ dsq = dsq.getDatasetSequence();
+ }
+ if (dsq.getPDBId() != null && dsq.getPDBId().size() > 0)
+ {
+ for (int q = 0; q < dsq.getPDBId().size(); q++)
+ {
+ final StructureViewer structureViewer = new StructureViewer(af
+ .getViewport().getStructureSelectionManager());
+
+ JalviewStructureDisplayI jmolViewer = structureViewer
+ .viewStructures(ViewerType.JMOL, af.getCurrentView()
+ .getAlignPanel(), new PDBEntry[]
+ { (PDBEntry) dsq.getPDBId().elementAt(q) },
+ new SequenceI[][]
+ { new SequenceI[]
+ { sq } });
+ /*
+ * Wait for viewer thread to start
+ */
+ try
+ {
+ Thread.sleep(1000);
+ } catch (InterruptedException e)
+ {
+ }
+
+ jmolViewer.closeViewer(true);
+ // todo: break here means only once through this loop?
+ break;
+ }
+ break;
+ }
+ }
+ }
@Test
- public void testSingleSeqView()
+ public void testSingleSeqViewChimera()
{
String inFile = "examples/1gaq.txt";
AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
inFile, FormatAdapter.FILE);
assertTrue("Didn't read input file " + inFile, af != null);
- for (SequenceI sq:af.getViewport().getAlignment().getSequences())
+ for (SequenceI sq : af.getViewport().getAlignment().getSequences())
{
- SequenceI dsq=sq.getDatasetSequence();
- while (dsq.getDatasetSequence()!=null)
+ SequenceI dsq = sq.getDatasetSequence();
+ while (dsq.getDatasetSequence() != null)
{
- dsq=dsq.getDatasetSequence();
+ dsq = dsq.getDatasetSequence();
}
- if (dsq.getPDBId()!=null && dsq.getPDBId().size()>0) {
- for (int q=0;q<dsq.getPDBId().size();q++)
+ if (dsq.getPDBId() != null && dsq.getPDBId().size() > 0)
+ {
+ for (int q = 0; q < dsq.getPDBId().size(); q++)
{
- new StructureViewer(af.getViewport()
- .getStructureSelectionManager()).viewStructures(
- ViewerType.JMOL,
- af.getCurrentView().getAlignPanel(),
- new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
- new SequenceI[][] { new SequenceI[] { sq } });
+ final StructureViewer structureViewer = new StructureViewer(af
+ .getViewport().getStructureSelectionManager());
- new StructureViewer(af.getViewport()
- .getStructureSelectionManager()).viewStructures(
- ViewerType.CHIMERA,
- af.getCurrentView().getAlignPanel(),
- new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
- new SequenceI[][] { new SequenceI[] { sq } });
+ JalviewStructureDisplayI chimeraViewer = structureViewer
+ .viewStructures(ViewerType.CHIMERA, af.getCurrentView()
+ .getAlignPanel(), new PDBEntry[]
+ { (PDBEntry) dsq.getPDBId().elementAt(q) },
+ new SequenceI[][]
+ { new SequenceI[]
+ { sq } });
+ /*
+ * Wait for viewer thread to start
+ */
+ try
+ {
+ Thread.sleep(1000);
+ } catch (InterruptedException e)
+ {
+ }
+ chimeraViewer.closeViewer(true);
// todo: break here means only once through this loop?
break;
}
break;
}
- }
- // try {
- // why?
-// Thread.sleep(200000);
-// } catch (InterruptedException q)
-// {
- // }
+ }
}
}