X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fanalysis%2FAlignmentSorter.java;h=778142c24fed58fc045634860caf4029f5be35ee;hb=3d9d1f6c1c1da3b2657f9ebb95430d0bc8dde873;hp=20101dc908c91448b86c396dc648548c6024b45c;hpb=efc31b4a8d5cee63555586804a2b79c06bdb5a14;p=jalview.git diff --git a/src/jalview/analysis/AlignmentSorter.java b/src/jalview/analysis/AlignmentSorter.java index 20101dc..778142c 100755 --- a/src/jalview/analysis/AlignmentSorter.java +++ b/src/jalview/analysis/AlignmentSorter.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer -* Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle +* Copyright (C) 2006 AM Waterhouse, J Procter, 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 @@ -52,7 +52,8 @@ public class AlignmentSorter for (int i = 0; i < nSeq; i++) { - scores[i] = Comparison.PID(align.getSequenceAt(i), s); + scores[i] = Comparison.PID(align.getSequenceAt(i).getSequenceAsString(), + s.getSequenceAsString()); seqs[i] = align.getSequenceAt(i); } @@ -108,15 +109,28 @@ public class AlignmentSorter * @param align DOCUMENT ME! * @param seqs sequences as an array */ - private static void setOrder(AlignmentI align, SequenceI[] seqs) + public static void setOrder(AlignmentI align, SequenceI[] seqs) { // NOTE: DO NOT USE align.setSequenceAt() here - it will NOT work Vector algn = align.getSequences(); + Vector tmp = new Vector(); for (int i = 0; i < seqs.length; i++) { - algn.setElementAt(seqs[i], i); + if(algn.contains(seqs[i])) + tmp.addElement(seqs[i]); + } + + algn.removeAllElements(); + //User may have hidden seqs, then clicked undo or redo + for (int i = 0; i < tmp.size(); i++) + { + algn.addElement(tmp.elementAt(i)); } + + + + } /**