}
/**
+ * Import structure data and register a structure mapping for broadcasting
+ * colouring, mouseovers and selection events (convenience wrapper).
+ *
+ * @param sequence
+ * - one or more sequences to be mapped to pdbFile
+ * @param targetChains
+ * - optional chain specification for mapping each sequence to pdb
+ * (may be nill, individual elements may be nill)
+ * @param pdbFile
+ * - structure data resource
+ * @param protocol
+ * - how to resolve data from resource
+ * @return null or the structure data parsed as a pdb file
+ */
+ synchronized public MCview.PDBfile setMapping(SequenceI[] sequence,
+ String[] targetChains, String pdbFile, String protocol)
+ {
+ return setMapping(true, sequence, targetChains, pdbFile, protocol);
+ }
+
+ /**
* create sequence structure mappings between each sequence and the given
* pdbFile (retrieved via the given protocol).
*
+ * @param forStructureView
+ * when true, record the mapping for use in mouseOvers
+ *
* @param sequence
* - one or more sequences to be mapped to pdbFile
* @param targetChains
* - how to resolve data from resource
* @return null or the structure data parsed as a pdb file
*/
- synchronized public MCview.PDBfile setMapping(SequenceI[] sequence,
+ synchronized public MCview.PDBfile setMapping(boolean forStructureView,
+ SequenceI[] sequence,
String[] targetChains, String pdbFile, String protocol)
{
/*
index++;
} while (index < maxChain.atoms.size());
- if (mappings == null)
- {
- mappings = new StructureMapping[1];
- }
- else
- {
- StructureMapping[] tmp = new StructureMapping[mappings.length + 1];
- System.arraycopy(mappings, 0, tmp, 0, mappings.length);
- mappings = tmp;
- }
-
if (protocol.equals(jalview.io.AppletFormatAdapter.PASTE))
{
pdbFile = "INLINE" + pdb.id;
}
-
- mappings[mappings.length - 1] = new StructureMapping(sequence[s],
+ StructureMapping newMapping = new StructureMapping(sequence[s],
pdbFile, pdb.id, maxChainId, mapping,
mappingDetails.toString());
- maxChain.transferResidueAnnotation(mappings[mappings.length - 1]);
+ if (forStructureView)
+ {
+
+ if (mappings == null)
+ {
+ mappings = new StructureMapping[1];
+ }
+ else
+ {
+ StructureMapping[] tmp = new StructureMapping[mappings.length + 1];
+ System.arraycopy(mappings, 0, tmp, 0, mappings.length);
+ mappings = tmp;
+ }
+
+ mappings[mappings.length - 1] = newMapping;
+ }
+ maxChain.transferResidueAnnotation(newMapping);
}
// ///////