isVisible and hiddenboundary added
authoramwaterhouse <Andrew Waterhouse>
Thu, 16 Mar 2006 15:29:55 +0000 (15:29 +0000)
committeramwaterhouse <Andrew Waterhouse>
Thu, 16 Mar 2006 15:29:55 +0000 (15:29 +0000)
src/jalview/gui/ColumnSelection.java

index c9e232a..26dba83 100755 (executable)
@@ -20,7 +20,6 @@ package jalview.gui;
 \r
 import java.util.*;\r
 \r
-\r
 /**\r
  * NOTE: Columns are zero based.\r
  */\r
@@ -262,6 +261,31 @@ public class ColumnSelection
       return result;\r
     }\r
 \r
+    /**\r
+     * THis method returns the rightmost limit of a\r
+     * region of an alignment with hidden columns.\r
+     * In otherwords, the next hidden column.\r
+     * @param index int\r
+     */\r
+    public int getHiddenRegionBoundary(int alPos)\r
+    {\r
+      if (hiddenColumns != null)\r
+      {\r
+        int index = 0;\r
+        do\r
+        {\r
+          int[] region = (int[]) hiddenColumns.elementAt(index);\r
+          if(alPos < region[0])\r
+            return region[0];\r
+\r
+          index++;\r
+        }\r
+        while(index < hiddenColumns.size());\r
+      }\r
+\r
+      return alPos;\r
+\r
+    }\r
 \r
 \r
     public void hideColumns(int res, AlignViewport av)\r
@@ -322,4 +346,17 @@ public class ColumnSelection
         av.hasHiddenColumns = false;\r
     }\r
 \r
+    public boolean isVisible(int column)\r
+    {\r
+      for(int i=0; i<hiddenColumns.size(); i++)\r
+      {\r
+        int [] region = (int[])hiddenColumns.elementAt(i);\r
+        if( column >= region[0] && column <= region[1])\r
+        {\r
+          return false;\r
+        }\r
+      }\r
+      return true;\r
+    }\r
+\r
 }\r