diff --git a/app/Sketchbook.java b/app/Sketchbook.java index d8a7102c7..ed39b66e1 100644 --- a/app/Sketchbook.java +++ b/app/Sketchbook.java @@ -23,6 +23,8 @@ package processing.app; +//import processing.core.PApplet; + import java.awt.*; import java.awt.event.*; import java.io.*; @@ -433,25 +435,8 @@ public class Sketchbook { if (list == null) return false; // alphabetize list, since it's not always alpha order - // use cheapie bubble-style sort which should be fine - // since not a tone of files, and things will mostly be sorted - // or may be completely sorted already by the os - for (int i = 0; i < list.length; i++) { - int who = i; - for (int j = i+1; j < list.length; j++) { - if (list[j].compareToIgnoreCase(list[who]) < 0) { - who = j; // this guy is earlier in the alphabet - } - } - if (who != i) { // swap with someone if changes made - String temp = list[who]; - list[who] = list[i]; - list[i] = temp; - } - } - - //SketchbookMenuListener listener = - //new SketchbookMenuListener(folder.getAbsolutePath()); + // replaced hella slow bubble sort with this feller for 0093 + Arrays.sort(list, String.CASE_INSENSITIVE_ORDER); ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -466,7 +451,7 @@ public class Sketchbook { list[i].equals("CVS")) continue; File subfolder = new File(folder, list[i]); - File lib = new File(subfolder, "library"); + //File lib = new File(subfolder, "library"); File entry = new File(subfolder, list[i] + ".pde"); // if a .pde file of the same prefix as the folder exists.. if (entry.exists()) { @@ -488,7 +473,8 @@ public class Sketchbook { menu.add(item); ifound = true; - } else { // might contain other dirs, get recursive + } else if (subfolder.isDirectory()) { // only follow if a dir + // get recursive JMenu submenu = new JMenu(list[i]); // needs to be separate var // otherwise would set ifound to false @@ -512,22 +498,8 @@ public class Sketchbook { if (list == null) return false; // alphabetize list, since it's not always alpha order - // use cheapie bubble-style sort which should be fine - // since not a tone of files, and things will mostly be sorted - // or may be completely sorted already by the os - for (int i = 0; i < list.length; i++) { - int who = i; - for (int j = i+1; j < list.length; j++) { - if (list[j].compareToIgnoreCase(list[who]) < 0) { - who = j; // this guy is earlier in the alphabet - } - } - if (who != i) { // swap with someone if changes made - String temp = list[who]; - list[who] = list[i]; - list[i] = temp; - } - } + // replaced hella slow bubble sort with this feller for 0093 + Arrays.sort(list, String.CASE_INSENSITIVE_ORDER); ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -577,7 +549,7 @@ public class Sketchbook { menu.add(item); ifound = true; - } else { // might contain other dirs, get recursive + } else if (subfolder.isDirectory()) { JMenu submenu = new JMenu(list[i]); // needs to be separate var // otherwise would set ifound to false diff --git a/core/todo.txt b/core/todo.txt index 2ac55b42f..53ca3684f 100644 --- a/core/todo.txt +++ b/core/todo.txt @@ -5,6 +5,29 @@ X http://192.18.37.44/forums/index.php?topic=1596.msg79680#msg79680 X faster blur code contributed by toxi X filter(ERODE) and filter(DILATE) contributed by toxi +nixed or fixed in previous releases +X textMode(SCREEN) having issues on Mac OS X +X seem to be problems with updatePixels() on the mac +X appears to run asynchronously +X move zbuffer et al into PGraphics so that people don't have to cast to P3 +X http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1116978834 +o noLoop() is behaving strangely +o http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1116002432;start=0 + +_ prevent PGraphics.save() from inserting a file prefix +_ so that people can use absolute paths +_ or add a version that takes a file object + +_ recordFrame() and beginFile()/endFile() +_ finalize api with more work on multi-page pdf +_ how to deal with triangles/lines and triangleCount and lineCount +_ maybe just need a triangleImpl and lineImpl +_ because it's too messy to retain the triangle objects and info +_ when using things like PGraphicsPDF, need to not resize window +_ if it doesn't display to the screen, needs to never show a window +_ basically if the main gfx context isn't viewable, close the window +_ since it may have already been opened at 100x100 + _ get creating new PGraphics/2/3 working again _ http://dev.processing.org/bugs/show_bug.cgi?id=92 _ maybe createGraphics(200, 200) to create same as source @@ -12,26 +35,20 @@ _ createGraphics(200, 200, P2D) to create 2D from 3D _ also, drawing a PGraphics2 doesn't seem to work _ new PGraphics2 objects are set as RGB, but on loadPixels/updatePixels _ they're drawn as transparent and don't have their high bits set +_ why aren't background() / defaults() being called for opengl? +_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1118784331 + +_ sonia is locking up on load in rev 91 +_ prolly something w/ the threading issues +_ http://dev.processing.org/bugs/show_bug.cgi?id=46 + + +. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -_ change how java version is determined on mac -_ http://developer.apple.com/technotes/tn2002/tn2110.html -_ (this tn provides no guidance for macos8/9.. gah) _ PApplet.main(new String[] { "classname }) won't pass in args.. grr _ PApplet.main(append(new String[] { "classname }, args)); -_ leading looks too big, at least in PGraphics2 with news gothic -_ though it may be the converted version of the .ttf? - -_ when using things like PGraphicsPDF, need to not resize window -_ if it doesn't display to the screen, needs to never show a window -_ basically if the main gfx context isn't viewable, close the window -_ since it may have already been opened at 100x100 - -_ how to deal with triangles/lines and triangleCount and lineCount -_ maybe just need a triangleImpl and lineImpl -_ because it's too messy to retain the triangle objects and info - _ need to test/straighten out load/update pixels _ loadPixels() and updatePixels() only need to be used when _ touching pixels[]. All other functions including get(), set(), @@ -46,14 +63,6 @@ _ if (modified) don't loadPixels again, just ignore it _ make a note that updatePixels() only sets a flag in PImage _ (but not PGraphics, which does it immediately) -_ why aren't background() / defaults() being called for opengl? -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1118784331 - -_ P3D not doing bilinear interpolation in text and images -_ because smooth() has to be set (and smooth throws an error in P3D) -_ how should this be handled? a hint? allowing smooth()? -_ probably just allow smooth() but don't smooth anything - //////////////////////////////////////////////////////////////////// @@ -70,10 +79,11 @@ CORE / PApplet _ typed version of array functions: _ append(), shorten(), splice, slice, subset, concat, reverse -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Suggestions;action=display;num=1118520656;start=0 -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Suggestions;action=display;num=1114443601;start=0 +_ http://dev.processing.org/bugs/show_bug.cgi?id=115 _ would be cool if could sort w/o the sort class.. _ meaning use reflection to sort objects, just by implementing a few methods +_ would be much simpler and less confusing than new Sort() etc +_ or would it be ridiculously slow? _ make a PException that extends RuntimeException but packages an ex? _ http://java.sun.com/docs/books/tutorial/essential/exceptions/runtime.html _ is mousePressed broken with noLoop() or redraw()? @@ -100,8 +110,8 @@ _ app might exit before the file has finished writing to disk _ need to block other activity inside screenGrab until finished _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081706752 _ problems with defining fill(255) vs fill(0xff808080) -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083650609;start=0 -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1082481891;start=2 +_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083650609 +_ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1082481891 _ too many push() will silently stop the applet inside a loop _ test winding polygons in different directions _ test lighting to see how it compares with gl @@ -139,8 +149,6 @@ _ files not in the data folder (works in env, not in sketch) CORE / PApplet - main() -_ noLoop() is behaving strangely -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1116002432;start=0 _ present mode is flakey.. applet doesn't always come up _ seems like hitting stop helps shut it down? _ is full screen window not being taken down properly? @@ -167,6 +175,8 @@ _ how to shut off the cmd-q when running externally on osx? CORE / PFont and text() +_ leading looks too big, at least in PGraphics2 with news gothic +_ though it may be the converted version of the .ttf? _ font encoding issues _ java seems to force straight windows encoding.. (problem for pi fonts) _ opentype/cff fonts don't work with live loading from the app @@ -353,19 +363,21 @@ g2.draw(gp); CORE / PGraphics3 -_ move zbuffer et al into PGraphics so that people don't have to cast to P3 -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1116978834;start=0#1 -_ concave polygons having trouble if points come back to meet -_ http://dev.processing.org/bugs/show_bug.cgi?id=97 -_ ortho() is doing things strangely -_ seems to be mapping to 0, 0 - width/2, height/2 -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115919744;start=0 -_ tesselator/triangulator gets confused when points doubled up -_ might need to avoid previous vertex hitting itself _ polygons perpendicular to axis not drawing _ is this a clipping error? _ probably a triangulation error, because triangles work ok -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114158993 +_ http://dev.processing.org/bugs/show_bug.cgi?id=111 +_ concave polygons having trouble if points come back to meet +_ tesselator/triangulator gets confused when points doubled up +_ might need to avoid previous vertex hitting itself +_ http://dev.processing.org/bugs/show_bug.cgi?id=97 +_ P3D not doing bilinear interpolation in text and images +_ because smooth() has to be set (and smooth throws an error in P3D) +_ how should this be handled? a hint? allowing smooth()? +_ probably just allow smooth() but don't smooth anything +_ ortho() is doing things strangely +_ seems to be mapping to 0, 0 - width/2, height/2 +_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115919744;start=0 _ odd error with some pixels from images not drawing properly _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115681453 _ when turning smoothing on, internal lines of shapes are visible @@ -484,15 +496,14 @@ _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action CORE / Documentation _ write documentation on general use of processing.core -_ along with how to download from sourceforge (anonpass is blank) _ note that applet is itself a Component CORE / Mac OS X -_ textMode(SCREEN) having issues on Mac OS X -_ seem to be problems with updatePixels() on the mac -_ appears to run asynchronously +_ change how java version is determined on mac +_ http://developer.apple.com/technotes/tn2002/tn2110.html +_ (this tn provides no guidance for macos8/9.. gah) _ little window showing up on macosx when running _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081284410 _ flicker happening on osx java 1.4, but not 1.3: @@ -502,6 +513,7 @@ _ or is it a java 1.4 versus java 1.3 problem? _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081645955 + //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// diff --git a/todo.txt b/todo.txt index cedbcbd64..48abe63a6 100644 --- a/todo.txt +++ b/todo.txt @@ -22,6 +22,11 @@ X not gonna do this, p5 is not a java editor o if a .pde isn't contained in a properly named folder o offer to rename the parent folder, rather than placing in a new folder X make a note that video doesn't currently work in applets in the faq +X scanning sketchbook folder may be extremely slow +X when lots of frames saved out, takes forever to scan the folder +X some dumb sorting code was responsible +X and each file was being treated as a directory. oops. +X http://dev.processing.org/bugs/show_bug.cgi?id=84 fixed in previous releases X closing window w/o first hitting stop() causes freak out @@ -38,20 +43,15 @@ X could this be dealt with by using nio? X host environment will be running 1.4 so... +_ properly handle non-ascii chars in p5 folder name +_ http://dev.processing.org/bugs/show_bug.cgi?id=49 +_ or at least warn the user to install somehwere else _ faq: "my applet doesn't work on export"... where to check for errors _ very common: cached version is being used _ go through methods to properly flush the cache _ can also just change the name -_ prevent PGraphics.save() from inserting a file prefix -_ so that people can use absolute paths -_ or add a version that takes a file object -_ name Le'o is a problem on osx -_ http://processing.org/bugs/show_bug.cgi?id=49 -_ sonia is locking up on load in rev 91 -_ prolly something w/ the threading issues -_ http://dev.processing.org/bugs/show_bug.cgi?id=46 _ rebuild jikes with --enable-static --disable-shared _ http://dev.processing.org/bugs/show_bug.cgi?id=47 @@ -60,33 +60,38 @@ _ make a note in the library howto about using something besides p5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -cat blah.patch | patch -p1 - bugzilla problems -"back to bug #110" should be on one line -text fields on "post bug" won't let me click - (i.e. "Reassign but to" and "duplicate of bug #" - continually de-select themselves so i can't paste or type text -remove "platform" and "severity".. set them to "all" and "normal" -collapse OS into: Mac OS, Windows, Linux, Other - while other categories might exist, it's too confusing for minimal benefit -buglist.cgi: sorting based on any of the headings gives an error -buglist.cgi: "102 bugs found. 102 bugs found." -link to list all bugs +X localconfig has been modified, need to update for everything +_ "back to bug #110" should be on one line +_ text fields on "post bug" won't let me click +_ (i.e. "Reassign but to" and "duplicate of bug #") +_ continually de-select themselves so i can't paste or type text +_ remove "platform" and "severity".. set them to "all" and "normal" +_ buglist.cgi +_ replace the platform column with the os column (uses icons for os) +_ sorting based on any of the headings gives an error +_ "102 bugs found. 102 bugs found." +_ remove the severity column +_ it's normal or enhanced, and enhanced is already gray +X make os into: Mac OS, Windows, Linux, Other +X while other categories might exist, it's too confusing for minimal benefit +o make things that are P5 into "enhancement" +o unless a P6 can be added? or something called "enhancement"? +_ link to list all bugs (especially sorted by priority) -_ package macosx with a dmg -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Suggestions;action=display;num=1116065054 -_ don't allow subfolders inside the sketchbook folder +_ don't allow subfolders forever inside the sketchbook folder _ once a sketch is found, don't recurse deeper _ same for libraries, cuz this makes a mess _ (do this right after rev 91 release... could break things) _ make simple tool for casey to rebuild all the examples at once +_ first select a folder, then will open each sketch in turn, and export _ just make it easier to go to the next sketch _ need to rebuild with this release because of 1.3/1.4 issues _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=WebsiteBugs;action=display;num=1117258456 + _ emacs keybindings _ general (easier to support) _ ctrl-space to set selection start @@ -458,10 +463,6 @@ _ http://processing.org/bugs/show_bug.cgi?id=82 _ "save as" shouldn't show always show save as dialog _ unless that's the current mode that's being used _ http://processing.org/bugs/show_bug.cgi?id=83 -_ scanning sketchbook folder may be extremely slow -_ not sure why this would be the case -_ when lots of frames saved out, takes forever to scan the folder -_ http://processing.org/bugs/show_bug.cgi?id=84 _ handle renaming with case changes (currently ignores case change) _ see notes/bitching in Sketch.nameCode() _ http://processing.org/bugs/show_bug.cgi?id=85 @@ -647,9 +648,6 @@ _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;acti _ figure out proper registry key for windows _ can be handled when the app first run (jni?) _ write handler for main() to take document names -_ properly handle non-ascii chars in p5 folder name -_ http://dev.processing.org/bugs/show_bug.cgi?id=49 -_ or at least warn the user to install somehwere else _ track down the cause of the processing.exe not starting bugs _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1062794781 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067764732 @@ -673,6 +671,8 @@ _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs DIST / Mac OS X +_ package macosx with a dmg +_ http://dev.processing.org/bugs/show_bug.cgi?id=116 _ set nice background for disk image on macosx _ test more to see if runtime exceptions are coming through _ track down error in PdeCompiler for message parsing