{
StructureSelectionManager.getStructureSelectionManager()
.setMapping(seq, alreadyMapped, AppletFormatAdapter.FILE);
- ap.seqPanel.seqCanvas.fr.featuresAdded();
- ap.paintAlignment(true);
+ if (ap.seqPanel.seqCanvas.fr!=null) {
+ ap.seqPanel.seqCanvas.fr.featuresAdded();
+ ap.paintAlignment(true);
+ }
return;
}
}
jmolpopup = JmolPopup.newJmolPopup(viewer);
viewer.evalStringQuiet(command);
+
+ colourBySequence = true;
}
//End StructureListener
////////////////////////////
- FeatureRenderer fr;
+ FeatureRenderer fr=null;
public void colourBySequence(AlignmentPanel ap)
{
if(!colourBySequence)
SequenceRenderer sr = ap.seqPanel.seqCanvas.getSequenceRenderer();
boolean showFeatures = false;
+
if (ap.av.showSequenceFeatures)
{
showFeatures = true;
if (fr == null)
{
- fr = new jalview.gui.FeatureRenderer(ap.av);
+ fr = new jalview.gui.FeatureRenderer(ap);
}
fr.transferSettings(ap.seqPanel.seqCanvas.getFeatureRenderer());
{
for (int m = 0; m < mapping.length; m++)
{
- if (mapping[m].getSequence() == sequence[s])
+ if (mapping[m].getSequence() == sequence[s]
+ && ap.av.alignment.findIndex(sequence[s])>-1)
{
for (int r = 0; r < sequence[s].getLength(); r++)
{
ssm = StructureSelectionManager.getStructureSelectionManager();
MCview.PDBfile pdbFile = ssm.setMapping(sequence, pdbentry.getFile(), AppletFormatAdapter.FILE);
ssm.addStructureViewerListener(this);
-
Vector chains = new Vector();
for(int i=0; i<pdbFile.chains.size(); i++)
{
colourBySequence(ap);
}
+ if (fr!=null)
+ fr.featuresAdded();
loadingFromArchive = false;
}
if (!atomsPicked.contains(picked))
{
+ if(chainId!=null)
viewer.evalString("select "+picked+";label %n %r:%c");
+ else
+ viewer.evalString("select "+picked+";label %n %r");
atomsPicked.addElement(picked);
}
else