mirror of
https://github.com/processing/processing4.git
synced 2026-06-16 04:26:26 +02:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
Processing
|
||||
==========
|
||||
|
||||
This is the official source code for the [Processing](http://processing.org) Development Environment (PDE),
|
||||
the “core” and the libraries that are included with the [download](http://processing.org/download).
|
||||
|
||||
If you have found a bug in the Processing software, you can file it here under the [“issues” tab](https://github.com/processing/processing/issues).
|
||||
If it relates to the [JavaScript](http://processingjs.org) version, please use [their issue tracker](https://processing-js.lighthouseapp.com/).
|
||||
|
||||
The [processing-web](https://github.com/processing/processing-web/) repository
|
||||
contains reference, examples, and the site.
|
||||
(Please use that link to file issues regarding the web site, the examples, or the reference.)
|
||||
|
||||
Someday maybe I'll even take the time to update the build instructions, write code style guidelines,
|
||||
fix all these bugs, throw together hundreds of unit tests, and solve the Israeli-Palestinian conflict.
|
||||
|
||||
But in the meantime, I ask for your patience, participation, and patches.
|
||||
|
||||
Ben Fry, 3 February 2013
|
||||
@@ -78,11 +78,13 @@
|
||||
|
||||
<mkdir dir="bin" />
|
||||
|
||||
<!-- moved to the main build script -->
|
||||
<!-- ant seems to nuke ${java.home} for some reason, pointing at the JRE
|
||||
subfolder instead of the actual JDK found at JAVA_HOME.
|
||||
To avoid this, we grab the actual JAVA_HOME environment variable
|
||||
and use that to specify the location of tools.jar. -->
|
||||
<!-- if someone is better with ant please help clean this up -->
|
||||
<!--
|
||||
<property environment="env" />
|
||||
<property name="java_home" value="${env.JAVA_HOME}" />
|
||||
<available file="${env.JAVA_HOME}/lib/tools.jar"
|
||||
@@ -104,6 +106,7 @@
|
||||
</condition>
|
||||
<fail if="windows" unless="java_tools_found"
|
||||
message="The JAVA_HOME variable must be set to the location of a full JDK. For instance, on Windows, this might be c:\jdk1.6.0_19." />
|
||||
-->
|
||||
|
||||
<javac source="1.6"
|
||||
target="1.6"
|
||||
|
||||
@@ -1816,7 +1816,8 @@ public abstract class Editor extends JFrame implements RunnerListener {
|
||||
textarea.setSelectedText(tabString);
|
||||
|
||||
} else { // outdent
|
||||
textarea.select(location, location + tabSize);
|
||||
int last = Math.min(location + tabSize, textarea.getDocumentLength());
|
||||
textarea.select(location, last);
|
||||
// Don't eat code if it's not indented
|
||||
if (textarea.getSelectedText().equals(tabString)) {
|
||||
textarea.setSelectedText("");
|
||||
|
||||
@@ -310,7 +310,6 @@ public abstract class EditorToolbar extends JComponent implements MouseInputList
|
||||
int x = e.getX();
|
||||
int y = e.getY();
|
||||
|
||||
// if (currentRollover != -1) {
|
||||
if (rollover != null) {
|
||||
// if ((x > x1[currentRollover]) && (y > y1) &&
|
||||
// (x < x2[currentRollover]) && (y < y2)) {
|
||||
@@ -319,9 +318,9 @@ public abstract class EditorToolbar extends JComponent implements MouseInputList
|
||||
return;
|
||||
|
||||
} else {
|
||||
// setState(currentRollover, INACTIVE, true);
|
||||
rollover.setState(INACTIVE, true);
|
||||
// currentRollover = -1;
|
||||
if (rollover.state == ROLLOVER) {
|
||||
rollover.setState(INACTIVE, true);
|
||||
}
|
||||
rollover = null;
|
||||
}
|
||||
}
|
||||
@@ -429,7 +428,9 @@ public abstract class EditorToolbar extends JComponent implements MouseInputList
|
||||
// there is no more rollover, make sure that the rollover text goes away
|
||||
// currentRollover = -1;
|
||||
if (rollover != null) {
|
||||
rollover.setState(INACTIVE, true);
|
||||
if (rollover.state == ROLLOVER) {
|
||||
rollover.setState(INACTIVE, true);
|
||||
}
|
||||
rollover = null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -464,12 +464,11 @@ public class JavaEditor extends Editor {
|
||||
|
||||
|
||||
public void handleRun() {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
|
||||
new Thread(new Runnable() {
|
||||
public void run() {
|
||||
prepareRun();
|
||||
try {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
runtime = jmode.handleRun(sketch, JavaEditor.this);
|
||||
// System.out.println("runtime now " + runtime);
|
||||
} catch (Exception e) {
|
||||
@@ -481,12 +480,11 @@ public class JavaEditor extends Editor {
|
||||
|
||||
|
||||
public void handlePresent() {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
|
||||
new Thread(new Runnable() {
|
||||
public void run() {
|
||||
prepareRun();
|
||||
try {
|
||||
toolbar.activate(JavaToolbar.RUN);
|
||||
runtime = jmode.handlePresent(sketch, JavaEditor.this);
|
||||
} catch (Exception e) {
|
||||
statusError(e);
|
||||
|
||||
+37
-11
@@ -2,24 +2,50 @@
|
||||
<project name="Processing" default="build">
|
||||
|
||||
<!-- Sets properties for macosx/windows/linux depending on current system -->
|
||||
<condition property="macosx"><os family="mac" /></condition>
|
||||
<condition property="windows"><os family="windows" /></condition>
|
||||
<condition property="linux"><os family="unix" /></condition>
|
||||
|
||||
<condition property="platform"
|
||||
value="macosx"><os family="mac" /> </condition>
|
||||
<condition property="platform"
|
||||
value="windows"><os family="windows" /> </condition>
|
||||
<condition property="platform"
|
||||
value="linux"><os family="unix" /> </condition>
|
||||
<condition property="platform" value="macosx">
|
||||
<os family="mac" />
|
||||
</condition>
|
||||
|
||||
<!-- <echo message="" />-->
|
||||
<condition property="platform" value="windows">
|
||||
<os family="windows" />
|
||||
</condition>
|
||||
|
||||
<condition property="platform" value="linux">
|
||||
<and>
|
||||
<os family="unix" />
|
||||
<not>
|
||||
<os family="mac" />
|
||||
</not>
|
||||
</and>
|
||||
</condition>
|
||||
|
||||
<!-- Set a property named macosx, linux, or windows.
|
||||
The 'value' chosen is arbitrary. -->
|
||||
<property name="${platform}" value="${platform}" />
|
||||
|
||||
<property environment="env" />
|
||||
|
||||
<!-- code signing hack, turns on code signing during dist -->
|
||||
<condition property="codesign">
|
||||
<equals arg1="${env.USER}" arg2="fry" />
|
||||
</condition>
|
||||
|
||||
<!-- Make sure that we have a legitimate JDK... This was promoted
|
||||
from app/build.xml because we now need this on OS X as well. -->
|
||||
<property name="java_home" value="${env.JAVA_HOME}" />
|
||||
<available file="${env.JAVA_HOME}/lib/tools.jar"
|
||||
property="java_tools_found" />
|
||||
|
||||
<fail if="windows" unless="java_tools_found"
|
||||
message="The JAVA_HOME variable must be set to the location of a full JDK. For instance, on Windows, this might be c:\jdk1.6.0_19." />
|
||||
|
||||
<fail if="macosx" unless="java_tools_found"
|
||||
message="To build on OS X, you must have a full JDK installed, and set JAVA_HOME=`/usr/libexec/java_home`" />
|
||||
|
||||
<fail if="linux" unless="java_tools_found"
|
||||
message="The JAVA_HOME variable must be set to the location of a full JDK. For instance, on Ubuntu Linux, this might be /usr/lib/jvm/java-6-sun." />
|
||||
|
||||
<!-- Figure out the platform-specific output directory for all this work. -->
|
||||
<condition property="target.path"
|
||||
value="macosx/work/Processing.app/Contents/Resources/Java">
|
||||
<os family="mac" />
|
||||
|
||||
@@ -98,14 +98,6 @@ log CLASSPATH
|
||||
export PATH="$JDKDIR/bin":"$PATH"
|
||||
log PATH
|
||||
|
||||
# Start Processing in the same directory as this script
|
||||
if [ "$1" ]; then
|
||||
SKETCH=`readlink -f $1`
|
||||
else
|
||||
SKETCH=
|
||||
fi
|
||||
cd "$APPDIR"
|
||||
|
||||
current_name=`basename $0`
|
||||
cmd_name='processing-java'
|
||||
|
||||
@@ -113,5 +105,13 @@ if [ $current_name = $cmd_name ]
|
||||
then
|
||||
java processing.mode.java.Commander "$@"
|
||||
else
|
||||
java processing.app.Base "$SKETCH" &
|
||||
# Start Processing in the same directory as this script
|
||||
if [ "$1" ]; then
|
||||
SKETCH=`readlink -f $1`
|
||||
else
|
||||
SKETCH=
|
||||
fi
|
||||
cd "$APPDIR"
|
||||
|
||||
java processing.app.Base "$SKETCH" &
|
||||
fi
|
||||
|
||||
@@ -243,6 +243,8 @@ public class ErrorCheckerService implements Runnable{
|
||||
if (pauseThread)
|
||||
continue;
|
||||
|
||||
updatePaintedThingy();
|
||||
|
||||
if(textModified.get() == 0)
|
||||
continue;
|
||||
|
||||
@@ -281,7 +283,7 @@ public class ErrorCheckerService implements Runnable{
|
||||
updateErrorTable();
|
||||
editor.updateErrorBar(problemsList);
|
||||
updateEditorStatus();
|
||||
updateTextAreaPainter();
|
||||
// updatePaintedThingy();
|
||||
int x = textModified.get();
|
||||
//System.out.println("TM " + x);
|
||||
if(x>=3){
|
||||
@@ -673,15 +675,14 @@ public class ErrorCheckerService implements Runnable{
|
||||
/**
|
||||
* Repaints the textarea if required
|
||||
*/
|
||||
public void updateTextAreaPainter() {
|
||||
// TODO: Make this function of some use
|
||||
public void updatePaintedThingy() {
|
||||
editor.getTextArea().repaint();
|
||||
updateEditorStatus();
|
||||
currentTab = editor.getSketch().getCodeIndex(
|
||||
editor.getSketch().getCurrentCode());
|
||||
if (currentTab != lastTab) {
|
||||
lastTab = currentTab;
|
||||
// editor.getTextArea().repaint();
|
||||
// System.out.println("1 Repaint " + System.currentTimeMillis());
|
||||
editor.updateErrorBar(problemsList);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -54,6 +54,20 @@ X Library manager leaves temporary folders in sketchbook folder
|
||||
X http://code.google.com/p/processing/issues/detail?id=1527
|
||||
X "Auto format" should not scroll current line to first line
|
||||
X http://code.google.com/p/processing/issues/detail?id=1533
|
||||
X add to build instructions for OS X:
|
||||
X ant won't work w/ Java 1.7 until you set JAVA_HOME
|
||||
X export JAVA_HOME=`/usr/libexec/java_home`
|
||||
X fix "Bounds out of range" when outdenting a block of text
|
||||
X Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Bounds out of range: 5374,5376 [5375]
|
||||
X at processing.app.syntax.JEditTextArea.select(JEditTextArea.java:1214)
|
||||
X at processing.app.Editor.handleIndentOutdent(Editor.java:1819)
|
||||
X play button (and others) no longer highlighting
|
||||
X http://code.google.com/p/processing/issues/detail?id=688
|
||||
X run button not properly unhighlighting
|
||||
X patch from John Li (jli@circularly.org)
|
||||
X readlink error when running processing-java
|
||||
X patch from richard@crash.net.nz
|
||||
X http://code.google.com/p/processing/issues/detail?id=1578
|
||||
|
||||
manindra
|
||||
M bug that was causing the Debugger to point to wrong break point line numbers
|
||||
@@ -78,10 +92,6 @@ o if sketch was open, then restart by dragging the .pde to p5.app
|
||||
|
||||
https://processing-js.lighthouseapp.com/
|
||||
|
||||
_ add to build instructions for OS X:
|
||||
_ ant won't work w/ Java 1.7 until you set JAVA_HOME
|
||||
_ export JAVA_HOME=`/usr/libexec/java_home`
|
||||
|
||||
_ add Iterator as an import?
|
||||
|
||||
_ remove sketch.properties when moving back to the default?
|
||||
@@ -93,6 +103,7 @@ _ "To use this library, you must use the 32-bit version of Processing."
|
||||
|
||||
|
||||
2.0 FINAL / library/tool/mode manager cleanup
|
||||
_ boogers still being left around
|
||||
_ make already installed libraries distinguishable in the list
|
||||
_ http://code.google.com/p/processing/issues/detail?id=1212
|
||||
_ excessive CPU usage of PDE after using library manager
|
||||
@@ -603,9 +614,7 @@ _ http://code.google.com/p/processing/issues/detail?id=174
|
||||
|
||||
PDE / Editor Toolbar (Buttons)
|
||||
|
||||
_ play button (and others) no longer highlighting
|
||||
_ http://code.google.com/p/processing/issues/detail?id=688
|
||||
_ run button not properly unhighlighting
|
||||
_ run button issues (unconfirmed)
|
||||
_ does it unhighlight after compile or runtime errors?
|
||||
_ also when using draw() instead of loop()
|
||||
_ applet needs to notify runner that it has terminated
|
||||
|
||||
Reference in New Issue
Block a user