formatting
[jalview.git] / src / jalview / gui / AppVarna.java
index 06de21f..ce5c7b0 100644 (file)
@@ -73,10 +73,10 @@ public class AppVarna extends JInternalFrame implements
 
   AlignmentPanel ap;
 
-  public AppVarna(SequenceI seq, String strucseq, String struc,
-          String name, AlignmentPanel ap)
+  public AppVarna(String sname, SequenceI seq, String strucseq,
+          String struc, String name, AlignmentPanel ap)
   {
-    this.ap=ap;
+    this.ap = ap;
     ArrayList<RNA> rnaList = new ArrayList<RNA>();
     RNA rna1 = new RNA(name);
     try
@@ -89,12 +89,12 @@ public class AppVarna extends JInternalFrame implements
     {
       e3.printStackTrace();
     }
-    RNA trim = trimRNA(rna1);
+    RNA trim = trimRNA(rna1, "trimmed " + sname);
     rnaList.add(trim);
     rnaList.add(rna1);
     rnas.put(seq, rna1);
     rnas.put(seq, trim);
-    rna1.setName("consensus_" + rna1.getName());
+    rna1.setName(sname + " (with gaps)");
 
     {
       seqs.put(trim, seq);
@@ -110,7 +110,7 @@ public class AppVarna extends JInternalFrame implements
     vab = new AppVarnaBinding(rnaList);
     // vab = new AppVarnaBinding(seq,struc);
     // System.out.println("Hallo: "+name);
-    this.name = name;
+    this.name = sname + " trimmed to " + name;
     initVarna();
     ssm = ap.getStructureSelectionManager();
     ssm.addStructureViewerListener(this);
@@ -145,10 +145,10 @@ public class AppVarna extends JInternalFrame implements
     return newStr;
   }
 
-  public RNA trimRNA(RNA rna)
+  public RNA trimRNA(RNA rna, String name)
   {
     ShiftList offset = new ShiftList();
-    RNA rnaTrim = new RNA("trim_" + rna.getName());
+    RNA rnaTrim = new RNA(name);
     try
     {
       rnaTrim.setRNA(rna.getSeq(), replaceOddGaps(rna.getStructDBN()));
@@ -190,7 +190,7 @@ public class AppVarna extends JInternalFrame implements
       {
         if (ofstart > -1)
         {
-          offset.addShift(ofstart, ofstart - i);
+          offset.addShift(offset.shift(ofstart), ofstart - i);
           ofstart = -1;
         }
       }
@@ -198,7 +198,7 @@ public class AppVarna extends JInternalFrame implements
     // final gap
     if (ofstart > -1)
     {
-      offset.addShift(ofstart, ofstart - sleng);
+      offset.addShift(offset.shift(ofstart), ofstart - sleng);
       ofstart = -1;
     }
     String newSeq = rnaTrim.getSeq().replace("-", "");
@@ -304,12 +304,13 @@ public class AppVarna extends JInternalFrame implements
       if (_lastRNAhighlighted != null)
       {
         _lastRNAhighlighted.removeHighlightRegion(_lastHighlight);
-        if (vab!=null) {
+        if (vab != null)
+        {
           vab.updateSelectedRNA(_lastRNAhighlighted);
         }
         _lastRNAhighlighted = null;
         _lastHighlight = null;
-        
+
       }
     }
   }
@@ -327,12 +328,14 @@ public class AppVarna extends JInternalFrame implements
   public void mouseOverSequence(SequenceI sequence, int index)
   {
     RNA rna = vab.getSelectedRNA();
-    if (rnas.get(sequence) == rna)
+    if (seqs.get(rna) == sequence)
     {
       ShiftList shift = offsets.get(rna);
       if (shift != null)
       {
+        // System.err.print("Orig pos:"+index);
         index = shift.shift(index);
+        // System.err.println("\nFinal pos:"+index);
       }
       mouseOverHighlighter.highlightRegion(rna, index, index);
       vab.updateSelectedRNA(rna);
@@ -388,9 +391,9 @@ public class AppVarna extends JInternalFrame implements
     {
       if (shift != null)
       {
-        int i=shift.shift(arg1.getIndex());
-        ssm.mouseOverVamsasSequence(seq,
-                i, this);
+        int i = shift.shift(arg1.getIndex());
+        // System.err.println("shifted "+(arg1.getIndex())+" to "+i);
+        ssm.mouseOverVamsasSequence(seq, i, this);
       }
       else
       {
@@ -402,8 +405,9 @@ public class AppVarna extends JInternalFrame implements
   @Override
   public void onSelectionChanged(BaseList arg0, BaseList arg1, BaseList arg2)
   {
-    // TODO translate selected regions in VARNA to a selection on the alignpanel.
-    
+    // TODO translate selected regions in VARNA to a selection on the
+    // alignpanel.
+
   }
 
 }