JAL-1925 update source version in license
[jalview.git] / src / jalview / gui / TreeCanvas.java
index 1bce84b..8fdb7ca 100755 (executable)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b2)
+ * Copyright (C) 2015 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
@@ -294,8 +294,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
       SequenceGroup selected = av.getSelectionGroup();
 
       if ((selected != null)
-              && selected.getSequences(null).contains(
-                      node.element()))
+              && selected.getSequences(null).contains(node.element()))
       {
         g.setColor(Color.gray);
 
@@ -547,6 +546,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
   }
 
   // put printing in a thread to avoid painting problems
+  @Override
   public void run()
   {
     PrinterJob printJob = PrinterJob.getPrinterJob();
@@ -581,6 +581,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @throws PrinterException
    *           DOCUMENT ME!
    */
+  @Override
   public int print(Graphics pg, PageFormat pf, int pi)
           throws PrinterException
   {
@@ -635,6 +636,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param g
    *          DOCUMENT ME!
    */
+  @Override
   public void paintComponent(Graphics g)
   {
     super.paintComponent(g);
@@ -678,6 +680,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param fontSize
    *          DOCUMENT ME!
    */
+  @Override
   public void setFont(Font font)
   {
     this.font = font;
@@ -713,8 +716,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
 
     labelLength = fm.stringWidth(longestName) + 20; // 20 allows for scrollbar
 
-    float wscale = (width - labelLength - (offx * 2))
-            / tree.getMaxHeight();
+    float wscale = (width - labelLength - (offx * 2)) / tree.getMaxHeight();
 
     SequenceNode top = tree.getTopNode();
 
@@ -751,6 +753,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseReleased(MouseEvent e)
   {
   }
@@ -761,6 +764,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseEntered(MouseEvent e)
   {
   }
@@ -771,6 +775,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseExited(MouseEvent e)
   {
   }
@@ -781,6 +786,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   public void mouseClicked(MouseEvent evt)
   {
     if (highlightNode != null)
@@ -788,7 +794,8 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
       if (SwingUtilities.isRightMouseButton(evt))
       {
         Color col = JColorChooser.showDialog(this,
-                MessageManager.getString("label.select_subtree_colour"), highlightNode.color);
+                MessageManager.getString("label.select_subtree_colour"),
+                highlightNode.color);
         if (col != null)
         {
           setColor(highlightNode, col);
@@ -819,6 +826,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
     }
   }
 
+  @Override
   public void mouseMoved(MouseEvent evt)
   {
     av.setCurrentTree(tree);
@@ -844,6 +852,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
     }
   }
 
+  @Override
   public void mouseDragged(MouseEvent ect)
   {
   }
@@ -854,6 +863,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   public void mousePressed(MouseEvent e)
   {
     av.setCurrentTree(tree);
@@ -892,12 +902,13 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
           aps[a].av.setSelectionGroup(null);
           aps[a].av.getAlignment().deleteAllGroups();
           aps[a].av.clearSequenceColours();
-        }
-        if (av.getCodingComplement() != null)
-        {
-          av.getCodingComplement().setSelectionGroup(null);
-          av.getCodingComplement().getAlignment().deleteAllGroups();
-          av.getCodingComplement().clearSequenceColours();
+          if (aps[a].av.getCodingComplement() != null)
+          {
+            aps[a].av.getCodingComplement().setSelectionGroup(null);
+            aps[a].av.getCodingComplement().getAlignment()
+                    .deleteAllGroups();
+            aps[a].av.getCodingComplement().clearSequenceColours();
+          }
         }
         colourGroups();
       }
@@ -978,41 +989,45 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
         }
 
         aps[a].av.getAlignment().addGroup(new SequenceGroup(sg));
-      }
-
-      // TODO can we push all of the below into AlignViewportI?
-      av.getAlignment().addGroup(sg);
-      final AlignViewportI codingComplement = av.getCodingComplement();
-      if (codingComplement != null)
-      {
-        SequenceGroup mappedGroup = MappingUtils.mapSequenceGroup(sg, av,
-                codingComplement);
-        if (mappedGroup.getSequences().size() > 0)
+        // TODO can we push all of the below into AlignViewportI?
+        final AlignViewportI codingComplement = aps[a].av
+                .getCodingComplement();
+        if (codingComplement != null)
         {
-          codingComplement.getAlignment().addGroup(mappedGroup);
-          for (SequenceI seq : mappedGroup.getSequences())
+          if (codingComplement != null)
           {
-            codingComplement.setSequenceColour(seq, col.brighter());
+            SequenceGroup mappedGroup = MappingUtils.mapSequenceGroup(sg,
+                    av, codingComplement);
+            if (mappedGroup.getSequences().size() > 0)
+            {
+              codingComplement.getAlignment().addGroup(mappedGroup);
+              for (SequenceI seq : mappedGroup.getSequences())
+              {
+                codingComplement.setSequenceColour(seq, col.brighter());
+              }
+            }
           }
         }
       }
     }
 
-    // notify the panel to redo any group specific stuff.
+    // notify the panel(s) to redo any group specific stuff.
     for (int a = 0; a < aps.length; a++)
     {
       aps[a].updateAnnotation();
       // TODO: JAL-868 - need to ensure view colour change message is broadcast
       // to any Jmols listening in
-    }
+      final AlignViewportI codingComplement = aps[a].av
+              .getCodingComplement();
+      if (codingComplement != null)
+      {
+        ((AlignViewport) codingComplement).getAlignPanel()
+                .updateAnnotation();
+
+      }
 
-    if (av.getCodingComplement() != null)
-    {
-      ((AlignViewport) av.getCodingComplement()).getAlignPanel().updateAnnotation();
-      /*
-       * idPanel. repaint ()
-       */
     }
+
   }
 
   /**
@@ -1059,8 +1074,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
     }
     else
     {
-      return new AlignmentPanel[]
-      { ap };
+      return new AlignmentPanel[] { ap };
     }
   }
 }