X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FHiddenColumns.java;h=f0d99e5ab6cc0970998dab4c23829dc4b752710d;hb=refs%2Fheads%2Fbug%2FJAL-2386groupConservationColouring;hp=3685ab0ededfb7c249f412b1bdce9e7d67cf99f0;hpb=6531bb7bf6ec98d23eb2143136482f87566c74a7;p=jalview.git diff --git a/src/jalview/datamodel/HiddenColumns.java b/src/jalview/datamodel/HiddenColumns.java index 3685ab0..f0d99e5 100644 --- a/src/jalview/datamodel/HiddenColumns.java +++ b/src/jalview/datamodel/HiddenColumns.java @@ -4,6 +4,7 @@ import jalview.util.Comparison; import jalview.util.ShiftList; import java.util.ArrayList; +import java.util.BitSet; import java.util.Collections; import java.util.List; import java.util.Vector; @@ -1262,4 +1263,37 @@ public class HiddenColumns return hashCode; } + /** + * Hide columns corresponding to the marked bits + * + * @param inserts + * - columns map to bits starting from zero + */ + public void hideMarkedBits(BitSet inserts) + { + for (int firstSet = inserts.nextSetBit(0), lastSet = 0; firstSet >= 0; firstSet = inserts + .nextSetBit(lastSet)) + { + lastSet = inserts.nextClearBit(firstSet); + hideColumns(firstSet, lastSet - 1); + } + } + + /** + * + * @param inserts + * BitSet where hidden columns will be marked + */ + public void markHiddenRegions(BitSet inserts) + { + if (hiddenColumns == null) + { + return; + } + for (int[] range : hiddenColumns) + { + inserts.set(range[0], range[1] + 1); + } + } + }