X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fjalview%2Fanalysis%2FAnnotationSorter.java;h=2f556f111221d495380873ad990e5422303f3b89;hb=a68ec64feb1f063a5932edee3cf8f0a20b988ab4;hp=0873f89dce2d6deb59b7d71fdd9e22e74ced2a97;hpb=6b106f39c410cbb2b1714b905948d68b91a341dd;p=jalview.git
diff --git a/src/jalview/analysis/AnnotationSorter.java b/src/jalview/analysis/AnnotationSorter.java
index 0873f89..2f556f1 100644
--- a/src/jalview/analysis/AnnotationSorter.java
+++ b/src/jalview/analysis/AnnotationSorter.java
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ *
+ * This file is part of Jalview.
+ *
+ * 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.
+ *
+ * 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 .
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
package jalview.analysis;
import jalview.datamodel.AlignmentAnnotation;
@@ -30,8 +50,8 @@ public class AnnotationSorter
public enum SequenceAnnotationOrder
{
// Text descriptions surface in the Preferences Sort by... options
- SEQUENCE_AND_LABEL("Sequence"), LABEL_AND_SEQUENCE("Label"), NONE(
- "No sort");
+ SEQUENCE_AND_LABEL("Sequence"), LABEL_AND_SEQUENCE("Label"),
+ NONE("No sort");
private String description;
@@ -46,7 +66,8 @@ public class AnnotationSorter
return description;
}
- public static SequenceAnnotationOrder forDescription(String d) {
+ public static SequenceAnnotationOrder forDescription(String d)
+ {
for (SequenceAnnotationOrder order : values())
{
if (order.toString().equals(d))
@@ -87,7 +108,8 @@ public class AnnotationSorter
*
* - annotations with a reference to a sequence in the alignment are sorted
* on sequence ordering
- * - other annotations go 'at the end', with their mutual order unchanged
+ * - other annotations go 'at the end', with their mutual order
+ * unchanged
* - within the same sequence ref, sort by label (non-case-sensitive)
*
*/
@@ -148,7 +170,8 @@ public class AnnotationSorter
*
* - annotations with a reference to a sequence in the alignment are sorted
* on label (non-case-sensitive)
- * - other annotations go 'at the end', with their mutual order unchanged
+ * - other annotations go 'at the end', with their mutual order
+ * unchanged
* - within the same label, sort by order of the related sequences
*
*/
@@ -257,7 +280,8 @@ public class AnnotationSorter
// cache 'alignment sequence position' for the annotations
saveSequenceIndices(alignmentAnnotations);
- Comparator super AlignmentAnnotation> comparator = getComparator(order);
+ Comparator super AlignmentAnnotation> comparator = getComparator(
+ order);
if (alignmentAnnotations != null)
{
@@ -279,9 +303,11 @@ public class AnnotationSorter
AlignmentAnnotation[] alignmentAnnotations)
{
sequenceIndices.clear();
- for (AlignmentAnnotation ann : alignmentAnnotations) {
+ for (AlignmentAnnotation ann : alignmentAnnotations)
+ {
SequenceI seq = ann.sequenceRef;
- if (seq != null) {
+ if (seq != null)
+ {
int index = AlignmentUtils.getSequenceIndex(alignment, seq);
sequenceIndices.put(seq, index);
}