removing debug comment
[jalview.git] / src / jalview / gui / SeqPanel.java
index 2e0c1f4..b188888 100644 (file)
@@ -74,7 +74,8 @@ import javax.swing.Timer;
 import javax.swing.ToolTipManager;
 
 /**
- * DOCUMENT ME!
+ * The main scrollable region containing the alignment and just to the right of
+ * the IDPanel.
  * 
  * @author $author$
  * @version $Revision: 1.130 $
@@ -223,7 +224,7 @@ public class SeqPanel extends JPanel
   SearchResultsI lastSearchResults;
 
   /**
-   * Creates a new SeqPanel object
+   * Constructor
    * 
    * @param viewport
    * @param alignPanel
@@ -1952,13 +1953,9 @@ public class SeqPanel extends JPanel
      * start scrolling if mouse dragging, whether the drag started
      * in the scale panel or this panel
      */
-    if (ap.getScalePanel().isMouseDragging())
+    if (mouseDragging || ap.getScalePanel().isMouseDragging())
     {
-      ap.getScalePanel().mouseExited(e);
-    }
-    else if (mouseDragging && scrollThread == null)
-    {
-      startScrolling(e.getPoint());
+      startScrolling(new Point(e.getX(), 0));
     }
   }
 
@@ -2770,4 +2767,45 @@ public class SeqPanel extends JPanel
   {
     return lastSearchResults;
   }
+
+  /**
+   * scroll to the given row/column - or nearest visible location
+   * 
+   * @param row
+   * @param column
+   */
+  public void scrollTo(int row, int column)
+  {
+
+    row = row < 0 ? ap.av.getRanges().getStartSeq() : row;
+    column = column < 0 ? ap.av.getRanges().getStartRes() : column;
+    ap.scrollTo(column, column, row, true, true);
+  }
+
+  /**
+   * scroll to the given row - or nearest visible location
+   * 
+   * @param row
+   */
+  public void scrollToRow(int row)
+  {
+
+    row = row < 0 ? ap.av.getRanges().getStartSeq() : row;
+    ap.scrollTo(ap.av.getRanges().getStartRes(),
+            ap.av.getRanges().getStartRes(), row, true, true);
+  }
+
+  /**
+   * scroll to the given column - or nearest visible location
+   * 
+   * @param column
+   */
+  public void scrollToColumn(int column)
+  {
+
+    column = column < 0 ? ap.av.getRanges().getStartRes() : column;
+    ap.scrollTo(column, column, ap.av.getRanges().getStartSeq(), true,
+            true);
+  }
+
 }