mirror of
https://github.com/processing/processing4.git
synced 2026-02-01 12:51:37 +01:00
cleanup after japan
This commit is contained in:
82
processing/todo.txt
Normal file
82
processing/todo.txt
Normal file
@@ -0,0 +1,82 @@
|
||||
ENV
|
||||
_ env. toggle for showing a function name each time its hit
|
||||
_ env. toggle for showing line numbers within a function
|
||||
_ i'm here messages, tie in with breakpoints for debugger
|
||||
_ lightweight debugger, doesn't slow down, runs in back
|
||||
_ env. toggle to show attr/value for some var in simple way
|
||||
_ comments as debugging descriptors, output to console, shown in context
|
||||
_ comments as naming for shapes drawn after it,
|
||||
_ or some other model of naming based on inserted text with "" or // or #
|
||||
_ could fit nicely with printf-style statements and comments
|
||||
_ comments would contain descriptions //!blah for printing and formatting
|
||||
_ sketchbook - doodling/scribbling area.. since wacom tablet easily accessible
|
||||
|
||||
|
||||
PROCESSING - HIGH (finish these sunday, before class)
|
||||
_ kill button (without stop) doesn't clear play
|
||||
_ running out of memory, presumably b/c applets not being cleared
|
||||
_ figure out why threads aren't actually dying
|
||||
_ disassociate processing applet with a window on stop?
|
||||
_ possible to maintain bagel, but kill applet?
|
||||
_ or copy bagel's image, and kill that too?
|
||||
_ put debugging stuff back into Kjc (i disabled some stuff)
|
||||
_ make tab key work
|
||||
_ include auto-indent?
|
||||
_ convert documentation to html
|
||||
_ what happens if size() not called inside setup() ?
|
||||
_ when using draw() instead of loop()
|
||||
_ applet needs to notify runner that it has terminated
|
||||
_ image grabbing code (write to tiff)
|
||||
_ multiple types of KjcEngine (so that simplest model is available)
|
||||
_ tweak updater a little bit so it's more likely to work
|
||||
_ use numbered versioning?
|
||||
_ anti-aliasing
|
||||
_ alpha
|
||||
|
||||
|
||||
PROCESSING - MEDIUM
|
||||
_ per-vertex shading doesn't work
|
||||
_ the lights prolly shouldn't follow objects around
|
||||
_ work on courseware applet code signing
|
||||
_ why is z going negative, seems weird
|
||||
_ maybe view needs to go from -100 to 100 with zero at screen plane
|
||||
_ code to save a project to the main machine
|
||||
_ setting up 'project' directories
|
||||
_ delayUntil would be nice to have
|
||||
_ but at some point there has to be a cutoff
|
||||
_ have a library of useful code that people can add to programs
|
||||
_ otherwise things are too simple, and env is a crutch
|
||||
_ courseware menu
|
||||
_ list of 'people' and 'projects'; refresh
|
||||
_ based on local dir named 'projects' or 'sketchbook'?
|
||||
_ copyPixel(x, y, to_x, to_y)
|
||||
_ copyArea(x, y, w, h, to_x, to_y)
|
||||
_ copyImage(image, x, y, w, h, to_x, to_y)
|
||||
_ lesson plans (easier to translate)
|
||||
_ write example applets in processing
|
||||
_ courseware system
|
||||
_ uploading pieces when finished - scrapbook/sketchbook model?
|
||||
_ download new versions of pde.jar from main machine
|
||||
_ some kind of text
|
||||
_ setup imrf linux machine?
|
||||
_ quicktime exporter or image sequence export
|
||||
_ nice to have a random number generator between -1..1
|
||||
_ as well as an integer random; instead of just 0..1
|
||||
_ show creas how to get access to cvs
|
||||
_ how to use ssh identity file to maintain auth for brancusi
|
||||
|
||||
|
||||
PROCESSING - LOWER
|
||||
_ move math functions into utility library associated
|
||||
_ with bagel, because those will be useful on other bagel platforms
|
||||
_ perlin noise function
|
||||
_ give updater feedback (progress dialog, error msg)
|
||||
_ get proce55ing.net, make that the target launch site
|
||||
_ make some kind of internal color picker
|
||||
_ could be a separate window that's always around if needed
|
||||
_ write a dbn compatability mode (forever() instead of loop() ?)
|
||||
_ save window x, y, width, height to pde.properties on exit
|
||||
_ bagelpublic.pl: open ProcessingApplet, rewrite after special token
|
||||
_ look at glut for other needed shapes
|
||||
_ make PdeEditorButtons wait until mouseup to change
|
||||
_ (currently doesn't feel as good as it could)
|
||||
BIN
processing/tools/maclf/MacLF.class
Normal file
BIN
processing/tools/maclf/MacLF.class
Normal file
Binary file not shown.
126
processing/tools/maclf/MacLF.java
Normal file
126
processing/tools/maclf/MacLF.java
Normal file
@@ -0,0 +1,126 @@
|
||||
import java.io.*;
|
||||
|
||||
|
||||
public class MacLF
|
||||
{
|
||||
static final int MAC = 0;
|
||||
static final int UNIX = 1;
|
||||
static final int WINDOWS = 2;
|
||||
|
||||
static public void main(String args[]) {
|
||||
if (args.length == 0) {
|
||||
System.err.println("maclf <filename>");
|
||||
System.exit(0);
|
||||
}
|
||||
int kind = MAC;
|
||||
|
||||
for (int i = 0; i < args.length; i++) {
|
||||
File file = new File(args[i]);
|
||||
if (file.isDirectory()) {
|
||||
dir(file, kind);
|
||||
} else {
|
||||
load(file, kind);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static public void dir(File dir, int kind) {
|
||||
String files[] = dir.list();
|
||||
for (int i = 0; i < files.length; i++) {
|
||||
File file = new File(dir, files[i]);
|
||||
if (file.isDirectory()) {
|
||||
dir(file, kind);
|
||||
} else {
|
||||
load(file, kind);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static public void load(File file, int kind) {
|
||||
try {
|
||||
if (file.isDirectory()) {
|
||||
String list[] = file.list();
|
||||
for (int i = 0; i < list.length; i++) {
|
||||
load(new File(file, list[i]), kind);
|
||||
}
|
||||
} else {
|
||||
new MacLF(file, kind);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.err.println(file);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public MacLF(File file, int outputKind)
|
||||
throws FileNotFoundException, IOException {
|
||||
String path = null;
|
||||
try {
|
||||
path = file.getCanonicalPath();
|
||||
} catch (IOException e) {
|
||||
path = file.getPath();
|
||||
}
|
||||
FileInputStream input = new FileInputStream(file);
|
||||
byte data[] = null;
|
||||
data = readBytes(input, 0, (int)file.length());
|
||||
input.close();
|
||||
|
||||
File tempFile = new File(path + ".temp");
|
||||
FileOutputStream output = null;
|
||||
output = new FileOutputStream(tempFile);
|
||||
for (int i = 0; i < data.length; i++) {
|
||||
if (data[i] == 10) {
|
||||
// got a unix lf
|
||||
outputLF(output, outputKind);
|
||||
} else if (data[i] == 13) {
|
||||
// mac or windows
|
||||
outputLF(output, outputKind);
|
||||
if (((i + 1) != data.length) &&
|
||||
(data[i+1] == 10)) {
|
||||
// windows, skip LF after CR
|
||||
i++;
|
||||
}
|
||||
} else {
|
||||
output.write(data[i]);
|
||||
}
|
||||
}
|
||||
output.flush();
|
||||
output.close();
|
||||
if (!file.delete()) {
|
||||
System.err.println("Could not delete original file.");
|
||||
} else {
|
||||
if (!tempFile.renameTo(file)) {
|
||||
System.err.println("Could not rename temp file.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected void outputLF(OutputStream output, int outputKind)
|
||||
throws IOException {
|
||||
if (outputKind == UNIX) {
|
||||
output.write(10);
|
||||
} else if (outputKind == WINDOWS) {
|
||||
output.write(13);
|
||||
output.write(10);
|
||||
} else if (outputKind == MAC) {
|
||||
output.write(13);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static public byte[] readBytes(InputStream input, int start, int length)
|
||||
throws IOException
|
||||
{
|
||||
byte[] returning = new byte[length];
|
||||
|
||||
while (true) {
|
||||
int byteCount = input.read(returning, start, length);
|
||||
if (byteCount <= 0)
|
||||
break;
|
||||
|
||||
start += byteCount;
|
||||
length -= byteCount;
|
||||
}
|
||||
return returning;
|
||||
}
|
||||
}
|
||||
BIN
processing/tools/maclf/maclf.exe
Executable file
BIN
processing/tools/maclf/maclf.exe
Executable file
Binary file not shown.
3
processing/tools/maclf/make.bat
Executable file
3
processing/tools/maclf/make.bat
Executable file
@@ -0,0 +1,3 @@
|
||||
@echo off
|
||||
jikes *.java
|
||||
jexegen /nologo /out:maclf.exe /main:MacLF MacLF.class
|
||||
Reference in New Issue
Block a user