From 2c8649fff4c9d6351c1a89451034b05e4dd5f0bc Mon Sep 17 00:00:00 2001 From: Manindra Moharana Date: Thu, 26 Jun 2014 13:40:37 +0530 Subject: [PATCH] PDE X prefs work --- app/.classpath | 1 - app/src/processing/app/Preferences.java | 6 ++++- .../mode/experimental/DebugEditor.java | 14 +++++++++-- .../experimental/ErrorCheckerService.java | 23 +++++++++---------- .../mode/experimental/XQConsoleToggle.java | 8 +++---- 5 files changed, 32 insertions(+), 20 deletions(-) diff --git a/app/.classpath b/app/.classpath index 5f5f89e60..e12f72e7e 100644 --- a/app/.classpath +++ b/app/.classpath @@ -6,7 +6,6 @@ - diff --git a/app/src/processing/app/Preferences.java b/app/src/processing/app/Preferences.java index 5c8aba9f5..89a0f4457 100644 --- a/app/src/processing/app/Preferences.java +++ b/app/src/processing/app/Preferences.java @@ -825,7 +825,11 @@ public class Preferences { setBoolean("platform.auto_file_type_associations", //$NON-NLS-1$ autoAssociateBox.isSelected()); } - + + setBoolean("pdex.errorCheckEnabled", errorCheckerBox.isSelected()); + setBoolean("pdex.warningsEnabled", warningsCheckerBox.isSelected()); + setBoolean("pdex.ccEnabled", codeCompletionBox.isSelected()); + for (Editor editor : base.getEditors()) { editor.applyPreferences(); } diff --git a/pdex/src/processing/mode/experimental/DebugEditor.java b/pdex/src/processing/mode/experimental/DebugEditor.java index 95675c5f2..1d73eb3f0 100755 --- a/pdex/src/processing/mode/experimental/DebugEditor.java +++ b/pdex/src/processing/mode/experimental/DebugEditor.java @@ -1609,8 +1609,8 @@ public class DebugEditor extends JavaEditor implements ActionListener { * at the bottom of the PDE */ public void updateErrorToggle(){ - btnShowErrors.updateMarker(errorCheckerService.hasErrors(), - errorBar.errorColor); + btnShowErrors.updateMarker(ExperimentalMode.errorCheckEnabled + && errorCheckerService.hasErrors(), errorBar.errorColor); } /** @@ -1649,4 +1649,14 @@ public class DebugEditor extends JavaEditor implements ActionListener { } } } + + protected void applyPreferences() { + super.applyPreferences(); + if (dmode != null) { + dmode.loadPreferences(); + log("Applying prefs"); + // trigger it once to refresh UI + errorCheckerService.runManualErrorCheck(); + } + } } diff --git a/pdex/src/processing/mode/experimental/ErrorCheckerService.java b/pdex/src/processing/mode/experimental/ErrorCheckerService.java index 86bf5024f..8a40cee6d 100644 --- a/pdex/src/processing/mode/experimental/ErrorCheckerService.java +++ b/pdex/src/processing/mode/experimental/ErrorCheckerService.java @@ -476,19 +476,18 @@ public class ErrorCheckerService implements Runnable{ } astGenerator.buildAST(cu); - if(ExperimentalMode.errorCheckEnabled){ - calcPDEOffsetsForProbList(); - updateErrorTable(); - editor.updateErrorBar(problemsList); - updateEditorStatus(); - editor.getTextArea().repaint(); - updatePaintedThingys(); - editor.updateErrorToggle(); - } - else - { - log("Error Check disabled, so not updating UI."); + if(!ExperimentalMode.errorCheckEnabled){ + problemsList.clear(); + log("Error Check disabled, so not updating UI."); } + calcPDEOffsetsForProbList(); + updateErrorTable(); + editor.updateErrorBar(problemsList); + updateEditorStatus(); + editor.getTextArea().repaint(); + updatePaintedThingys(); + editor.updateErrorToggle(); + int x = textModified.get(); //log("TM " + x); if (x >= 2) { diff --git a/pdex/src/processing/mode/experimental/XQConsoleToggle.java b/pdex/src/processing/mode/experimental/XQConsoleToggle.java index 279099825..d34b9899c 100755 --- a/pdex/src/processing/mode/experimental/XQConsoleToggle.java +++ b/pdex/src/processing/mode/experimental/XQConsoleToggle.java @@ -94,10 +94,10 @@ public class XQConsoleToggle extends JPanel implements MouseListener { g.drawString(buttonName, getWidth() / 2 + 2 // + 2 is a offset - getFontMetrics(getFont()).stringWidth(buttonName) / 2, this.getHeight() - 6); - if(drawMarker){ - g.setColor(markerColor); - g.fillRect(4, 0, 2, this.getHeight()); - } + if (drawMarker) { + g.setColor(markerColor); + g.fillRect(4, 0, 2, this.getHeight()); + } } boolean drawMarker = false;