X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FSequence.java;h=5ae7195f09b0e7ea75a30f7636a743bda9639919;hb=0fbfbe484308a0a6d9663f69f287cc61cfba958a;hp=d62be1776d0a7ec3e285c926db7e65b4bd59fd19;hpb=0eda79421bb03c19e3b74c4b83b1644ca12ea66c;p=jalview.git diff --git a/src/jalview/datamodel/Sequence.java b/src/jalview/datamodel/Sequence.java index d62be17..5ae7195 100755 --- a/src/jalview/datamodel/Sequence.java +++ b/src/jalview/datamodel/Sequence.java @@ -1625,6 +1625,13 @@ public class Sequence extends ASequence implements SequenceI _aa.adjustForAlignment(); // uses annotation's own record of // sequence-column mapping datasetSequence.addAlignmentAnnotation(_aa); + + // transfer contact matrices + ContactMatrixI cm = getContactMatrixFor(aa); + if (cm != null) + { + datasetSequence.addContactListFor(_aa, cm); + } } } } @@ -2111,7 +2118,7 @@ public class Sequence extends ASequence implements SequenceI //// //// Contact Matrix Holder Boilerplate //// - ContactMapHolder cmholder = new ContactMapHolder(); + ContactMapHolderI cmholder = new ContactMapHolder(); @Override public Collection getContactMaps() @@ -2120,6 +2127,12 @@ public class Sequence extends ASequence implements SequenceI } @Override + public ContactMatrixI getContactMatrixFor(AlignmentAnnotation ann) + { + return cmholder.getContactMatrixFor(ann); + } + + @Override public ContactListI getContactListFor(AlignmentAnnotation _aa, int column) { return cmholder.getContactListFor(_aa, column); @@ -2137,8 +2150,16 @@ public class Sequence extends ASequence implements SequenceI ; } aa.annotations = _aa; + aa.setSequenceRef(this); + aa.createSequenceMapping(this, getStart(), false); addAlignmentAnnotation(aa); return aa; } + @Override + public void addContactListFor(AlignmentAnnotation annotation, + ContactMatrixI cm) + { + cmholder.addContactListFor(annotation, cm); + } }