From 6996fefa0972a9fb47014ccf90a29925c193112a Mon Sep 17 00:00:00 2001 From: benfry Date: Tue, 28 Sep 2004 03:54:00 +0000 Subject: [PATCH] lots of fixes for 0070p7 --- processing/app/PdeCompiler.java | 16 ++++++++++---- processing/app/PdePreferences.java | 1 + processing/app/PdeRuntime.java | 3 +-- processing/app/PdeSketchbook.java | 5 ++++- processing/build/linux/make.sh | 2 ++ processing/build/macosx/make.sh | 3 +++ processing/build/shared/readme.txt | 21 +++++------------- processing/build/windows/dist/run-expert.bat | 2 +- processing/build/windows/dist/run.bat | 2 +- processing/build/windows/make.sh | 3 +++ processing/todo.txt | 23 ++++++++++++++++++-- 11 files changed, 55 insertions(+), 26 deletions(-) diff --git a/processing/app/PdeCompiler.java b/processing/app/PdeCompiler.java index c767ff42d..c2aa1d78b 100644 --- a/processing/app/PdeCompiler.java +++ b/processing/app/PdeCompiler.java @@ -311,10 +311,18 @@ public class PdeCompiler implements PdeMessageConsumer { // c:/fry/processing/build/windows/work/lib/build/Temporary_6858_2476.java:1:34:1:41: Semantic Error: You need to modify your classpath, sourcepath, bootclasspath, and/or extdirs setup. Package "poo/shoe" could not be found in: String classpathProblem = "You need to modify your classpath"; if (description.indexOf(classpathProblem) != -1) { - int nextSentence = description.indexOf(". Package") + 2; - description = - description.substring(nextSentence, description.indexOf(':')) + - " the code folder or in any libraries."; + if (description.indexOf("quicktime/std") != -1) { + // special case for the quicktime libraries + description = + "To run sketches that use the Processing video library, " + + "you must first install QuickTime for Java."; + + } else { + int nextSentence = description.indexOf(". Package") + 2; + description = + description.substring(nextSentence, description.indexOf(':')) + + " the code folder or in any libraries."; + } } //System.out.println("description = " + description); diff --git a/processing/app/PdePreferences.java b/processing/app/PdePreferences.java index bed8eb14f..f9bd6963d 100644 --- a/processing/app/PdePreferences.java +++ b/processing/app/PdePreferences.java @@ -261,6 +261,7 @@ public class PdePreferences extends JComponent { exportLibraryBox = new JCheckBox("Enable advanced \"Library\" features" + " (requires restart)"); + exportLibraryBox.setEnabled(false); pain.add(exportLibraryBox); d = exportLibraryBox.getPreferredSize(); exportLibraryBox.setBounds(left, top, d.width, d.height); diff --git a/processing/app/PdeRuntime.java b/processing/app/PdeRuntime.java index 1aa3e95d9..57a1be856 100644 --- a/processing/app/PdeRuntime.java +++ b/processing/app/PdeRuntime.java @@ -90,8 +90,7 @@ public class PdeRuntime implements PdeMessageConsumer { windowLocation.x + "," + windowLocation.y) : (PApplet.EXT_LOCATION + x1 + "," + y1); - System.out.println("library path is " + sketch.libraryPath); - + //System.out.println("library path is " + sketch.libraryPath); String command[] = new String[] { //"cmd", "/c", "start", diff --git a/processing/app/PdeSketchbook.java b/processing/app/PdeSketchbook.java index ff42d8731..ea3b16e29 100644 --- a/processing/app/PdeSketchbook.java +++ b/processing/app/PdeSketchbook.java @@ -368,6 +368,9 @@ public class PdeSketchbook { e.printStackTrace(); } + /* + // don't do this until it's finished + // libraries don't show up as proper sketches anyway try { if (PdePreferences.getBoolean("export.library")) { JMenu librariesMenu = new JMenu("Libraries"); @@ -377,7 +380,7 @@ public class PdeSketchbook { } catch (IOException e) { e.printStackTrace(); } - + */ } diff --git a/processing/build/linux/make.sh b/processing/build/linux/make.sh index 9eed1acd3..29d45703e 100755 --- a/processing/build/linux/make.sh +++ b/processing/build/linux/make.sh @@ -112,6 +112,7 @@ CLASSPATH="../../build/linux/work/lib/core.jar:../../build/linux/work/java/lib/r echo Build serial library... cd ../../lib/serial ../../build/linux/work/jikes +D -classpath "code/RXTXcomm.jar:$CLASSPATH" -d . *.java +rm -f library/serial.jar zip -r0q library/serial.jar processing rm -rf processing mkdir -p ../../build/linux/work/libraries/serial/library/ @@ -122,6 +123,7 @@ cp library/serial.jar ../../build/linux/work/libraries/serial/library/ echo Build net library... cd ../../lib/net ../../build/linux/work/jikes +D -d . *.java +rm -f library/net.jar zip -r0q library/net.jar processing rm -rf processing mkdir -p ../../build/linux/work/libraries/net/library/ diff --git a/processing/build/macosx/make.sh b/processing/build/macosx/make.sh index 59f019bc8..fc1bf94e7 100755 --- a/processing/build/macosx/make.sh +++ b/processing/build/macosx/make.sh @@ -117,6 +117,7 @@ CLASSPATH=../../build/macosx/work/lib/core.jar:$CLASSPATH echo Building serial library... cd ../../lib/serial ../../build/macosx/work/jikes +D -classpath "code/RXTXcomm.jar:../../build/macosx/work/lib/core.jar:$CLASSPATH" -d . *.java +rm -f library/serial.jar zip -r0q library/serial.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/serial/library/ @@ -127,6 +128,7 @@ cp library/serial.jar ../../build/macosx/work/libraries/serial/library/ echo Building net library... cd ../../lib/net ../../build/macosx/work/jikes +D -d . *.java +rm -f library/net.jar zip -r0q library/net.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/net/library/ @@ -145,6 +147,7 @@ else fi cd ../../lib/video ../../build/macosx/work/jikes +D -classpath "$QTJAVA:$CLASSPATH" -d . *.java +rm -f library/video.jar zip -r0q library/video.jar processing rm -rf processing mkdir -p ../../build/macosx/work/libraries/video/library/ diff --git a/processing/build/shared/readme.txt b/processing/build/shared/readme.txt index e2dcb6e9e..c8a0b1b3e 100644 --- a/processing/build/shared/readme.txt +++ b/processing/build/shared/readme.txt @@ -155,7 +155,7 @@ you tell us about them, so we can fix them. MAC OS X -the most current release has only been tested on Mac OS X 10.2.6. +the most current release has only been tested on Mac OS X 10.3.5. your mileage may vary if you're running something else. actually, your mileage will vary no matter what, because who knows what this software is gonna do. you're playing with free, alpha software. get psyched! @@ -167,29 +167,20 @@ the "Software Update" control panel. it can also be downloaded from http://www.apple.com/downloads/macosx/apple/ or from: http://www.apple.com/downloads/macosx/apple/java131.html for what it's worth, we don't test processing under mac os x 10.1 -and we don't recommend it at all. +and we don't recommend it at all. nor do we particularly recommend +10.2, if you can avoid it. and if you're running 10.4, processing is +the least of your worries. mouse wheel support only works if you're using java 1.4. the latest version of java will be available via the software update control panel. -(actually this paragraph is only relevant if you want to try java 1.4, - since we wound up using 1.3 as the default for release 58) -if you're having random troubles (exceptions being thrown, -screen painting weirdness, general confusion) you might want to -try running processing with java 1.3.1 instead of java 1.4. to do so, -right-click or control-click the processing application and select -"Show Package Contents". go to Contents -> Resources -> and then -open MRJApp.properties in a text editor. remove the # from this line: -com.apple.mrj.application.JVMVersion=1.3.1 -and add a # in front of this line: -com.apple.mrj.application.JVMVersion=1.3+ - serial port.. we use rxtx (version 2.1_6) to handle serial i/o, which is included with the processing release. unlike previous releases (anything before 57), it no longer requires separate installation. however, if this is the first time you're using rxtx, you'll need to -run serial_setup.command (double-click it and follow the instructions) +make your way to the "libraries" folder, find "serial", and inside, +run macosx_setup.command (double-click it and follow the instructions) to make sure that things are properly set up (a few permissions need to be changed). if you're getting a "serial port is already in use by another application" it's possible that you haven't run this diff --git a/processing/build/windows/dist/run-expert.bat b/processing/build/windows/dist/run-expert.bat index 326095b7b..3ca23597e 100755 --- a/processing/build/windows/dist/run-expert.bat +++ b/processing/build/windows/dist/run-expert.bat @@ -4,7 +4,7 @@ REM --- if you're running out of memory, change the 128m REM --- (which means 128 megabytes) to something higher. set SAVEDCP=%CLASSPATH% -set CLASSPATH=lib;lib\build;lib\pde.jar;lib\kjc.jar;lib\antlr.jar;lib\oro.jar;lib\comm.jar;%windir%\system32\qtjava.zip;%windir%\system\qtjava.zip +set CLASSPATH=lib;lib\build;lib\pde.jar;lib\core.jar;lib\antlr.jar;lib\oro.jar;lib\mrj.jar;%windir%\system32\qtjava.zip;%windir%\system\qtjava.zip start javaw -ms128m -mx128m PdeBase diff --git a/processing/build/windows/dist/run.bat b/processing/build/windows/dist/run.bat index 931411545..7afef3148 100755 --- a/processing/build/windows/dist/run.bat +++ b/processing/build/windows/dist/run.bat @@ -6,7 +6,7 @@ REM --- (which means 128 megabytes) to something higher. set SAVEDCP=%CLASSPATH% set SAVEDPATH=%PATH% -set CLASSPATH=java\lib\rt.jar;lib;lib\build;lib\pde.jar;lib\kjc.jar;lib\antlr.jar;lib\oro.jar;lib\comm.jar;%windir%\system32\qtjava.zip;%windir%\system\qtjava.zip +set CLASSPATH=java\lib\rt.jar;lib;lib\build;lib\pde.jar;lib\core.jar;lib\antlr.jar;lib\oro.jar;lib\mrj.jar;%windir%\system32\qtjava.zip;%windir%\system\qtjava.zip set PATH=java\bin;%PATH% start javaw -ms128m -mx128m PdeBase diff --git a/processing/build/windows/make.sh b/processing/build/windows/make.sh index 5bafbdcbf..7fda90ec1 100755 --- a/processing/build/windows/make.sh +++ b/processing/build/windows/make.sh @@ -133,6 +133,7 @@ CLASSPATH="..\\..\\build\\windows\\work\\lib\\core.jar;..\\..\\build\\windows\\w echo Build serial library... cd ../../lib/serial ../../build/windows/work/jikes +D -classpath "code\\RXTXcomm.jar;$CLASSPATH" -d . *.java +rm -f library/serial.jar zip -r0q library/serial.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/serial/library/ @@ -143,6 +144,7 @@ cp library/serial.jar ../../build/windows/work/libraries/serial/library/ echo Build net library... cd ../../lib/net ../../build/windows/work/jikes +D -d . *.java +rm -f library/net.jar zip -r0q library/net.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/net/library/ @@ -163,6 +165,7 @@ else fi cd ../../lib/video ../../build/windows/work/jikes +D -classpath "$QTJAVA;$CLASSPATH" -d . *.java +rm -f library/video.jar zip -r0q library/video.jar processing rm -rf processing mkdir -p ../../build/windows/work/libraries/video/library/ diff --git a/processing/todo.txt b/processing/todo.txt index b88bb29ab..c639f89de 100644 --- a/processing/todo.txt +++ b/processing/todo.txt @@ -217,8 +217,9 @@ X add to "common problems" X junk in the classpath can often cause trouble X http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1094871304 X history is not implemented in this version - X update build instructions for cvs + +0070p6 X macosx X check to see if new linemetrics stuff is working better (it's not) X redo setFont() in PdeEditorHeader @@ -226,10 +227,28 @@ X enable the "use screen menubar" stuff (finch?) X check to see if it's running ok with new java update X update to new shell runner (old mrj guy was ancient) +0070p7 +X fix run.bat and run-expert.bat +X remove library path debug message +X catch error message for "quicktime.std" +X move packages to processing.video, processing.serial, etc. +X need to update the set of new examples +X make sure the library features are disabled by default +X find serial example from tom igoe, include with new examples +X remove sketchbook -> libraries until it works +X serial_setup.command is missing from osx distribution +X fix the note in the readme about it + +_ properly import qtjava from processing.exe + + with casey _ figure out what to include for examples/libraries _ let's not call it 'expert', let's just say w/o java -_ "draw" is not highlighted as a keyword +_ "draw" is not highlighted as a keyword.. other keywords? +_ draw(), PGraphics(), NO_DEPTH_TEST, PMovie(), PMovie.repeat() +_ PClient(), PClient.available(), PClient.read(), +_ PServer(), PServer.dispose(), PServer.write(), attach(), length ......................................................................