X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FColumnSelection.java;h=546ba1a7dbe4443e0e40da5929f4d07585b6dea5;hb=153dd62dc91da13ae732600e6ea55ddbe15eab39;hp=4371994e0d3593a5594b07d2bd89e86895aee9a9;hpb=d423f22792e47dbc800ae220a58677f988971d06;p=jalview.git diff --git a/src/jalview/datamodel/ColumnSelection.java b/src/jalview/datamodel/ColumnSelection.java index 4371994..546ba1a 100644 --- a/src/jalview/datamodel/ColumnSelection.java +++ b/src/jalview/datamodel/ColumnSelection.java @@ -1,5 +1,5 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle * * This file is part of Jalview. @@ -508,8 +508,8 @@ public class ColumnSelection } /** - * Use this method to find out where a visible column is in the alignment when - * hidden columns exist + * Use this method to find out where a column will appear in the visible alignment when + * hidden columns exist. If the column is not visible, then the left-most visible column will always be returned. * * @param hiddenColumn * int @@ -521,21 +521,21 @@ public class ColumnSelection if (hiddenColumns != null) { int index = 0; - int gaps = 0; + int[] region; do { - int[] region = (int[]) hiddenColumns.elementAt(index); + region = (int[]) hiddenColumns.elementAt(index++); if (hiddenColumn > region[1]) { result -= region[1] + 1 - region[0]; } - index++; - } while (index < hiddenColumns.size()); - - result -= gaps; + } while ((hiddenColumn > region[1]) && (index < hiddenColumns.size())); + if (hiddenColumn>region[0] && hiddenColumn