JAL-892 tidy Varna panel names; JAL-1789 simplified mouseover
[jalview.git] / src / jalview / gui / AppVarnaBinding.java
index 3ea8e4d..956c2e1 100644 (file)
@@ -24,7 +24,6 @@ import java.awt.BorderLayout;
 import java.awt.Color;
 import java.awt.Component;
 import java.awt.Dimension;
-import java.awt.Font;
 import java.awt.datatransfer.DataFlavor;
 import java.awt.datatransfer.Transferable;
 import java.awt.dnd.DnDConstants;
@@ -54,6 +53,7 @@ import javax.swing.event.ListSelectionListener;
 import fr.orsay.lri.varna.VARNAPanel;
 import fr.orsay.lri.varna.components.ReorderableJList;
 import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed;
+import fr.orsay.lri.varna.exceptions.ExceptionNAViewAlgorithm;
 import fr.orsay.lri.varna.exceptions.ExceptionNonEqualLength;
 import fr.orsay.lri.varna.models.FullBackup;
 import fr.orsay.lri.varna.models.VARNAConfig;
@@ -165,9 +165,9 @@ public class AppVarnaBinding extends JalviewVarnaBinding
 
     vp.setBackground(_backgroundColor);
 
-    Font textFieldsFont = Font.decode("MonoSpaced-PLAIN-12");
-
     // MC commented out stuff not added to panel - remove?
+    // Font textFieldsFont = Font.decode("MonoSpaced-PLAIN-12");
+    //
     // _seq.setFont(textFieldsFont);
     // if (!rnaList.isEmpty())
     // {
@@ -531,12 +531,9 @@ public class AppVarnaBinding extends JalviewVarnaBinding
     }
 
     /*
-     * switch display if not already shown
+     * switch display
      */
-    if (sel.rna != rna)
-    {
-      vp.showRNA(model.rna, model.config);
-    }
+    vp.showRNA(model.rna, model.config);
 
     try
     {
@@ -547,12 +544,9 @@ public class AppVarnaBinding extends JalviewVarnaBinding
       vp.toXML(filePath);
 
       /*
-       * restore the previous display if needed
+       * restore the previous display
        */
-      if (sel.rna != rna)
-      {
-        vp.showRNA(sel.rna, sel.config);
-      }
+      vp.showRNA(sel.rna, sel.config);
       
       return filePath;
     } catch (IOException e)
@@ -596,7 +590,7 @@ public class AppVarnaBinding extends JalviewVarnaBinding
    * 
    * @param selectedRna
    */
-  public void setSelectedIndex(int selectedRna)
+  public void setSelectedIndex(final int selectedRna)
   {
     /*
      * note this does nothing if, say, selecting item 3 when only 1 has been
@@ -604,7 +598,6 @@ public class AppVarnaBinding extends JalviewVarnaBinding
      */
     _sideList.setSelectedIndex(selectedRna);
     // TODO ? need a worker thread to get this to happen properly
-    showSelectedStructure();
   }
 
   /**
@@ -622,9 +615,25 @@ public class AppVarnaBinding extends JalviewVarnaBinding
    * @param rna
    * @param config
    */
-  protected void addStructure(RNA rna, VARNAConfig config)
+  protected void addStructure(final RNA rna, final VARNAConfig config)
   {
-    rna.drawRNARadiate(config);
+    drawRna(rna, config);
     _rnaList.add(config, rna, rna.getName());
   }
+
+  /**
+   * @param rna
+   * @param config
+   */
+  protected void drawRna(final RNA rna, final VARNAConfig config)
+  {
+    try
+    {
+      rna.drawRNA(rna.getDrawMode(), config);
+    } catch (ExceptionNAViewAlgorithm e)
+    {
+      // only throwable for draw mode = 3 NAView
+      System.err.println("Error drawing RNA: " + e.getMessage());
+    }
+  }
 }