Files
processing4/processing/todo.txt
2004-01-19 19:29:02 +00:00

917 lines
39 KiB
Plaintext

0068
X ifdef JDK14 around a piece of 1.4 specific window code
X use mozilla for opening urls in linux, switched to more compatible exec()
o note in the docs: can't use transforms inside beginShape()
o http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068795597
X make components all swing components
X switch to swing menus (for linux), because motif widgets are nasty
X moved 'find in reference' to the help menu
X eliminate the requirement for a 'data' folder
X only create 'data' folder when it's needed/used
X auto-create code and data folder via 'add files to sketch..'
X option to disable smoothing on font creator
X font builder should update when the size for the font is changed
X (so long as the size itself is valid)
X font builder bug, was cutting off parts of letters
X major applet freezing error fixed with external
X printStackTrace wasn't being called for runtime errors if no leechErr
X may need to start putting properties somewhere besides lib
X home directory (or preferences folder under macos9)
X create font doesn't support umlauts
X fix up font code to generate unicode chars, at least for iso8859-1 charset
X http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1067596427
X punt on the expert release? at least until beta?
X nope, can't will annoy people and won't save enough time
X clean up the fonts in the
X do this once unicode support has been added to the regular fonts
X make a preference panel to set pde.properties stuff
X new html code for eolas patent case
X move html to external file in the lib folder
X re-merge old code back in for textareadefaults?
X re-enable line highlight
X fix background color
X get bracket highlighting to work
X why won't loop() go bold? -> java 1.4 problem on the mac
X test what it does on the pc
X seems to be a mac-specific problem (probably because of monaco)
X removed kjc classes
X addition to pde.properties to list the imports for various jdk versions
X set jdk version for export inside pde.properties
X international: convert unicode chars to \uXXXX in the preproc
X if this causes trouble, change the preference for lib/pde.properties
X compiler.substitute_unicode = false
X option to set what browser is in use
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1074106123;start=0
goodbye macos9
X posted to message board about it going away
o leftover todos
o set file type for jar and html files on export
o (not done on osx, safari doesn't set for html files)
o why is bbedit the type for the other files? make simpletext
o untested/likely broken
o reference launching
o control/right-click for edit area context menu
o make sure editor window is front so that error line highlights
o is video working (qtjava in path) on macos9?
already done in a prev release, but not checked off
X subst Image -> BImage, Font -> BFont
X this should be optional until we get the naming down
X note that this was already done pre-67
o allow import blahblah.blah.blah to get passed through
o and included with the imports list.
X clear console each time 'run' gets hit
X don't actually clear, just advance by the number of lines visible
X http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1051540041;start=0
X http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1065732731
X can't copy text from console directly (winxp and macosx)
nixed
o basic usb support?
o http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1053684925
o try ariel's Thread.yield() suggestion
o set default framerate of 24? 30? 2x that?
_ once compiling again, change PdeException
_ rename the class for a minute to find all references
_ then add references to the *file index* in question
_ this could be a headache since preproc doesn't know :(
_ option for "ok to overwrite html"
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1074240197;start=0
_ fix command keys for menus (broken since switching to swing)
_ fix make.sh and dist.sh for all platforms to include new export setup
_ re-implement history (disabled for 68)
_ history: "archive this version"
_ makes a numbered archive of the current sketch as a zip file
_ checks to see if there are other versions in the current folder
_ or maybe just increments the numbers at the end of the sketch name
VOLUNTEER
_ figure out how eclipse or other IDEs handle running applets
_ but retaining a connection to them without upsetting virus apps
_ fix export to recursively copy contents of build folder
_ currently only copies top-level classes and contents of data folder
_ sync files into lib/build rather than copying everything new
_ check file existence and modification dates to know which to copy
_ and which files to delete if some have been removed
_ this also means that the file copying has to set mod dates (JDK13)
when creating a new file, suggest untitled.pde
they can put a .java or .pde extension on the file
if no extension is found, add the .pde extension
if the file has a .pde extension, then it will be run through the preproc.
code coming from toxi
_ sphereDetail() function + reference
_ optimized the flat_rect() function for solid colours (20% faster)
_ noise() is (partially) broken in v67
_ option for having multiple files open
X need ui for tabs from casey
X tabbed interface for multiple files
X http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1052077800;start=0
_ "new text java/pde file" menu item
SKETCHBOOK
_ sketch.properties should go into user.home
_ otherwise moving sketch folder will kill it
_ last-used sketch not being saved
_ if sketchbook.dir is set, makes new sketchbook folder
_ reads sketchbook properly from other folder
_ but creates a new folder for new sketches to go into
_ sketchbook.dir not properly read or written
_ install sketchbook into another location on person's machine
_ use System.getProperty("user.home");
_ remove the 'default' for sketchbook
_ bring this up on bboard and get votes
_ win2k: my documents, macosx: ~/Documents, linux: ~/sketchbook
_ fix code for changing the sketch folder
_ don't allow editing of multiple files in this release
_ but support multiple java/pde files through the 'add file' option
_ open mode
_ on application open, override 'open' mode
_ and just open an empty sketch in the sketchbook folder
_ when 'skNew' is cancelled in 'open' mode, nullpointerex at the top
EXAMPLES
_ check if file is read-only, and if so, ask where to put sketch
_ how to handle examples: read only, somewhere inside lib
_ move examples to folder that goes w/ p5 app
_ set examples somehow read-only
_ 'save as' from examples puts into examples dir.. :(
_ make it default to the user's sketch dir
LIBRARIES
_ "add library" menu item and submenu
_ iterate through the 'library' folders
_ dll and jnilib files have to be in the p5 folder (confirmed by amit)
_ there should be other places that they work..
_ could even copy the dll to the p5 folder from the code folder
BAGEL
_ libraries: static and non-static init for libs
_ final stop() for static shutdown of lib
_ but also potential stop() for individual items
_ some way to properly quit sketch when stopped
_ if people have other threads they've spawned, impossible to stop
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1067383998
_ rewrite bagel code..
_ for this release, because it will break things along with the lib stuff
_ switch to PImage, PApplet, etc
_ update() mode needs to be hacked in
_ separating of BGraphics and BApplet
_ change copyrights on the files again (to match ?)
_ concave/convex polygons
_ proper lineweight
_ camera clipping
_ put screenshots into their sketch folder
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1046185738;start=0
_ add a method BApplet.setPath() or something like that
IMAGE
_ BImage.smooth() ?
_ make grayscale image in p5
_ could be used in conjunction with alpha() to properly set alpha values
void toGrayscale() {
int col,lum;
for(int i=0; i<pixels.length; i++) {
col=pixels[i];
// luminance = 0.3*red + 0.59*green + 0.11*blue
// 0.3*256 = 76
// 0.59*256 = 151
// 0.11*256 = 28
lum = (76*(col>>16&0xff)+151*(col>>8&0xff)+28*(col&0xff))>>8;
pixels[i]=lum<<16 | lum<<8 | lum;
}
}
BUGS / PDE
_ find/replace hangs when recapitalizing things
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1072994196;start=0
_ if last line of code is a comment with no CR after it,
_ an OutOfMemoryError ensues
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067717095
_ jikes errors have no newlines because it's a buffered reader
_ and the newlines are removed when read
_ mouse wheel not working properly, need to dynamically load 1.4 code
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1065826758;start=0
_ preproc bug: text(String.valueOf(i+1), left + i*20, top);
_ unexpected token "String"
BUGS / Bagel
_ doesn't work when outside a function:
_ color bg_color = color(255,0,0);
_ rect is not getting it's stroke color set
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1073582391;start=0
_ alpha of zero still draws boogers on screen
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1073329613;start=0
_ new sphere code from toxi
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1067005325
_ colorMode broken for red() green() etc
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068664455
_ z values not set properly on ellipses?
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068752615
_ ellipses are just plain ugly
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1073409011;start=0
BUGS / Windows
_ p5's exe prolly has trouble when PATH has quotes (or spaces?)
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068388889
_ CLASSPATH figured out what to do with quotes, but not PATH
BUGS / Linux
_ doesn't seem interested in quitting properly (?)
BUGS / Mac OS X
_ flickering several times on startup
_ also a strange box showing up in the corner
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1073111031
NETWORK
_ don't send unicode data
_ when you stop the client, it freezes
_ until you quit the processing running the server
_ (the server starts and stops fine)
_ add constants for building NET, move stuff around in bagel dir
_ some method for just downloading the entire contents of a url
VIDEO
_ selecting input source (wintv board and quickcam installed.. problem)
_ including qtjava in path when in java mode (oops)
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1069724180;start=0
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1073523928;start=0
_ beginVideo not colored
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1069342913;start=0
_ things will freeze if winvdig not installed
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1065185464
_ quicktime 6.4 update breaks p5 on the mac?
_ http://docs.info.apple.com/article.html?artnum=93414&sessionID=anonymous%7C26893096&kbhost=kbase.info.apple.com%3a80%2f
_ "Type quicktime.std.stdQTConstants was not found"
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1066358763
_ http://docs.info.apple.com/article.html?artnum=120255
_ split classes to BVideo and BMovie ?
_ video hanging without a camera installed
_ just locks up after running examples, then does the 'can't delete' thing
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1060313779
_ first row of video pixels are black
_ casey says it may only be his camera
_ video.pixels don't seem to have high bytes set
_ so fill(video.pixels[blah]) doesn't work
_ test against 'pixels' example
_ make BVideo subclass BImage
_ make sure the high bits are getting set as opaque
_ quicktime exporter or image sequence export
_ fairly quick--just use experimental code from dbn
_ problems running external vm/vm is hanging
_ seems to be happening because of virus scanning software (norton)
_ may need to launch the applet (using 'start')
_ and talk over a socket instead
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067867520;start=0
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067643186
CONSOLE
_ set max frame rate at 60 fps? avoid the full-on spew to the console
_ console runs really really slow with a lot of println() calls
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1064182823
_ console -> should be using JEditTextArea not TextPane
_ make new TextAreaDefaults class for the console
_ figure out how to color lines for errors and non (since not syntax)
_ set decent fonts (probably same as editor above), looks bad on mac
MEDIUM
_ jikes errors are missing newline/linefeed ?
_ using run-expert.bat on 62 causes NullPointerException weirdness (?)
_ network/shared_canvas, network/value has old code
_ write script to remove .DS_Store and CVS folders from dist
_ # remove DS_Store files
_ sudo find . -name ".DS_Store" -depth -exec rm {} \;
_ change run.bat, run-expert.bat to use 128m
_ ability to include other .java and .pde code from sketchbook folder
_ 'add files' for .java or .pde pulls into the folder
_ light(x, y, z, c1, c2, c3, TYPE)
_ also BLight with same constructor, and on() and off() fxn
_ better 1.3/1.4 support.. properly detect vm
_ use when deciding which classes to import
_ better support for running locally
_ code to read from properties file from param()
_ for application mode or while inside the environment
_ these properties will be written to html on export
_ fix link, loadStrings, saveBytes code once that's fixed
_ saveBytes not in proper dir is annoying
_ multi-line errors a mess in jikes
_ maybe a dropdown list thing, with the first just shown?
_ processing.exe: problem if expert version is run, and no java installed
_ call the person a genius and tell them to install java
_ update illustrator code to use bagel api
_ even if not actually working properly.. just in naming of things
_ new networking client from simong
_ simong lighting code
application export
dh b _ ability to export 'applications' (not just applets)
dh b _ lock feature for present mode (part of export to application?)
dh b _ application can still do serial (qt, other stuff?)
dh b _ applet runs in browser, though applet on cbagel is everything..
dh b _ include main class info for executable jar file with jdk > 1.2
dh b _ not difficult to do, just some tweaking once applet export works
dh b _ wrapper that invokes the applet using a copy of the jre
dh b _ main() method needs to set layout manager if jexegen is to be used
dh b _ (msft vm defaults to null layout manager)
dh b _ also make sure pack() is happening
dh b _ add manifest.mf to exported applets so that applications will work
dh b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1045983103;start=0
bf b _ BApplet.main(new String[] { "flashcards3" });
bf b _ or even BApplet.main(new String[] { getClass().getName() });
bf b _ META-INF/MANIFEST.MF contains just "Main-Class: ClassName"
bf b _ main sticking point will be serial/qtjava in exports
history
_ history causing trouble - super slow with a huge sketch
_ could instead be gzipped and appended to history.dat
_ along with another file that is actually a table of offsets
_ no need to make the thing a gzip stream
_ checkbox on menu for 'record history' ?
_ history converter option?
_ only first 20 entries visible?
_ get code from revisionist in there
licensing
_ about box
_ bring up information about gpl, lgpl, and ibmpl
_ check in licenses/dist stuff for jikes etc
_ who has the copyright?
_ jedit syntax is under mit license
_ http://www.opensource.org/licenses/mit-license.php
_ although jedit is under gpl, if we switch to its syntax pkg
_ more info about use is in package.html
_ http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jedit/jEdit/org/gjt/sp/jedit/syntax/
_ http://community.jedit.org/modules.php?op=modload&name=news&file=article&sid=225&mode=thread&order=0&thold=0
VOLUNTEER TASKS
_ need curveTangent() code
NEW GRAPHICS
_ stroke not set on flat_rect
_ when drawing fonts w/ sami's code, left edge has problem
_ 8-bit (alpha) textures not blending
_ near-plane clipping currently disabled for triangles, enabled for lines
_ (but culling offscreen triangles works.. but may have been
_ commented out by carlos)
_ sphere code needs only front face polygon
_ all triangles must be counter-clockwise (front-facing)
..................................................................
KEY
bf ben fry (http://acg.media.mit.edu/people/fry)
cr casey reas (http://www.groupc.net)
ca carlos andres rocha
hb hernando barragan (http://www.people.interaction-ivrea.it/b.barragan)
dh dan haskovec
dm dan mosedale
ks karsten schmitt (http://www.toxi.co.uk)
ap amit pitaru (http://www.pitaru.net)
_ developers who may be interested in p5 helping:
sdlpci@cis.rit.edu
gerritt@cloudyreason.com
kyle@kylerode.com
leonhard@rathner.com
..................................................................
LOWER (post beta tweaks, non-structural)
_ Ctrl-Z will undo, but the window will not scroll to where the
_ "undoing" is happening. This can lead the user to assume that
_ actually nothing is happening and overundo.
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1064220242;start=0
_ figure out how to cancel 'save changes' on macosx and windows
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1064732330;start=0
_ error if you try to hit export twice on a sketch
_ "C:/ProgramFiles/proce55ing/processing-0060/sketchbook/default/double_export_tesuble_export_test.java:1:625:7:2: Semantic Error: Unable to write file
_ "C:/ProgramFiles/proce55ing/processing-0060/sketchbook/default/double_export_tesuble_export_test.class"."
_ clean up PdeTokenMarker, probably just alphabetize
_ remove .DS_Store boogers, especially from win/linux distributions
_ NullPointerException when alt is pressed
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1061802316;start=0
_ check what other functions require BGraphics to exist but shouldn't
_ color has to be called inside or after setup
_ loadImage must be used inside or after setup
_ either document this and/or provide a better error message
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1060879468;start=0
_ include a note that 'applet' folder will get emptied/rewritten
_ or rename the old applet folder to something else?
_ don't allow apostrophe (i.e. casey's_cells) when naming sketch!
_ screenGrab() at the end of a draw mode program is problematic
_ app might exit before the file has finished writing to disk
_ need to block other activity inside screenGrab until finished
_ non-ascii filenames seem to be causing trouble
_ maybe provide a message stating this when p5 is run?
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1062794781;start=0
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067764732
_ need to change all the copyrights over to mit "except where noted"
X when exporting applet, line numbers will be off..
_ when not exporting with new preproc code, imports all on same line
_ make preproc keep track of how many lines were added
_ fix the problem causing all the "couldn't delete" messages
X when exporting applet, line numbers will be off..
_ when not exporting with new preproc code, imports all on same line
_ make preproc keep track of how many lines were added
_ class naming from dan
_ If you name a class the same name as the sketch project,
_ you get an error about contained classes with duplicate names
_ when you try to export for web.
_ catch security exceptions around applet i/o calls
_ not just for saving files, but provide better error msgs when
_ attempting to download from another server
_ if (loop == false) and (draw == false) then provide an error
_ so user knows that one or the other is needed
_ make PdeEditorStatus modal
_ problem on quit (using JOptionPane as a band-aid)
_ also a problem because user can use the ui while prompt is visible
_ needs proper blocking, the way Dialog.show() does
_ so that that status window can be used while quitting
_ (currently cannot because it quits before getting response)
_ tried to pop up a modal Dialog in exactly the same location
_ but couldn't remove the decoration from the window (jvm bug?)
_ because it just quit without finishing
_ macosx handleQuit forces termination (at least on 1.3)
_ figure out how to prevent it, and add the 'cancel' button back
_ drag & drop implementation to add files to sketch
_ do a better job of maintaining cursor during beautify
thesis / acg
_ make bagel more usable as standalone
_ breakout BGraphics (have its own BImage)
_ breakout BApplet into BComponent ? (fix out-of-bounds mouse)
_ possible use of BUtils ?
_ write documentation on general use
_ along with how to download from sourceforge (anonpass is blank)
_ needs to be used as a component, without applet
_ but retain functionality, ie. image i/o
_ exports pixels or a BImage or does MemoryImageSource itself
_ move math functions into utility library associated
_ with bagel, because those will be useful on other bagel platforms
_ pApplet will call BagelMath.whatever, so still looks like cos()
_ #ifdef to remove client and server code as well
_ p5 classes into packages (bagel especially)
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1052908285;start=0
_ break out BSerial as separate object like BVideo
_ include rxtx and the rest of that setup in subfolder
_ BSerial.flush and BSerial.available in object
_ need to resolve issues between rendering screen/file
_ illustrator-based rendering needs to work for ars projects
_ screen may be 400x400 pixels, but file be 36x36"
_ opengl export / rendering mode
_ currently implemented, but somewhat broken
_ finish this once all the line code is done
_ make possible to use buzz.pl to create versions w/ stuff removed
_ build gl4java for java 1.4
_ read table/csv formatted data into a matrix
_ pseudo-database format version of this that stores indexes to file
_ rather than loading the whole thing at once
_ more advanced splitting of files into rows/cols uses another class
_ other class also has concept for random access of lines
_ by storing the line positions, can access without loading all
_ into memory because some files will be too large
_ illustrator export / rendering mode
_ also postscript or pdf export?
_ version of Illustrator.java that uses bagel api
_ sorting of polygons/lines on simple painters algorithm
_ better lighting model to show darkness at various depths
_ maybe just ultra-high res bitmaps from gl
_ version of BApplet that replaces g. with ai. or pdf.
_ history.. add my diffs sketch
_ could just include a compiled version of the diff app, ala jikes
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
GRAPHICS LIBRARY
A hybrid of OpenGL (3D Graphics) and some aspects of Postscript (Fill, Stroke)
The graphics library is called Bagel, which is an internal name.
BAGEL / Rendering
b _ picking
b _ what is the API for picking?
b _ ability to write data other than image into the buffer
b _ user can introduce new kinds of buffers at will (!)
b _ lists of names of objects, or the 'line number' buffer
b _ but how to determine *where* on object the hit occurs
ca b _ lines
ca b X rewrite line and stroke code, it's a buggy mess
ca b X lines become 2 pixels thick after a 3D transform
ca b X better handling of single-pixel special case
ca b _ flat_line_retribution is a hack, can go away
ca b _ setting stroke width on circle makes odd patterns
ca b X line endcaps and line joins. strokeMode()
ca b _ lower priority, but at least leave room
ca b ? make sure line() commands don't try to have a fill
ca b _ box is not opaque
ca b X problem is that lines are drawn second
ca b X one pixel lines have no z value.. argh
ca b X bug re: 3d depth sorting on lines
ca b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1043894019;start=0
ca b _
http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1042004618
ca b _ translate(58, 48, 0);
ca b _ rotateY(0.5);
ca b _ box(40);
ca b X concave/complex polygon
ca b _ eventually POLYGON auto-detects convex/concave polygon
ca b _ also add POLYGON_CONVEX and POLYGON_CONCAVE
ca b X clipping objects (clipping planes?)
ca b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1058491568;start=0
ca b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1052313604;start=0
ca b X things are flying into the camera and halting apps
ca b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1042699742
ca b X NullPointerException apparently when things way offscreen
ca b _ i.e. glyphrot with scale set to 4
ca b _ or at least that things get ridiculously slow
ca b _ clipping issues here.. but also something in scan converter
ca b X not clipping areas from offscreen
ca b _ huge geometry slows things way down
BAGEL / Details
1 _ why aren't cursors working on the mac?
1 _ mousePressed, keyPressed, others.. queue them all
1 _ queue multiple times
1 _ toxi ellipses don't adapt properly with transformations
1 _ what is the stroked version of a sphere? a circle?
1 _ non-homogenous coloring for curve vertices
1 _ properly interpolate
1 _ too many push() will silently stop the applet inside a loop
1 _ test winding polygons in different directions
1 _ test lighting to see how it compares with gl
1 _ better lockout inside beginShape() to keep other things from happening
1 _ is quad strip broken or not behaving as expected?
1 _ may be correct, it worked for nik
1 _ inside draw() mode, delay() does nothing
1 _ delay might be a good way to signal drawing to the screen/updating
BAGEL / Fonts
1 _ sbit font support
1 _ both reading and building sbit fonts
* _ mac -> vlw (or sbit?) font converter
* _ need to also read the fond for metrics
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
PDE - Processing Development Environment
PDE / Details
1 _ implement page setup and print
1 _ pretty printing of code in project
1 _ option to just print all code in project
1 _ option to export all the code as colored html
1 _ p5 becomes a memory hog (benelek and glen murphy)
1 _ even without sketches open, perhaps not gc'ing properly
1 _ objects probably not getting finalized
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1050134854;start=0
b _ need to check if volume is read-only, notify and quit if it is
b _ people are trying to run off the disk image
b _ need to pay attention to when running from read-only drive
b _ reported by brandenberg
b _ "p5 will launch from the disk image, but will
b _ not draw the sketch name bar doesn't appear"
1 _ size() has memory limitations (pitaru)
1 _ catch OutOfMemoryError inside size() and let the user know
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1038847001
1 _ verify editor buttons working properly
1 _ they're not.. mostly unresponsive, and often get stuck
1 _ is play button properly unhighlighting?
1 _ does it unhighlight after compile or runtime errors?
1 _ also when using draw() instead of loop()
1 _ applet needs to notify runner that it has terminated
1 _ if export fails (compile error) need deselect
1 _ only copy data files into build dir when there are changes
1 _ make sure the still relevant files aren't removed
1 _ setLastModified on the files after copying (jdk13)
1 _ better handling of AccessControlException in applets
1 _ on loadImage and loadStream
1 _ exceptions in draw() apps aren't caught
1 _ the program resize(200, 200); just does nothing (doesn't complain)
1 _ if 'void' left out before loop or setup, cryptic message about
1 _ 'constructor loop must be named Temporary_23498_2343'
1 _ add a better handler for this specific thing?
1 _ sketches can't be named starting with numbers (D.YOO)
1 _ either provide an error message or explanation for this
1 _ or allow the sketch name to be separte from the class/folder names
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1033674118
1 _ menu weirdness (benelek)
1 _ when u've got a menu open, move a cursor over the text area
1 _ and back over the menu, the text-area cursor type remains.
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1043667859
1 _ scroll bar has some painting weirdness with jedit textarea
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1042351684
1 _ rename doesn't set focus to renamer area
1 _ under windows, immediately typing after rename doesn't select it
1 _ SystemColor doesn't differentiate between menu background and top
1 _ probably fixed in swing, but we're using java.awt.Menu
1 _ test by rewriting with java.awt.Menu
1 _ some method to store a description of a sketch in its comments
1 _ then embed that into the html page
1 _ don't cache stuff from loadStrings and others
1 _ mac java vm won't give up old version of file
1 _ or use setUseCaches(false)
1 _ too many frames drawn before window visible - especially on mac
1 _ examples should be read-only
1 _ stored in a separate folder from the sketchbook
1 _ error message dialog?
1 _ maybe something that shows stack trace
1 _ with an 'email this' button? (include source code too?)
1 _ dim edit menus as appropriate during selection/no selection/etc
1 _ switch to newer syntax package from jedit cvs
1 _ is enormous horizontal scroller issue fixed properly
1 _ for title-clicking of sketch name, change to a btn
1 _ or somehow mark what it's going to do, rather than just doing it
1 _ beautify
1 _ //for (int i = 0; i < 10; i++) {
1 _ } catch (IOException e) { }
1 _ need to ignore comments.. but not those inside quotes.. oog
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067309918;start=0
1 _ ignores colons for case statements
1 _ need to tie this to the parser instead
1 _ find/replace
1 _ add support for hitting 'ESC'
1 _ option to ignore or match case
1 _ when hitting 'find', select the text in the field
1 _ give that field focus explicitly, rather than just for typing
1 _ right now, typing works, but no caret, no blue highlight
1 _ and on second find run, should instead select all the find string
1 _ so that typing will replace it directly
PDE / Font Builder
1 _ close/hide window on 'ESC'
1 _ save last used font, size, and smooth settings
1 _ maybe just hide it the window, just like find
PDE / Features
b _ some notion of plugins for pde
b _ color picker or other things written by folks
b _ add all .jar files in lib/plugins on startup
b _ make some kind of internal color picker
b _ could be a separate window that's always around if needed
b _ shortcut to walk through history, ala photoshop (ctrl-alt-z)
1 _ external editor -> add a command to launch
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1043734580;start=0
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
DISTRIBUTION
How the environment gets packed up, downloaded, and installed.
DISTRIBUTION / General
b _ need more comprehensive list of 'known bugs'
b _ need more comprehensive list of 'known suggestions'
b _ beta release will include source code
b _ write notes about running p5 on another platforms
b _ this was some feedback from running on bsd:
b _ /usr/local/jdk1.3.1/bin/java -cp lib:lib/build:lib/pde.jar:lib/kjc.jar:lib/oro.jar:java/lib/ext/comm.jar PdeBase
b _ need to use the 1.3 vm, and get a fake platform name
b _ otherwise, goes looking for lib/pde_.properties or something
1 _ if size() not found in export/compile, ask the user
1 _ size(myWidth, myHeight) -> set static var in BGraphics
1 _ for the last size that was used, use as default for fill-in field
1 o modify antlr stuff to conditionally recompile in make.sh
1 _ compile antlr inside the initial setup of the work dir
1 X done for macosx
1 _ fix this for windows and linux
DISTRIBUTION / Windows
1 _ don't force install of qtjava
1 _ this requires a separate version of bagel that doesn't use video
1 _ or a version that loads video dynamically. that kinda sucks.
1 _ maybe could even compile it in with jikes? (blech)
1 _ winamp/audio getting starved or crackly while applets running
1 _ thread priority too high? or something weird
1 _ need splash screen, startup takes a long time
1 _ tie .pde files as documents of the application
1 _ figure out proper registry key for windows
1 _ can be handled when the app first run (jni?)
1 _ write handler for main() to take document names
1 _ need document icons
1 _ add MRJOpenApplicationHandler and MRJOpenDocumentHandler
1 _ especially the open document fella
1 _ under osx, app won't get doc unless app already launched
DISTRIBUTION / Linux
b _ splash screen
DISTRIBUTION / Mac OS X
1 _ move the mac to java 1.4
1 _ 1.4 is being used externally, and wheel mouse would be nice
1 _ not doing currently, lots of strange repaint bugs
1 _ all fixable for sure, but no point before beta since low priority
b _ set nice background for disk image on macosx
1 _ random lockups seem common in 1.4
1 _ test more to see if runtime exceptions are coming through
1 _ track down error in PdeCompiler for message parsing
1 _ was missing the error about a package being gone
1 _ can comment out /System/Library/ as a test
1 _ Contents/Resources/Java can take jnilib files
1 _ set file type/creator for .pde files of examples
1 _ would be nice to have macosx packaged up as a single .app file
1 _ is there a way to set the color of the Frame growbox?
1 _ currently it's white instead of dark gray like the ui
1 _ setBackground(Color) didn't seem to help inside PdeBase.<init>
1 _ use disk:// notation as panther alternative
1 _ so that it doesn't download the disk, just mounts it
1 _ although.. this only works on panther.. how many are using it?
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
PRIORITIES
casey
_ graphics engine up to spec
_ video/net/sound up to spec
_ multiple files open
_ compile libraries within p5
ed
_ quality of compiler errors + multiple errors
_ additional class files.. .java or .pde
_ find/replace
juha
_ documenting how the environment works / is set up
amit
_ find/replace
_ println speed improvements
_ 'debug' that shows a variable (rather than many many println)
_ tabs for multiple files
zach
_ setting breakpoints / stepping through
_ useful as understanding for how program works
_ tracing like director
schoenerwissen
_ tracing variables
_ bspace object
_ 7 day search on discourse board
..................................................................
api work
ugly but no ideas yet
_ serialWrite -> sprint ?
_ noSmooth
_ noFill()
_ rectMode means rectPlacement
_ becomes a problem when strokeMode and strokeWidth are mixed
_ beginRect() beginLineLoop() et al. ?
_ begin/end.. beginSerial/endSerial ->
_ openSerial/closeSerial ?
_ startSerial/stopSerial
_ need some model for i/o that makes more sense
_ getting whole words from serial, network, and files
_ or buffers of specific length with a sync byte
_ split to take strings (ie. for ", ")
_ quicksort should probably just be made into 'sort' class
_ it's the only one ever used
_ can this be done using an inner class?
_ should BSpace be included?
_ go through examples to see if there's other annoying syntax
_ for int i for 0 to b.length
_ for i from 0 upto b.length
additions that i want
_ image(BImage, x, y, float scale) (found in illustrator stuff)
_ textrect(String text, x, y, width, height) // based on rectMode
_ textMode() for align left, center, right (no justify.. har!)
_ file i/o: file listing util that leaves out . and ..
_ rotateRight(), rotateLeft(), flipHorizontal().. etc
_ for an actual 'transformations' object
_ write tiff (or other) header for image stream
_ make a class/library for this guy
_ actionscript has nice hastables.. as does perl/python
_ would be nice to get better implementation in there
..................................................................
// notes on an implementation of a 'shape' class..
// as long as using an additional pde file...
..to still maintain rect() instead of g.rect()
..and the rest of the p5 features
// shape or "processing" means to add all kinds of methods like:
// public void point(float x, float y) { g.point(x, y); }
// and that the class 'implements' ShapeInterface..
//
shape class Something {
void setup() {
// not used, or called on first draw
// but maybe required (even if behind the scenes)
// so that this can use "implements ShapeInterface"
}
void draw() { // uses internal g. that's been set by parent
}
}
in the .pde parent:
void loop() {
shape(somethingInstance);
}
where the shape() method in BApplet looks like:
shape(ShapeInterface o) {
o.graphics(this.g); // has to be a method, since intf
o.draw();
}