From 106634777c0910504d9c1617d6307b70581fd3c8 Mon Sep 17 00:00:00 2001 From: jprocter Date: Tue, 24 Feb 2009 17:52:48 +0000 Subject: [PATCH] change method signature to allow caller to test if panel actually scrolled or not --- src/jalview/gui/AlignmentPanel.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/jalview/gui/AlignmentPanel.java b/src/jalview/gui/AlignmentPanel.java index eaa685d..bbd9f72 100755 --- a/src/jalview/gui/AlignmentPanel.java +++ b/src/jalview/gui/AlignmentPanel.java @@ -236,39 +236,42 @@ public class AlignmentPanel extends GAlignmentPanel implements * region in results (if any) and redraw the overview * @param results */ - public void scrollToPosition(SearchResults results) { - scrollToPosition(results, true); + public boolean scrollToPosition(SearchResults results) { + return scrollToPosition(results, true); } /** * scroll the view to show the position of the highlighted * region in results (if any) * @param results * @param redrawOverview - when set, the overview will be recalculated (takes longer) + * @return false if results were not found */ - public void scrollToPosition(SearchResults results, boolean redrawOverview) { + public boolean scrollToPosition(SearchResults results, boolean redrawOverview) { + // TODO: properly locate search results in view when large numbers of hidden columns exist before highlighted region // do we need to scroll the panel? if (results != null && results.getSize()>0) { int seqIndex = av.alignment.findIndex(results); if (seqIndex==-1) { - return; + return false; } SequenceI seq = av.alignment.getSequenceAt(seqIndex); + int [] r = results.getResults(seq, seq.getStart(), seq.getEnd()); if (r==null) { - return; + return false; } int start = r[0]; int end = r[1]; if (start<0) { - return; + return false; } if (end==seq.getEnd()) { - return; + return false; } if (!av.wrapAlignment) { @@ -291,6 +294,7 @@ public class AlignmentPanel extends GAlignmentPanel implements overviewPanel.setBoxPosition(); } paintAlignment(!redrawOverview); + return true; } void scrollToWrappedVisible(int res) -- 1.7.10.2