package lectures.oegraphics;
import util.annotations.WebDocuments;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
import lectures.recursion.Factorial;
@WebDocuments({"Lectures/Oegraphics.pptx", "Lectures/Oegraphics.pdf", "Videos/Oegraphics.avi"})
public class AppletAndApplicationFactorialGraphics extends Applet implements MouseListener,
FactorialGraphics {
int factorial = 0;
int n = 0;
public void init() {
this.addMouseListener(this);
System.out.println("init called");
}
public void paint(Graphics g) {
g.drawString("" + n, RECT_X, RECT_Y - TEXT_Y_OFFSET);
g.fillRect(RECT_X, RECT_Y, RECT_WIDTH, factorial * PIXELS_PER_INT);
}
public void mouseClicked(MouseEvent arg0) {
n++;
factorial = Factorial.factorial(n);
repaint();
}
public void mouseEntered(MouseEvent arg0) {
}
public void mouseExited(MouseEvent arg0) {
}
public void mousePressed(MouseEvent arg0) {
}
public void mouseReleased(MouseEvent arg0) {
}
public static void main (String args[]) {
JFrame frame = new JFrame();
Applet applet = new AppletAndApplicationFactorialGraphics();
applet.init();
frame.add(applet);
frame.setSize(360, 240);
frame.setVisible(true);
}
}