public void paintComponent(Graphics g) {
		super.paintComponent(g);
		
		if (transformNeedsReform)
			reformTransform(new Rectangle(getSize()));
		g.setColor(java.awt.Color.white);
		g.fillRect(0, 0, getSize().width, getSize().height);
		Graphics2D g2 = (Graphics2D) g;

		g2.transform(transform);
		drawer.drawAutomaton(g);

		//g2.translate(-transform.getTranslateX(), -transform.getTranslateY());
		//g2.scale(1.0/transform.getScaleX(), 1.0/transform.getScaleY());
		//reposition the notes on scroll...since I can't figure out where it is scrolling, I do it here.
		ArrayList notes = this.getDrawer().getAutomaton().getNotes();
		for(int k = 0; k < notes.size(); k++){
			Note curNote = (Note)notes.get(k);
			curNote.updateView();	
		}
		

		//g2.translate(transform.getTranslateX(), transform.getTranslateY());
		//g2.scale(transform.getScaleX(), transform.getScaleY());
	}