X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FSeqPanel.java;h=c7e94323cbb98b1b6c11913a1b0d58e15cc58148;hb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;hp=dfc236e23e6dca7c0946ca30eb2e25c9f0413b51;hpb=3261dc1e0830659cf50d975f19177894af778ecd;p=jalview.git diff --git a/src/jalview/appletgui/SeqPanel.java b/src/jalview/appletgui/SeqPanel.java old mode 100755 new mode 100644 index dfc236e..c7e9432 --- a/src/jalview/appletgui/SeqPanel.java +++ b/src/jalview/appletgui/SeqPanel.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -91,7 +91,7 @@ public class SeqPanel extends Panel implements MouseMotionListener, seqCanvas.addMouseMotionListener(this); seqCanvas.addMouseListener(this); - ssm = StructureSelectionManager.getStructureSelectionManager(); + ssm = StructureSelectionManager.getStructureSelectionManager(av.applet); ssm.addStructureViewerListener(this); seqCanvas.repaint(); @@ -458,7 +458,7 @@ public class SeqPanel extends Panel implements MouseMotionListener, SequenceI sequence = av.alignment.getSequenceAt(findSeq(evt)); if (evt.getClickCount() > 1) { - if (av.getSelectionGroup().getSize() == 1 + if (av.getSelectionGroup()!=null && av.getSelectionGroup().getSize() == 1 && av.getSelectionGroup().getEndRes() - av.getSelectionGroup().getStartRes() < 2) { @@ -641,9 +641,9 @@ public class SeqPanel extends Panel implements MouseMotionListener, { if (av.followHighlight) { - if (ap.scrollToPosition(results, false)) + if (ap.scrollToPosition(results, true)) { - // ap.invalidate(); + ap.alignFrame.repaint(); } } seqCanvas.highlightSearchResults(results); @@ -1774,9 +1774,42 @@ public class SeqPanel extends Panel implements MouseMotionListener, } if (repaint) { + ap.scalePanelHolder.repaint(); ap.repaint(); - //ap.paintAlignment(false); } } + /** + * 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.startSeq : row; + column = column<0 ? ap.av.startRes : column; + ap.scrollTo(row, row, column, true, true); + } + /** + * scroll to the given row - or nearest visible location + * @param row + */ + public void scrollToRow(int row) + { + + row = row<0 ? ap.av.startSeq : row; + ap.scrollTo(row, row, ap.av.startRes, true, true); + } + /** + * scroll to the given column - or nearest visible location + * @param column + */ + public void scrollToColumn(int column) + { + + column = column<0 ? ap.av.startRes : column; + ap.scrollTo(ap.av.startRes, ap.av.startRes, column, true, true); + } + }