/*\r
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)\r
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle\r
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)\r
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle\r
* \r
* This file is part of Jalview.\r
* \r
\r
import java.io.PrintStream;\r
import java.util.Enumeration;\r
+import java.util.List;\r
import java.util.Vector;\r
\r
/**\r
SequenceI[] selseqs;\r
if (selection != null)\r
{\r
- Vector sel = selection.getSequences(null);\r
+ List<SequenceI> sel = selection.getSequences(null);\r
this.selected = new Vector();\r
- selseqs = selection.getSequencesInOrder(alignment, false);\r
+ selseqs = selection.getSequencesInOrder(alignment, selectedRegionOnly);\r
}\r
else\r
{\r
\r
// get the alignment's group list and make a copy\r
Vector grps = new Vector();\r
- Vector gg = alignment.getGroups();\r
- Enumeration gge = gg.elements();\r
- while (gge.hasMoreElements())\r
- {\r
- grps.addElement(gge.nextElement());\r
- }\r
+ List<SequenceGroup> gg = alignment.getGroups();\r
+ grps.addAll(gg);\r
ScGroup[] sgrps = null;\r
boolean addedgps[] = null;\r
if (grps != null)\r
continue;\r
}\r
}\r
+\r
+ // clone group properties\r
+ nsg[g] = new SequenceGroup(sg);\r
+\r
// may need to shift/trim start and end ?\r
if (r && !viscontigs)\r
{\r
+ // Not fully tested code - routine not yet called with viscontigs==false\r
if (nsg[g].getStartRes() < gstart)\r
{\r
nsg[g].setStartRes(0);\r
nsg[g].setStartRes(nsg[g].getStartRes() - gstart);\r
nsg[g].setEndRes(nsg[g].getEndRes() - gstart);\r
}\r
- if (nsg[g].getEndRes() > gend)\r
+ if (nsg[g].getEndRes() > (gend-gstart))\r
{\r
- nsg[g].setEndRes(gend);\r
+ nsg[g].setEndRes(gend-gstart);\r
}\r
}\r
-\r
- // clone group properties\r
- nsg[g] = new SequenceGroup(sg);\r
}\r
if (viscontigs)\r
{\r
+ " wide and has " + visal.getHeight() + " seqs.");\r
if (visal.getGroups() != null && visal.getGroups().size() > 0)\r
{\r
- SequenceGroup sg;\r
- Enumeration en = visal.getGroups().elements();\r
+ \r
int i = 1;\r
- while (en.hasMoreElements())\r
+ for (SequenceGroup sg:visal.getGroups())\r
{\r
- sg = (SequenceGroup) en.nextElement();\r
os.println("Group " + (i++) + " begins at column "\r
+ sg.getStartRes() + " and ends at " + sg.getEndRes());\r
}\r