formatting
[jalview.git] / src / jalview / gui / SeqPanel.java
index 8d81f8c..9e99bae 100644 (file)
@@ -33,7 +33,7 @@ import jalview.structure.*;
 
 /**
  * DOCUMENT ME!
- *
+ * 
  * @author $author$
  * @version $Revision: 1.130 $
  */
@@ -88,7 +88,9 @@ public class SeqPanel extends JPanel implements MouseListener,
   StringBuffer keyboardNo2;
 
   java.net.URL linkImageURL;
+
   private final SequenceAnnotationReport seqARep;
+
   StringBuffer tooltipText = new StringBuffer("<html>");
 
   String tmpString;
@@ -99,7 +101,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * Creates a new SeqPanel object.
-   *
+   * 
    * @param avp
    *          DOCUMENT ME!
    * @param p
@@ -108,7 +110,7 @@ public class SeqPanel extends JPanel implements MouseListener,
   public SeqPanel(AlignViewport av, AlignmentPanel ap)
   {
     linkImageURL = getClass().getResource("/images/link.gif");
-    seqARep=new SequenceAnnotationReport(linkImageURL.toString());
+    seqARep = new SequenceAnnotationReport(linkImageURL.toString());
     ToolTipManager.sharedInstance().registerComponent(this);
     ToolTipManager.sharedInstance().setInitialDelay(0);
     ToolTipManager.sharedInstance().setDismissDelay(10000);
@@ -126,7 +128,8 @@ public class SeqPanel extends JPanel implements MouseListener,
       addMouseMotionListener(this);
       addMouseListener(this);
       addMouseWheelListener(this);
-      ssm = StructureSelectionManager.getStructureSelectionManager(Desktop.instance);
+      ssm = StructureSelectionManager
+              .getStructureSelectionManager(Desktop.instance);
       ssm.addStructureViewerListener(this);
       ssm.addSelectionListener(this);
     }
@@ -171,10 +174,11 @@ public class SeqPanel extends JPanel implements MouseListener,
     }
     else
     {
-      if (x>seqCanvas.getWidth()+seqCanvas.getWidth())
+      if (x > seqCanvas.getWidth() + seqCanvas.getWidth())
       {
-        // make sure we calculate relative to visible alignment, rather than right-hand gutter
-        x = seqCanvas.getX()+seqCanvas.getWidth();
+        // make sure we calculate relative to visible alignment, rather than
+        // right-hand gutter
+        x = seqCanvas.getX() + seqCanvas.getWidth();
       }
       res = (x / av.getCharWidth()) + av.getStartRes();
     }
@@ -206,13 +210,13 @@ public class SeqPanel extends JPanel implements MouseListener,
 
       y -= hgap;
 
-      seq = Math.min((y % cHeight) / av.getCharHeight(),
-              av.getAlignment().getHeight() - 1);
+      seq = Math.min((y % cHeight) / av.getCharHeight(), av.getAlignment()
+              .getHeight() - 1);
     }
     else
     {
-      seq = Math.min((y / av.getCharHeight()) + av.getStartSeq(),
-              av.getAlignment().getHeight() - 1);
+      seq = Math.min((y / av.getCharHeight()) + av.getStartSeq(), av
+              .getAlignment().getHeight() - 1);
     }
 
     return seq;
@@ -300,8 +304,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   void setCursorPosition()
   {
-    SequenceI sequence = av.getAlignment().getSequenceAt(
-            seqCanvas.cursorY);
+    SequenceI sequence = av.getAlignment().getSequenceAt(seqCanvas.cursorY);
 
     seqCanvas.cursorX = sequence.findIndex(getKeyboardNo1() - 1);
     scrollToVisible();
@@ -311,7 +314,8 @@ public class SeqPanel extends JPanel implements MouseListener,
   {
     seqCanvas.cursorX += dx;
     seqCanvas.cursorY += dy;
-    if (av.hasHiddenColumns() && !av.getColumnSelection().isVisible(seqCanvas.cursorX))
+    if (av.hasHiddenColumns()
+            && !av.getColumnSelection().isVisible(seqCanvas.cursorX))
     {
       int original = seqCanvas.cursorX - dx;
       int maxWidth = av.getAlignment().getWidth();
@@ -395,8 +399,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   void setSelectionAreaAtCursor(boolean topLeft)
   {
-    SequenceI sequence = av.getAlignment().getSequenceAt(
-            seqCanvas.cursorY);
+    SequenceI sequence = av.getAlignment().getSequenceAt(seqCanvas.cursorY);
 
     if (av.getSelectionGroup() != null)
     {
@@ -486,12 +489,13 @@ public class SeqPanel extends JPanel implements MouseListener,
     endEditing();
   }
 
-  void insertNucAtCursor(boolean group,String nuc){
-         groupEditing = group;
-           startseq = seqCanvas.cursorY;
-           lastres = seqCanvas.cursorX;
-           editSequence(false, true, seqCanvas.cursorX + getKeyboardNo1());
-           endEditing();
+  void insertNucAtCursor(boolean group, String nuc)
+  {
+    groupEditing = group;
+    startseq = seqCanvas.cursorY;
+    lastres = seqCanvas.cursorX;
+    editSequence(false, true, seqCanvas.cursorX + getKeyboardNo1());
+    endEditing();
   }
 
   void numberPressed(char value)
@@ -537,7 +541,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -558,7 +562,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -632,7 +636,7 @@ public class SeqPanel extends JPanel implements MouseListener,
     {
       if (ap.scrollToPosition(results, false))
       {
-      seqCanvas.revalidate();
+        seqCanvas.revalidate();
       }
     }
     seqCanvas.highlightSearchResults(results);
@@ -647,7 +651,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -715,7 +719,7 @@ public class SeqPanel extends JPanel implements MouseListener,
       SequenceFeature[] features = findFeaturesAtRes(
               sequence.getDatasetSequence(),
               rpos = sequence.findPosition(res));
-      seqARep.appendFeatures(tooltipText,  rpos, features,
+      seqARep.appendFeatures(tooltipText, rpos, features,
               this.ap.seqPanel.seqCanvas.fr.minmax);
     }
     if (tooltipText.length() == 6) // <html></html>
@@ -761,12 +765,11 @@ public class SeqPanel extends JPanel implements MouseListener,
     return lastp = p;
   }
 
-
   String lastTooltip;
 
   /**
    * Set status message in alignment panel
-   *
+   * 
    * @param sequence
    *          aligned sequence object
    * @param res
@@ -814,7 +817,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -892,11 +895,11 @@ public class SeqPanel extends JPanel implements MouseListener,
     if ((res < av.getAlignment().getWidth()) && (res < lastres))
     {
       // dragLeft, delete gap
-      editSequence(false, false,res);
+      editSequence(false, false, res);
     }
     else
     {
-      editSequence(true, false,res);
+      editSequence(true, false, res);
     }
 
     mouseDragging = true;
@@ -906,8 +909,9 @@ public class SeqPanel extends JPanel implements MouseListener,
     }
   }
 
-  //TODO: Make it more clever than many booleans
-  synchronized void editSequence(boolean insertGap, boolean editSeq, int startres)
+  // TODO: Make it more clever than many booleans
+  synchronized void editSequence(boolean insertGap, boolean editSeq,
+          int startres)
   {
     int fixedLeft = -1;
     int fixedRight = -1;
@@ -1084,8 +1088,8 @@ public class SeqPanel extends JPanel implements MouseListener,
         {
           if (sg.getSize() == av.getAlignment().getHeight())
           {
-            if ((av.hasHiddenColumns() && startres < av.getColumnSelection()
-                    .getHiddenBoundaryRight(startres)))
+            if ((av.hasHiddenColumns() && startres < av
+                    .getColumnSelection().getHiddenBoundaryRight(startres)))
             {
               endEditing();
               return;
@@ -1094,7 +1098,8 @@ public class SeqPanel extends JPanel implements MouseListener,
             int alWidth = av.getAlignment().getWidth();
             if (av.hasHiddenRows())
             {
-              int hwidth = av.getAlignment().getHiddenSequences().getWidth();
+              int hwidth = av.getAlignment().getHiddenSequences()
+                      .getWidth();
               if (hwidth > alWidth)
               {
                 alWidth = hwidth;
@@ -1190,59 +1195,63 @@ public class SeqPanel extends JPanel implements MouseListener,
         {
           editCommand.appendEdit(EditCommand.INSERT_GAP, new SequenceI[]
           { seq }, lastres, startres - lastres, av.getAlignment(), true);
-         }
+        }
       }
       else
       {
-       if(!editSeq){
-        // dragging to the left
-        if (fixedColumns && fixedRight != -1)
+        if (!editSeq)
         {
-          for (int j = lastres; j > startres; j--)
+          // dragging to the left
+          if (fixedColumns && fixedRight != -1)
           {
-            if (!jalview.util.Comparison.isGap(seq.getCharAt(startres)))
+            for (int j = lastres; j > startres; j--)
             {
-              endEditing();
-              break;
+              if (!jalview.util.Comparison.isGap(seq.getCharAt(startres)))
+              {
+                endEditing();
+                break;
+              }
+              deleteChar(startres, new SequenceI[]
+              { seq }, fixedRight);
+            }
+          }
+          else
+          {
+            // could be a keyboard edit trying to delete none gaps
+            int max = 0;
+            for (int m = startres; m < lastres; m++)
+            {
+              if (!jalview.util.Comparison.isGap(seq.getCharAt(m)))
+              {
+                break;
+              }
+              max++;
+            }
+
+            if (max > 0)
+            {
+              editCommand.appendEdit(EditCommand.DELETE_GAP,
+                      new SequenceI[]
+                      { seq }, startres, max, av.getAlignment(), true);
             }
-            deleteChar(startres, new SequenceI[]
-            { seq }, fixedRight);
           }
         }
         else
-        {
-          // could be a keyboard edit trying to delete none gaps
-          int max = 0;
-          for (int m = startres; m < lastres; m++)
+        {// insertGap==false AND editSeq==TRUE;
+          if (fixedColumns && fixedRight != -1)
           {
-            if (!jalview.util.Comparison.isGap(seq.getCharAt(m)))
+            for (int j = lastres; j < startres; j++)
             {
-              break;
+              insertChar(j, new SequenceI[]
+              { seq }, fixedRight);
             }
-            max++;
           }
-
-          if (max > 0)
+          else
           {
-            editCommand.appendEdit(EditCommand.DELETE_GAP, new SequenceI[]
-            { seq }, startres, max, av.getAlignment(), true);
+            editCommand.appendEdit(EditCommand.INSERT_NUC, new SequenceI[]
+            { seq }, lastres, startres - lastres, av.getAlignment(), true);
           }
         }
-       }else{//insertGap==false AND editSeq==TRUE;
-               if (fixedColumns && fixedRight != -1)
-            {
-              for (int j = lastres; j < startres; j++)
-              {
-                insertChar(j, new SequenceI[]
-                { seq }, fixedRight);
-              }
-              }
-            else
-            {
-              editCommand.appendEdit(EditCommand.INSERT_NUC, new SequenceI[]
-              { seq }, lastres, startres - lastres, av.getAlignment(), true);
-             }
-       }
       }
     }
 
@@ -1278,16 +1287,16 @@ public class SeqPanel extends JPanel implements MouseListener,
     editCommand.appendEdit(EditCommand.DELETE_GAP, seq, blankColumn, 1,
             av.getAlignment(), true);
 
-    editCommand.appendEdit(EditCommand.INSERT_GAP, seq, j, 1, av.getAlignment(),
-            true);
+    editCommand.appendEdit(EditCommand.INSERT_GAP, seq, j, 1,
+            av.getAlignment(), true);
 
   }
 
   void deleteChar(int j, SequenceI[] seq, int fixedColumn)
   {
 
-    editCommand.appendEdit(EditCommand.DELETE_GAP, seq, j, 1, av.getAlignment(),
-            true);
+    editCommand.appendEdit(EditCommand.DELETE_GAP, seq, j, 1,
+            av.getAlignment(), true);
 
     editCommand.appendEdit(EditCommand.INSERT_GAP, seq, fixedColumn, 1,
             av.getAlignment(), true);
@@ -1295,7 +1304,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param e
    *          DOCUMENT ME!
    */
@@ -1316,7 +1325,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param e
    *          DOCUMENT ME!
    */
@@ -1378,8 +1387,10 @@ public class SeqPanel extends JPanel implements MouseListener,
       if (e.isShiftDown())
       {
         ap.scrollRight(true);
-        
-      } else {
+
+      }
+      else
+      {
         ap.scrollUp(false);
       }
     }
@@ -1388,7 +1399,9 @@ public class SeqPanel extends JPanel implements MouseListener,
       if (e.isShiftDown())
       {
         ap.scrollRight(false);
-      } else {
+      }
+      else
+      {
         ap.scrollUp(true);
       }
     }
@@ -1397,7 +1410,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -1542,7 +1555,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -1557,8 +1570,8 @@ public class SeqPanel extends JPanel implements MouseListener,
                                        // state
     if (stretchGroup.cs != null)
     {
-      stretchGroup.cs.alignmentChanged(
-                stretchGroup,av.getHiddenRepSequences());
+      stretchGroup.cs.alignmentChanged(stretchGroup,
+              av.getHiddenRepSequences());
 
       if (stretchGroup.cs.conservationApplied())
       {
@@ -1582,7 +1595,7 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   /**
    * DOCUMENT ME!
-   *
+   * 
    * @param evt
    *          DOCUMENT ME!
    */
@@ -1648,7 +1661,8 @@ public class SeqPanel extends JPanel implements MouseListener,
       dragDirection = -1;
     }
 
-    while ((y != oldSeq) && (oldSeq > -1) && (y < av.getAlignment().getHeight()))
+    while ((y != oldSeq) && (oldSeq > -1)
+            && (y < av.getAlignment().getHeight()))
     {
       // This routine ensures we don't skip any sequences, as the
       // selection is quite slow.
@@ -1792,7 +1806,8 @@ public class SeqPanel extends JPanel implements MouseListener,
     // shared between viewports.
     if (av == source
             || !av.followSelection
-            || (av.isSelectionGroupChanged(false) || av.isColSelChanged(false))
+            || (av.isSelectionGroupChanged(false) || av
+                    .isColSelChanged(false))
             || (source instanceof AlignViewport && ((AlignViewport) source)
                     .getSequenceSetId().equals(av.getSequenceSetId())))
     {
@@ -1806,7 +1821,7 @@ public class SeqPanel extends JPanel implements MouseListener,
     // if (!av.isSelectionGroupChanged(false))
     {
       SequenceGroup sgroup = null;
-      if (seqsel != null && seqsel.getSize()>0)
+      if (seqsel != null && seqsel.getSize() > 0)
       {
         if (av.getAlignment() == null)
         {
@@ -1844,7 +1859,7 @@ public class SeqPanel extends JPanel implements MouseListener,
         if (av.getColumnSelection() != null)
         {
           av.getColumnSelection().clear();
-          repaint=true;
+          repaint = true;
         }
       }
       else
@@ -1862,8 +1877,10 @@ public class SeqPanel extends JPanel implements MouseListener,
       av.isColSelChanged(true);
       repaint = true;
     }
-    if (copycolsel && av.hasHiddenColumns()
-            && (av.getColumnSelection() == null || av.getColumnSelection().getHiddenColumns() == null))
+    if (copycolsel
+            && av.hasHiddenColumns()
+            && (av.getColumnSelection() == null || av.getColumnSelection()
+                    .getHiddenColumns() == null))
     {
       System.err.println("Bad things");
     }