X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FColumnSelection.java;h=63a5700efb39182eaeab2e37140a5caa55a7a0e5;hb=bd248212fee44557d973432f42666780530db8ed;hp=afa2e07103b168f6a73756ecb62f44240c1aebdd;hpb=4bc692b7e0ccca12c362bcb6ee9b4c88f431bd22;p=jalview.git diff --git a/src/jalview/datamodel/ColumnSelection.java b/src/jalview/datamodel/ColumnSelection.java index afa2e07..63a5700 100644 --- a/src/jalview/datamodel/ColumnSelection.java +++ b/src/jalview/datamodel/ColumnSelection.java @@ -1,20 +1,19 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Development Version 2.4.1) - * Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5) + * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. + * This file is part of Jalview. * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Jalview. If not, see . */ package jalview.datamodel; @@ -509,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 @@ -522,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