From 82467dab9d729b0844fd5e33f3b10df47ceae7a8 Mon Sep 17 00:00:00 2001 From: Manindra Moharana Date: Wed, 11 Jun 2014 02:49:34 +0530 Subject: [PATCH] one simply doesn't have enough scrolling routines --- .../experimental/ErrorCheckerService.java | 28 +++++++++++++++++-- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/pdex/src/processing/mode/experimental/ErrorCheckerService.java b/pdex/src/processing/mode/experimental/ErrorCheckerService.java index 728f72c8b..cb2bf5e55 100644 --- a/pdex/src/processing/mode/experimental/ErrorCheckerService.java +++ b/pdex/src/processing/mode/experimental/ErrorCheckerService.java @@ -1503,7 +1503,7 @@ public class ErrorCheckerService implements Runnable{ // log("---"); }*/ - public void scrollToErrorLine(Problem p) { + /*public void scrollToErrorLine(Problem p) { if (editor == null) { return; } @@ -1517,7 +1517,7 @@ public class ErrorCheckerService implements Runnable{ log("P start: " + prbStart + " to " + prbEnd + " pkgOffset " + pkgNameOffset); int lineNumber = p - .getIProblem().getSourceLineNumber(); + .getIProblem().getSourceLineNumber()-1; Element lineElement = astGenerator.getJavaSourceCodeElement(lineNumber); log("Line element off " + lineElement.getStartOffset()); OffsetMatcher ofm = new OffsetMatcher( @@ -1529,7 +1529,7 @@ public class ErrorCheckerService implements Runnable{ int pdeOffset = ofm.getPdeOffForJavaOff(prbStart - lineElement.getStartOffset(), (prbEnd - p .getIProblem().getSourceStart())); - astGenerator.highlightPDECode(p.getTabIndex(), p.getLineNumber(), + astGenerator.highlightPDECode(p.getTabIndex(), p.getLineNumber()-1, pdeOffset, (prbEnd - prbStart + 1)); editor.getTextArea().scrollTo(p.getLineNumber() - 1, 0); editor.repaint(); @@ -1539,6 +1539,28 @@ public class ErrorCheckerService implements Runnable{ e.printStackTrace(); } // log("---"); + }*/ + + public void scrollToErrorLine(Problem p) { + if (editor == null) { + return; + } + if (p == null) + return; + try { + astGenerator.highlightPDECode(p.getTabIndex(), + p.getLineNumber() - 1, + p.getPDELineStartOffset(), + (p.getPDELineStopOffset() + - p.getPDELineStartOffset() + 1)); + editor.getTextArea().scrollTo(p.getLineNumber() - 1, 0); + editor.repaint(); + } catch (Exception e) { + System.err.println(e + + " : Error while selecting text in scrollToErrorLine()"); + e.printStackTrace(); + } + // log("---"); } /**