import jalview.gui.StructureViewer.ViewerType;
import jalview.io.DataSourceType;
import jalview.io.FileFormats;
+import jalview.io.FileLoader;
import jalview.schemes.JalviewColourScheme;
import jalview.structure.AtomSpec;
import jalview.structure.AtomSpecModel;
import jalview.structure.StructureCommandI;
+import jalview.structure.StructureCommandsI.AtomSpecType;
import jalview.structure.StructureMapping;
import jalview.structure.StructureSelectionManager;
import junit.extensions.PA;
ssm.setMapping(new SequenceI[] { seq3 }, null, PDB_3,
DataSourceType.PASTE, null);
- testee = newBindingModel(pdbFiles, seqs, ssm);
+ testee = newBindingModel(pdbFiles, seqs, ssm, null);
}
/**
* @param pdbFiles
* @param seqs
* @param ssm
+ * @param alignPanel
*/
protected AAStructureBindingModel newBindingModel(PDBEntry[] pdbFiles,
SequenceI[][] seqs,
- StructureSelectionManager ssm)
+ StructureSelectionManager ssm, AlignmentViewPanel avp)
{
AAStructureBindingModel model = new AAStructureBindingModel(ssm,
pdbFiles, seqs, null)
@Override
public String[] getStructureFiles()
{
- return new String[] { "INLINE1YCS", "INLINE3A6S", "INLINE1OOT" };
+ String[] files = new String[getPdbCount()];
+ for (int i = 0; i < this.getPdbCount(); i++)
+ {
+ files[i] = getPdbEntry(i).getFile();
+ }
+ return files;
}
@Override
@Override
public SequenceRenderer getSequenceRenderer(
- AlignmentViewPanel alignment)
+ AlignmentViewPanel avp)
{
- return null;
+ return avp == null ? null
+ : new jalview.gui.SequenceRenderer(
+ avp.getAlignViewport());
}
@Override
* load these sequences, coloured by Strand propensity,
* with columns 2-4 hidden
*/
- SequenceI seq1 = new Sequence("seq1", "MHRSQSSSGG");
- SequenceI seq2 = new Sequence("seq2", "MVRSNGGSSS");
- AlignmentI al = new Alignment(new SequenceI[] { seq1, seq2 });
- AlignFrame af = new AlignFrame(al, 800, 500);
+ String fasta = ">seq1\nMHRSQSSSGG\n>seq2\nMVRSNGGSSS";
+ AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(fasta,
+ DataSourceType.PASTE);
+ AlignmentI al = af.getViewport().getAlignment();
af.changeColour_actionPerformed(JalviewColourScheme.Strand.toString());
ColumnSelection cs = new ColumnSelection();
cs.addElement(2);
cs.addElement(4);
af.getViewport().setColumnSelection(cs);
af.hideSelColumns_actionPerformed(null);
- SequenceRenderer sr = new jalview.gui.SequenceRenderer(
- af.getViewport());
+ SequenceI seq1 = al.getSequenceAt(0);
+ SequenceI seq2 = al.getSequenceAt(1);
SequenceI[][] seqs = new SequenceI[][] { { seq1 }, { seq2 } };
- String[] files = new String[] { "seq1.pdb", "seq2.pdb" };
PDBEntry[] pdbFiles = new PDBEntry[2];
pdbFiles[0] = new PDBEntry("PDB1", "A", Type.PDB, "seq1.pdb");
pdbFiles[1] = new PDBEntry("PDB2", "B", Type.PDB, "seq2.pdb");
"B", map, null);
ssm.addStructureMapping(sm2);
- AAStructureBindingModel binding = newBindingModel(pdbFiles, seqs, ssm);
+ AAStructureBindingModel binding = newBindingModel(pdbFiles, seqs, ssm,
+ af.alignPanel);
/*
* method under test builds a map of structures residues by colour
* verify the map holds what it should
*/
- Map<Object, AtomSpecModel> colours = binding.buildColoursMap(ssm, files,
- seqs, sr, af.alignPanel);
+ Map<Object, AtomSpecModel> colours = binding.buildColoursMap(ssm, seqs,
+ af.alignPanel);
ChimeraCommands helper = new ChimeraCommands();
/*
Color mColor = new Color(0x82827d);
AtomSpecModel atomSpec = colours.get(mColor);
assertNotNull(atomSpec);
- assertEquals(helper.getAtomSpec(atomSpec, false), "#0:21.A|#1:21.B");
+ assertEquals(helper.getAtomSpec(atomSpec, AtomSpecType.RESIDUE_ONLY), "#0:21.A|#1:21.B");
/*
* H colour is #60609f, seq1.2 mapped to structure 0 residue 22
Color hColor = new Color(0x60609f);
atomSpec = colours.get(hColor);
assertNotNull(atomSpec);
- assertEquals(helper.getAtomSpec(atomSpec, false), "#0:22.A");
+ assertEquals(helper.getAtomSpec(atomSpec, AtomSpecType.RESIDUE_ONLY), "#0:22.A");
/*
* V colour is #ffff00, seq2.2 mapped to structure 1 residue 22
Color vColor = new Color(0xffff00);
atomSpec = colours.get(vColor);
assertNotNull(atomSpec);
- assertEquals(helper.getAtomSpec(atomSpec, false), "#1:22.B");
+ assertEquals(helper.getAtomSpec(atomSpec, AtomSpecType.RESIDUE_ONLY), "#1:22.B");
/*
* hidden columns are Gray (128, 128, 128)
Color gray = new Color(128, 128, 128);
atomSpec = colours.get(gray);
assertNotNull(atomSpec);
- assertEquals(helper.getAtomSpec(atomSpec, false), "#0:23-25.A|#1:23-25.B");
+ assertEquals(helper.getAtomSpec(atomSpec, AtomSpecType.RESIDUE_ONLY), "#0:23-25.A|#1:23-25.B");
/*
* S and G are both coloured #4949b6, structure residues 26-30
Color sgColour = new Color(0x4949b6);
atomSpec = colours.get(sgColour);
assertNotNull(atomSpec);
- assertEquals(helper.getAtomSpec(atomSpec, false),
+ assertEquals(helper.getAtomSpec(atomSpec, AtomSpecType.RESIDUE_ONLY),
"#0:26-30.A|#1:26-30.B");
}
}
\ No newline at end of file