+ if (hiddenColumns != null && hiddenColumns.size() > 0)\r
+ {\r
+ Vector visiblecontigs = new Vector();\r
+ Vector regions = getHiddenColumns();\r
+\r
+ int vstart = start;\r
+ int[] region;\r
+ int hideStart, hideEnd;\r
+\r
+ for (int j = 0; vstart < end && j < regions.size(); j++)\r
+ {\r
+ region = (int[]) regions.elementAt(j);\r
+ hideStart = region[0];\r
+ hideEnd = region[1];\r
+\r
+ if (hideEnd < vstart)\r
+ {\r
+ continue;\r
+ }\r
+ if (hideStart > vstart)\r
+ {\r
+ visiblecontigs.addElement(new int[]\r
+ {vstart, hideStart - 1});\r
+ }\r
+ vstart = hideEnd + 1;\r
+ }\r
+\r
+ if (vstart < end)\r
+ {\r
+ visiblecontigs.addElement(new int[]\r
+ {vstart, end - 1});\r
+ }\r
+ int[] vcontigs = new int[visiblecontigs.size() * 2];\r
+ for (int i = 0, j = visiblecontigs.size(); i < j; i++)\r
+ {\r
+ int[] vc = (int[]) visiblecontigs.elementAt(i);\r
+ visiblecontigs.setElementAt(null, i);\r
+ vcontigs[i * 2] = vc[0];\r
+ vcontigs[i * 2 + 1] = vc[1];\r
+ }\r
+ visiblecontigs.removeAllElements();\r
+ return vcontigs;\r
+ }\r
+ else\r
+ {\r
+ return new int[]\r
+ {\r
+ start, end - 1};\r
+ }\r