xref: /aosp_15_r20/external/javassist/sample/duplicate/Viewer.java (revision f1fbf3c2ab775ce834e0af96b7a85bdc7a0eac65)
1*f1fbf3c2SXin Li package sample.duplicate;
2*f1fbf3c2SXin Li 
3*f1fbf3c2SXin Li import java.applet.*;
4*f1fbf3c2SXin Li import java.awt.*;
5*f1fbf3c2SXin Li import java.awt.event.*;
6*f1fbf3c2SXin Li 
7*f1fbf3c2SXin Li public class Viewer extends Applet
8*f1fbf3c2SXin Li     implements MouseListener, ActionListener, WindowListener
9*f1fbf3c2SXin Li {
10*f1fbf3c2SXin Li     private static final Color[] colorList = {
11*f1fbf3c2SXin Li 	Color.orange, Color.pink, Color.green, Color.blue };
12*f1fbf3c2SXin Li 
13*f1fbf3c2SXin Li     private Ball ball;
14*f1fbf3c2SXin Li     private int colorNo;
15*f1fbf3c2SXin Li 
init()16*f1fbf3c2SXin Li     public void init() {
17*f1fbf3c2SXin Li 	colorNo = 0;
18*f1fbf3c2SXin Li 	Button b = new Button("change");
19*f1fbf3c2SXin Li 	b.addActionListener(this);
20*f1fbf3c2SXin Li 	add(b);
21*f1fbf3c2SXin Li 
22*f1fbf3c2SXin Li 	addMouseListener(this);
23*f1fbf3c2SXin Li     }
24*f1fbf3c2SXin Li 
start()25*f1fbf3c2SXin Li     public void start() {
26*f1fbf3c2SXin Li 	ball = new Ball(50, 50);
27*f1fbf3c2SXin Li 	ball.changeColor(colorList[0]);
28*f1fbf3c2SXin Li     }
29*f1fbf3c2SXin Li 
paint(Graphics g)30*f1fbf3c2SXin Li     public void paint(Graphics g) {
31*f1fbf3c2SXin Li 	ball.paint(g);
32*f1fbf3c2SXin Li     }
33*f1fbf3c2SXin Li 
mouseClicked(MouseEvent ev)34*f1fbf3c2SXin Li     public void mouseClicked(MouseEvent ev) {
35*f1fbf3c2SXin Li 	ball.move(ev.getX(), ev.getY());
36*f1fbf3c2SXin Li 	repaint();
37*f1fbf3c2SXin Li     }
38*f1fbf3c2SXin Li 
mouseEntered(MouseEvent ev)39*f1fbf3c2SXin Li     public void mouseEntered(MouseEvent ev) {}
40*f1fbf3c2SXin Li 
mouseExited(MouseEvent ev)41*f1fbf3c2SXin Li     public void mouseExited(MouseEvent ev) {}
42*f1fbf3c2SXin Li 
mousePressed(MouseEvent ev)43*f1fbf3c2SXin Li     public void mousePressed(MouseEvent ev) {}
44*f1fbf3c2SXin Li 
mouseReleased(MouseEvent ev)45*f1fbf3c2SXin Li     public void mouseReleased(MouseEvent ev) {}
46*f1fbf3c2SXin Li 
actionPerformed(ActionEvent e)47*f1fbf3c2SXin Li     public void actionPerformed(ActionEvent e) {
48*f1fbf3c2SXin Li 	ball.changeColor(colorList[++colorNo % colorList.length]);
49*f1fbf3c2SXin Li 	repaint();
50*f1fbf3c2SXin Li     }
51*f1fbf3c2SXin Li 
windowOpened(WindowEvent e)52*f1fbf3c2SXin Li     public void windowOpened(WindowEvent e) {}
53*f1fbf3c2SXin Li 
windowClosing(WindowEvent e)54*f1fbf3c2SXin Li     public void windowClosing(WindowEvent e) {
55*f1fbf3c2SXin Li 	System.exit(0);
56*f1fbf3c2SXin Li     }
57*f1fbf3c2SXin Li 
windowClosed(WindowEvent e)58*f1fbf3c2SXin Li     public void windowClosed(WindowEvent e) {}
59*f1fbf3c2SXin Li 
windowIconified(WindowEvent e)60*f1fbf3c2SXin Li     public void windowIconified(WindowEvent e) {}
61*f1fbf3c2SXin Li 
windowDeiconified(WindowEvent e)62*f1fbf3c2SXin Li     public void windowDeiconified(WindowEvent e) {}
63*f1fbf3c2SXin Li 
windowActivated(WindowEvent e)64*f1fbf3c2SXin Li     public void windowActivated(WindowEvent e) {}
65*f1fbf3c2SXin Li 
windowDeactivated(WindowEvent e)66*f1fbf3c2SXin Li     public void windowDeactivated(WindowEvent e) {}
67*f1fbf3c2SXin Li 
main(String[] args)68*f1fbf3c2SXin Li     public static void main(String[] args) {
69*f1fbf3c2SXin Li 	Frame f = new Frame("Viewer");
70*f1fbf3c2SXin Li 	Viewer view = new Viewer();
71*f1fbf3c2SXin Li 	f.addWindowListener(view);
72*f1fbf3c2SXin Li 	f.add(view);
73*f1fbf3c2SXin Li 	f.setSize(300, 300);
74*f1fbf3c2SXin Li 	view.init();
75*f1fbf3c2SXin Li 	view.start();
76*f1fbf3c2SXin Li 	f.setVisible(true);
77*f1fbf3c2SXin Li     }
78*f1fbf3c2SXin Li }
79