package hype;

import hype.behavior.HTween;
import hype.drawable.HDrawable;
import hype.drawable.HPath;
import hype.drawable.HRect;
import hype.interfaces.HCallback;
import hype.util.H;
import processing.core.PApplet;

public class DummyApplet extends PApplet {
	private static final long serialVersionUID = 1L;
	
	/* TODO
	 * - [x] HDrawable.proportional()
	 * - [x] remove HPath.preserveSizeRatio()
	 * - [x] HMouse._started tweaks
	 * - [x] Z-axis on HDrawable
	 * - [x] HDrawable.paintAll( ... boolean usesZ )
	 * - [x] HCanvas.graphics()
	 * - [x] flipping via width() & height() / allow negative width & height
	 * 	- [x] HImage
	 * 	- [x] HPath
	 * 	- [x] HShape
	 * 	- [x] HText
	 * - [x] Z-axis on HSwarm & HLocatable
	 * - [x] Renderers for HCanvas
	 * - [x] Pre-clear the _graphics in HCanvas
	 * - [x] Call loadPixels on hasFade
	 * - [x] HBundle shortcuts for HDrawable
	 * - [x] HTween
	 * 
	 * - [ ] pointInScreen
	 * - [ ] HShape hit detection + pgraphics buffer
	 * - [ ] use pgraphics buffer for HText
	 * - [ ] child-passable transformations
	 * - [ ] disable style for HShape in P3D
	 * 
	 * - [ ] HDrawable.firstChild(), HDrawable.lastChild();
	 * - [ ] issue #10 (make HVector a PVector container instead of subclass)
	 * - [ ] HMouse flags
	 * - [ ] protected HDrawable.onSizeChange();
	 * - [ ] migration of math calls to java.lang.Math
	 * - [ ] privatize fields for non-subclassed classes
	 * - [ ] refactor HOscillator
	 * - [ ] negative ease on stuff
	 * - [ ] use int ratios instead of float for HTween
	 * 
	 * - [ ] Standardize boolean getters
	 */
	
	@Override
	public void setup() {
		size(512,512);
		H.init(this);
		
		HDrawable d = H.add(new HRect()).locAt(H.BOTTOM_RIGHT).move(-64,-64);
		new HTween().target(d).property(H.LOCATION).ease(.01f).spring(0.9f).start(width,height).end(width/2,height/2).callback(new HCallback() {
			
			@Override
			public void run(Object obj) {
				System.out.println("Hey");
			}
		});
		H.add(new HPath().vertex(0,height/2).vertex(width,height/2).endPath());
		H.add(new HPath().vertex(width/2,0).vertex(width/2,height).endPath());
	}
	
	@Override
	public void draw() {
		H.drawStage();
	}
}

@@ -327,43 +327,40 @@
  - %5B
-x%5D HDrawable.proportional()
+ %5D 2d point from 3d%0A%09 * 
 %0A%09 * - %5B
 x%5D r
@@ -359,84 +359,58 @@
  - %5B
-x%5D remove HPath.preserveSizeRatio()%0A%09 * - %5Bx%5D HMouse._started tweaks
+ %5D HShape hit detection + pgraphics buffer
 %0A%09 * - %5B
 x%5D Z
@@ -409,38 +409,49 @@
  - %5B
-x%5D Z-axis on HDrawable
+ %5D use pgraphics buffer for HText
 %0A%09 * - %5B
 x%5D H
@@ -450,58 +450,46 @@
  - %5B
-x%5D HDrawable.paintAll( ... boolean usesZ )
+ %5D bezier stuff for HPath%0A%09 * 
 %0A%09 * - %5B
 x%5D H
@@ -488,37 +488,26 @@
  - %5B
-x%5D HCanvas.graphics()
+ %5D masking
 %0A%09 * - %5B
 x%5D f
@@ -506,100 +506,98 @@
  - %5B
-x%5D flipping via width() & height() / allow negative width & height%0A%09 * %09- %5Bx%5D HIm
+ %5D Proximity%0A%09 * - %5B %5D Adjuster%0A%09 * %09- drawable.adjuster(true)%0A%09 * %09- move on dr
 ag
-e
 %0A%09 * %09- 
 %5Bx%5D 
@@ -596,60 +596,48 @@
  %09- 
-%5Bx%5D HPath%0A%09 * %09- %5Bx%5D HShape%0A%09 * %09- %5Bx%5D HText
+delete = remove from parent%0A%09 * 
 %0A%09 * - %5B
 x%5D Z
@@ -636,36 +636,45 @@
  - %5B
-x%5D Z-axis on HSwarm & HLocat
+ %5D recursive spatial transforms HDraw
 able
@@ -685,113 +685,97 @@
  - %5B
-x%5D Renderers for HCanvas%0A%09 * - %5Bx%5D Pre-clear the _graphics in HCanvas%0A%09 * - %5Bx%5D Call loadPixels on hasFad
+ %5D recursive stuff for HGroup / child-passable transformations%0A%09 * %0A%09 * - %5B %5D DepthShuffl
 e%0A%09 
@@ -783,41 +783,67 @@
  - %5B
-x%5D HBundle shortcuts for HDrawabl
+ %5D H.capture(%3Cinput event%3E, %3Cfilename%3E) capture static fram
 e%0A%09 
@@ -851,178 +851,278 @@
  - %5B
-x%5D HTween%0A%09 * %0A%09 * - %5B %5D pointInScreen%0A%09 * - %5B %5D HShape hit detection + pgraphics buffer%0A%09 * - %5B %5D use pgraphics buffer for HText%0A%09 * - %5B %5D child-passable transformations
+ %5D H.capture(%3Cstart%3E,%3Cend%3E,%3Cfilename%3E) capture sequence of frames%0A%09 * - %5B %5D capture pdf (keep copies when moving for the pdf export OR keep a record of past transforms)%0A%09 * - %5B %5D HVelocity examples (check AS3::SimpleBallistic)%0A%09 * - %5B %5D check AS3::Vibration classes%0A%09 * 
 %0A%09 *
@@ -1590,24 +1590,53 @@
 HTween%0A%09 * %0A
+%09 * - %5B %5D AS3::SoundAnalyzer%0A
 %09 * - %5B %5D St

update TODO list