diff --git a/app/src/processing/app/Base.java b/app/src/processing/app/Base.java
index 9197e43bf..87d859846 100644
--- a/app/src/processing/app/Base.java
+++ b/app/src/processing/app/Base.java
@@ -283,8 +283,8 @@ public class Base {
// try {
// Class.forName("processing.mode.java2.DebugMode");
ModeContribution experimentalContrib =
- ModeContribution.load(this, getContentFile("modes/java2"),
- "processing.mode.java2.DebugMode");
+ ModeContribution.load(this, getContentFile("modes/experimental"),
+ "processing.mode.experimental.ExperimentalMode");
if (experimentalContrib != null) {
Mode experimentalMode = experimentalContrib.getMode();
coreModes = new Mode[] { javaMode, androidMode, javaScriptMode, experimentalMode };
diff --git a/build/build.xml b/build/build.xml
index 56f87deda..ed6e67819 100644
--- a/build/build.xml
+++ b/build/build.xml
@@ -87,7 +87,7 @@
-
+
@@ -100,7 +100,7 @@
-
+
@@ -134,8 +134,8 @@
-
-
+
+
diff --git a/experimental/src/processing/mode/experimental/DebugBuild.java b/experimental/src/processing/mode/experimental/DebugBuild.java
index a77dc1972..fdb9b34e3 100755
--- a/experimental/src/processing/mode/experimental/DebugBuild.java
+++ b/experimental/src/processing/mode/experimental/DebugBuild.java
@@ -67,7 +67,7 @@ public class DebugBuild extends JavaBuild {
return null;
}
- public DebugMode getMode() {
- return (DebugMode)mode;
+ public ExperimentalMode getMode() {
+ return (ExperimentalMode)mode;
}
}
diff --git a/experimental/src/processing/mode/experimental/DebugEditor.java b/experimental/src/processing/mode/experimental/DebugEditor.java
index c8be53c97..1ed649ceb 100755
--- a/experimental/src/processing/mode/experimental/DebugEditor.java
+++ b/experimental/src/processing/mode/experimental/DebugEditor.java
@@ -94,7 +94,7 @@ public class DebugEditor extends JavaEditor implements ActionListener {
// variable inspector
protected JMenuItem toggleVariableInspectorMenuItem;
// references
- protected DebugMode dmode; // the mode
+ protected ExperimentalMode dmode; // the mode
protected Debugger dbg; // the debugger
protected VariableInspector vi; // the variable inspector frame
protected TextArea ta; // the text area
@@ -133,7 +133,7 @@ public class DebugEditor extends JavaEditor implements ActionListener {
super(base, path, state, mode);
// get mode
- dmode = (DebugMode) mode;
+ dmode = (ExperimentalMode) mode;
// init controller class
dbg = new Debugger(this);
@@ -153,7 +153,7 @@ public class DebugEditor extends JavaEditor implements ActionListener {
// });
// load settings from theme.txt
- DebugMode theme = dmode;
+ ExperimentalMode theme = dmode;
breakpointColor = theme.getThemeColor("breakpoint.bgcolor", breakpointColor);
breakpointMarkerColor = theme.getThemeColor("breakpoint.marker.color", breakpointMarkerColor);
currentLineColor = theme.getThemeColor("currentline.bgcolor", currentLineColor);
@@ -835,7 +835,7 @@ public class DebugEditor extends JavaEditor implements ActionListener {
*
* @return the mode object
*/
- public DebugMode mode() {
+ public ExperimentalMode mode() {
return dmode;
}
diff --git a/experimental/src/processing/mode/experimental/ErrorBar.java b/experimental/src/processing/mode/experimental/ErrorBar.java
index 8d3e01966..fce56ebb6 100755
--- a/experimental/src/processing/mode/experimental/ErrorBar.java
+++ b/experimental/src/processing/mode/experimental/ErrorBar.java
@@ -118,7 +118,7 @@ public class ErrorBar extends JPanel {
return getPreferredSize();
}
- public ErrorBar(DebugEditor editor, int height, DebugMode mode) {
+ public ErrorBar(DebugEditor editor, int height, ExperimentalMode mode) {
this.editor = editor;
this.preferredHeight = height;
this.errorCheckerService = editor.errorCheckerService;
diff --git a/experimental/src/processing/mode/experimental/DebugMode.java b/experimental/src/processing/mode/experimental/ExperimentalMode.java
similarity index 71%
rename from experimental/src/processing/mode/experimental/DebugMode.java
rename to experimental/src/processing/mode/experimental/ExperimentalMode.java
index ba7cd5a0a..56645fc7d 100755
--- a/experimental/src/processing/mode/experimental/DebugMode.java
+++ b/experimental/src/processing/mode/experimental/ExperimentalMode.java
@@ -1,20 +1,24 @@
+/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */
+
/*
- * Copyright (C) 2012 Martin Leopold
- *
- * This program is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
- * details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
- * Place - Suite 330, Boston, MA 02111-1307, USA.
- */
+ Part of the Processing project - http://processing.org
+
+ Copyright (c) 2012 The Processing Foundation
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License version 2
+ as published by the Free Software Foundation.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+
package processing.mode.experimental;
import java.awt.Color;
@@ -29,18 +33,18 @@ import processing.app.EditorState;
import processing.app.Mode;
import processing.mode.java.JavaMode;
+
/**
- * Debug Mode for Processing. Built on top of JavaMode.
- *
- * @author Martin Leopold
+ * Experimental Mode for Processing, combines Debug Mode and XQMode and
+ * starts us working toward our next generation editor/debugger setup.
*/
-public class DebugMode extends JavaMode {
+public class ExperimentalMode extends JavaMode {
public static final boolean VERBOSE_LOGGING = true;
//public static final boolean VERBOSE_LOGGING = false;
public static final int LOG_SIZE = 512 * 1024; // max log file size (in bytes)
- public DebugMode(Base base, File folder) {
+ public ExperimentalMode(Base base, File folder) {
super(base, folder);
// use libraries folder from javamode. will make sketches using core libraries work, as well as import libraries and examples menus
@@ -80,16 +84,16 @@ public class DebugMode extends JavaMode {
globalLogger.addHandler(handler);
} catch (IOException ex) {
- Logger.getLogger(DebugMode.class.getName()).log(Level.SEVERE, null, ex);
+ Logger.getLogger(ExperimentalMode.class.getName()).log(Level.SEVERE, null, ex);
} catch (SecurityException ex) {
- Logger.getLogger(DebugMode.class.getName()).log(Level.SEVERE, null, ex);
+ Logger.getLogger(ExperimentalMode.class.getName()).log(Level.SEVERE, null, ex);
}
// output version from manifest file
- Package p = DebugMode.class.getPackage();
+ Package p = ExperimentalMode.class.getPackage();
String titleAndVersion = p.getImplementationTitle() + " (v" + p.getImplementationVersion() + ")";
//System.out.println(titleAndVersion);
- Logger.getLogger(DebugMode.class.getName()).log(Level.INFO, titleAndVersion);
+ Logger.getLogger(ExperimentalMode.class.getName()).log(Level.INFO, titleAndVersion);
}
@@ -128,7 +132,7 @@ public class DebugMode extends JavaMode {
if (newString != null) {
return newString;
}
- Logger.getLogger(DebugMode.class.getName()).log(Level.WARNING, "Error loading String: {0}", attribute);
+ Logger.getLogger(ExperimentalMode.class.getName()).log(Level.WARNING, "Error loading String: {0}", attribute);
return defaultValue;
}
@@ -147,7 +151,7 @@ public class DebugMode extends JavaMode {
return newColor;
}
System.out.println("error loading color: " + attribute);
- Logger.getLogger(DebugMode.class.getName()).log(Level.WARNING, "Error loading Color: {0}", attribute);
+ Logger.getLogger(ExperimentalMode.class.getName()).log(Level.WARNING, "Error loading Color: {0}", attribute);
return defaultValue;
}
diff --git a/experimental/src/processing/mode/experimental/TextArea.java b/experimental/src/processing/mode/experimental/TextArea.java
index 7dd0d430e..08a6b88e4 100755
--- a/experimental/src/processing/mode/experimental/TextArea.java
+++ b/experimental/src/processing/mode/experimental/TextArea.java
@@ -84,7 +84,7 @@ public class TextArea extends JEditTextArea {
add(CENTER, painter);
// load settings from theme.txt
- DebugMode theme = (DebugMode) editor.getMode();
+ ExperimentalMode theme = (ExperimentalMode) editor.getMode();
gutterBgColor = theme.getThemeColor("gutter.bgcolor", gutterBgColor);
gutterLineColor = theme.getThemeColor("gutter.linecolor", gutterLineColor);
gutterPadding = theme.getInteger("gutter.padding");
@@ -92,7 +92,7 @@ public class TextArea extends JEditTextArea {
currentLineMarker = theme.loadThemeString("currentline.marker", currentLineMarker);
}
- public void setECSandThemeforTextArea(ErrorCheckerService ecs, DebugMode mode)
+ public void setECSandThemeforTextArea(ErrorCheckerService ecs, ExperimentalMode mode)
{
customPainter.setECSandTheme(ecs, mode);
}
diff --git a/experimental/src/processing/mode/experimental/TextAreaPainter.java b/experimental/src/processing/mode/experimental/TextAreaPainter.java
index 36706a5f0..c2c0ae48b 100755
--- a/experimental/src/processing/mode/experimental/TextAreaPainter.java
+++ b/experimental/src/processing/mode/experimental/TextAreaPainter.java
@@ -64,7 +64,7 @@ public class TextAreaPainter extends processing.app.syntax.TextAreaPainter {
ta = textArea;
}
- private void loadTheme(DebugMode mode){
+ private void loadTheme(ExperimentalMode mode){
errorColor = mode.getThemeColor("editor.errorcolor", errorColor);
warningColor = mode.getThemeColor("editor.warningcolor",
warningColor);
@@ -306,7 +306,7 @@ public class TextAreaPainter extends processing.app.syntax.TextAreaPainter {
return newString;
}
- public void setECSandTheme(ErrorCheckerService ecs, DebugMode mode){
+ public void setECSandTheme(ErrorCheckerService ecs, ExperimentalMode mode){
this.errorCheckerService = ecs;
loadTheme(mode);
}
diff --git a/experimental/src/processing/mode/experimental/VariableInspector.java b/experimental/src/processing/mode/experimental/VariableInspector.java
index 1d3858abb..a38c19a8f 100755
--- a/experimental/src/processing/mode/experimental/VariableInspector.java
+++ b/experimental/src/processing/mode/experimental/VariableInspector.java
@@ -260,7 +260,7 @@ public class VariableInspector extends javax.swing.JFrame {
* null if the file wasn't found.
*/
protected ImageIcon[][] loadIcons(String fileName) {
- DebugMode mode = editor.mode();
+ ExperimentalMode mode = editor.mode();
File file = mode.getContentFile(fileName);
if (!file.exists()) {
Logger.getLogger(OutlineRenderer.class.getName()).log(Level.SEVERE, "icon file not found: {0}", file.getAbsolutePath());
diff --git a/experimental/theme/theme.txt b/experimental/theme/theme.txt
index a5d65ec7c..5f9afe1bc 100755
--- a/experimental/theme/theme.txt
+++ b/experimental/theme/theme.txt
@@ -74,26 +74,32 @@ editor.brackethighlight.color = #006699
# TEXT - KEYWORDS
-# e.g abstract, final, private
-editor.keyword1.style = #cc6600,plain
+# e.g. Functions
+editor.function1.style = #006699,plain
-# e.g. beginShape, point, line
-editor.keyword2.style = #cc6600,plain
+# e.g. Methods (functions inside a class)
+editor.function2.style = #006699,plain
-# e.g. byte, char, short, color
-editor.keyword3.style = #cc6600,bold
+# e.g. Datatypes and keywords (void, int, boolean, etc.)
+editor.keyword1.style = #D86736,plain
+
+# e.g. Processing fields [variables within a class]
+editor.keyword2.style = #EE3C96,plain
+
+# e.g. Processing variables (width, height, focused, etc.)
+editor.keyword3.style = #EE3C96,plain
# TEXT - LITERALS
-# constants: e.g. null, true, this, RGB, TWO_PI
-editor.literal1.style = #006699,plain
+# e.g. Strings (text in quotes)
+editor.literal1.style = #7D4793,plain
-# p5 built in variables: e.g. mouseX, width, pixels
-editor.literal2.style = #006699,plain
+# e.g. Constants (QUARTER_PI, CORNERS, etc.)
+editor.literal2.style = #669933,plain
# e.g. + - = /
-editor.operator.style = #000000,plain
+editor.operator.style = #006699,plain
# ?? maybe this is for words followed by a colon
# like in case statements or goto