]> git.llucax.com Git - z.facultad/75.62/c2tp1.git/blob - src/AngGraf.java
MVC en 4.3
[z.facultad/75.62/c2tp1.git] / src / AngGraf.java
1
2 import java.awt.*;
3 import java.awt.event.*;
4 import java.util.*;
5
6 public class AngGraf extends Frame implements Observer
7 {
8         private Panel panel;
9         private Button boton;
10         private Label label;
11         private AngCanvas canvas;
12         private Angulo angulo;
13
14         public AngGraf (Angulo f)
15         {
16                 angulo = f;
17
18                 panel = new Panel ();
19                 label = new Label(f.toString (), Label.CENTER);
20                 boton = new Button ("Mitad!");
21                 canvas = new AngCanvas (f);
22
23                 panel.setLayout (new BorderLayout ());
24                 panel.add (label, BorderLayout.NORTH);
25                 panel.add (canvas, BorderLayout.CENTER);
26                 panel.add (boton, BorderLayout.SOUTH);
27         
28                 add (panel, BorderLayout.CENTER );
29                 setSize (500, 300);
30                 setVisible (true);
31                         
32                 f.addObserver (this);
33                 f.addObserver (canvas);
34         }
35
36         public boolean action (Event evt, Object obj) {
37                 if (evt.target.equals(boton)) {
38                         angulo.fromRadianes ( angulo.toRadianes () / 2);
39                 }
40
41                 return true;
42         }
43
44         public void update(Observable obs, Object obj)
45         {
46                 label.setText (obs.toString ());
47         }
48
49         static public void main (String[] args) {
50                 Angulo modelo = null;
51                 try {
52                         modelo = new Angulo (359, 0, 0);
53                 }
54                 catch (Exception e) {
55                 }
56
57                 AngGraf vista = new AngGraf (modelo);
58         }
59 }