X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FAlignment.java;h=5ad8be174a72419900d92d864eb6737368059658;hb=refs%2Fheads%2Ffeature%2FJAL-3251biotypedMappings;hp=93ad332d24f13d9babd3c7d253a151c745d971d1;hpb=ad8b755b7d5daaa914a61fc4ca476196551b2f0a;p=jalview.git diff --git a/src/jalview/datamodel/Alignment.java b/src/jalview/datamodel/Alignment.java index 93ad332..5ad8be1 100755 --- a/src/jalview/datamodel/Alignment.java +++ b/src/jalview/datamodel/Alignment.java @@ -21,7 +21,6 @@ package jalview.datamodel; import jalview.analysis.AlignmentUtils; -import jalview.datamodel.AlignedCodonFrame.SequenceToSequenceMapping; import jalview.io.FastaFile; import jalview.util.Comparison; import jalview.util.LinkedIdentityHashSet; @@ -47,7 +46,7 @@ import java.util.Vector; * @author JimP * */ -public class Alignment implements AlignmentI +public class Alignment implements AlignmentI, AutoCloseable { private Alignment dataset; @@ -302,15 +301,20 @@ public class Alignment implements AlignmentI } @Override - public void finalize() throws Throwable + public void close() { if (getDataset() != null) { - getDataset().removeAlignmentRef(); + try + { + getDataset().removeAlignmentRef(); + } catch (Throwable e) + { + e.printStackTrace(); + } } nullReferences(); - super.finalize(); } /** @@ -717,6 +721,17 @@ public class Alignment implements AlignmentI return maxLength; } + @Override + public int getVisibleWidth() + { + int w = getWidth(); + if (hiddenCols != null) + { + w -= hiddenCols.getSize(); + } + return w; + } + /** * DOCUMENT ME! * @@ -1130,7 +1145,7 @@ public class Alignment implements AlignmentI // verify all mappings are in dataset for (AlignedCodonFrame cf : codonFrameList) { - for (SequenceToSequenceMapping ssm : cf.getMappings()) + for (SequenceMapping ssm : cf.getMappings()) { if (!seqs.contains(ssm.getFromSeq())) { @@ -1893,9 +1908,12 @@ public class Alignment implements AlignmentI } @Override - public void setHiddenColumns(HiddenColumns cols) + public boolean setHiddenColumns(HiddenColumns cols) { + boolean changed = cols == null ? hiddenCols != null + : !cols.equals(hiddenCols); hiddenCols = cols; + return changed; } @Override