X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FAlignmentAnnotation.java;h=1376b11a5e3f86174914907977c7d3b7c657a58d;hb=fca189f1ddefa155881dedeeb0f21c1cd0905e74;hp=2f5f2704b8842a15d824c2b00c1eb4a60a74172c;hpb=27e20b88d0c73ced06e9c20a6e0fa14e27fed179;p=jalview.git
diff --git a/src/jalview/datamodel/AlignmentAnnotation.java b/src/jalview/datamodel/AlignmentAnnotation.java
index 2f5f270..1376b11 100755
--- a/src/jalview/datamodel/AlignmentAnnotation.java
+++ b/src/jalview/datamodel/AlignmentAnnotation.java
@@ -1,23 +1,26 @@
/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
- * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Copyright (C) 2014 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.datamodel;
import jalview.analysis.Rna;
+import jalview.analysis.SecStrConsensus.SimpleBP;
+
import jalview.analysis.WUSSParseException;
import java.util.ArrayList;
@@ -55,6 +58,7 @@ public class AlignmentAnnotation
+ public ArrayList bps=null;
/**
* RNA secondary structure contact positions
*/
@@ -73,13 +77,15 @@ public class AlignmentAnnotation
*/
private void _updateRnaSecStr(CharSequence RNAannot)
{
- try
- {
- _rnasecstr = Rna.GetBasePairs(RNAannot);
- invalidrnastruc = -1;
- } catch (WUSSParseException px)
+ try {
+ _rnasecstr = Rna.GetBasePairs(RNAannot);
+ bps = Rna.GetModeleBP(RNAannot);
+ invalidrnastruc=-1;
+ }
+ catch (WUSSParseException px)
{
- invalidrnastruc = px.getProblemPos();
+ // DEBUG System.out.println(px);
+ invalidrnastruc=px.getProblemPos();
}
if (invalidrnastruc > -1)
{
@@ -197,7 +203,11 @@ public class AlignmentAnnotation
return NO_GRAPH;
}
}
-
+ // JBPNote: what does this do ?
+ public void ConcenStru(CharSequence RNAannot) throws WUSSParseException
+ {
+ bps = Rna.GetModeleBP(RNAannot);
+ }
/**
* Creates a new AlignmentAnnotation object.
*
@@ -254,10 +264,10 @@ public class AlignmentAnnotation
|| annotations[i].secondaryStructure == 'B'
|| annotations[i].secondaryStructure == 'C'
|| annotations[i].secondaryStructure == 'D'
- || annotations[i].secondaryStructure == '1'
+ || annotations[i].secondaryStructure == 'E'
|| annotations[i].secondaryStructure == 'F'
|| annotations[i].secondaryStructure == 'G'
- || annotations[i].secondaryStructure == '2'
+ || annotations[i].secondaryStructure == 'H'
|| annotations[i].secondaryStructure == 'I'
|| annotations[i].secondaryStructure == 'J'
|| annotations[i].secondaryStructure == 'K'
@@ -306,8 +316,8 @@ public class AlignmentAnnotation
// &&
// annotations[i].displayCharacter.charAt(0)==annotations[i].secondaryStructure
firstChar != ' '
- && firstChar != 'H'
- && firstChar != 'E'
+ && firstChar != '$'
+ && firstChar != 'ยต' // JBPNote should explicitly express as unicode number to avoid source code translation problems
&& firstChar != '('
&& firstChar != '['
&& firstChar != '>'
@@ -316,10 +326,10 @@ public class AlignmentAnnotation
&& firstChar != 'B'
&& firstChar != 'C'
&& firstChar != 'D'
- && firstChar != '1'
+ && firstChar != 'E'
&& firstChar != 'F'
&& firstChar != 'G'
- && firstChar != '2'
+ && firstChar != 'H'
&& firstChar != 'I'
&& firstChar != 'J'
&& firstChar != 'K'
@@ -516,7 +526,7 @@ public class AlignmentAnnotation
float min = graphMin;
float max = graphMax;
boolean drawValues = true;
- _linecolour=null;
+ _linecolour = null;
if (min == max)
{
min = 999999999;
@@ -621,7 +631,14 @@ public class AlignmentAnnotation
this.annotations = new Annotation[ann.length];
for (int i = 0; i < ann.length; i++)
{
- annotations[i] = new Annotation(ann[i]);
+ if (ann[i] != null)
+ {
+ annotations[i] = new Annotation(ann[i]);
+ if (_linecolour != null)
+ {
+ _linecolour = annotations[i].colour;
+ }
+ }
}
;
if (annotation.sequenceRef != null)