Title: Figura Component
1FiguraltltComponentgtgt
Rectangle areaPresentacion boolean
seleccionada Vector observers clone() dibujar(Gr
aphics g) dibujarSeleccion(Graphics
g) cambiarAreaPresentacion(Point p1, Point
p2) Rectangle getAreaPresentacion() setSeleccionad
a(boolean) Dimensiones getDimensiones() notificar(
) contienePunto(Point p) boolean
esFiguraVacia() mover (int dx, int
dy) registrarObservador(Observer) eliminarObservad
or(Observer) añadirFigura(Figura f)
java.awt.Rectangle java.awt.Point Observer
2VentanaEditor
Dibujo areaDibujo actionPerformed(ActionEvent e)
Dibujo BotonHerramienta java.awt.event.ActionEvent
3GrupoFigurasltltCompositegtgt
ltltInterfaz heredada de figuragtgt
4DibujoltltClientgtgt
VectorltFiguragt listaFiguras GrupoFiguras
grupo Herramienta herramientaActiva insertarFigur
a(Figura f) Figura eliminarFigura(Figura
f) insertarFiguraGrupo(Figura f) Figura
encuentraFigura(Point) paintComponent(Graphics
g) setHerramientaActiva(Herramienta) void
mousePressed(MouseEvent e) void
mouseDragged(MouseEvent e) void
mouseReleased(MouseEvent e)
Figura java.awt.MouseEvent Herramienta GrupoFigura
s
5BotonHerramienta
Herramienta herramienta Herramienta
getHerramienta()
javax.swing.JButton Herramienta
6Herramienta
java.awt.MouseEvent
void mousePressed(MouseEvent e) void
mouseDragged(MouseEvent e) void
mouseReleased(MouseEvent e)
7HerramientaCreacion
Figura prototipo Dibujo areaDibujo Figura
ultiFiguraCreada Point ultPulsacion void
mousePressed(MouseEvent e) void
mouseDragged(MouseEvent e) void
mouseReleased(MouseEvent e)
java.awt.MouseEvent Figura Dibujo java.awt.Point
8HerramientaSeleccion
java.awt.MouseEvent Dibujo Figura java.awt.Point
Dibujo areaDibujo Figura figSeleccionada Point
ultPulsacion void mousePressed(MouseEvent
e) void mouseDragged(MouseEvent e) void
mouseReleased(MouseEvent e)
9HerramientaAgrupar
java.awt.MouseEvent Dibujo
Dibujo areaDibujo void mousePressed(MouseEvent
e) void mouseDragged(MouseEvent e) void
mouseReleased(MouseEvent e)
10ObserverFigura
Figura
actualizar(Figura f)
11ObserverLineaTexto
Figura javax.swing.JTextField
JTextField linea actualizar(Figura f)
12ObserverAreaTexto
Figura javax.swing.JTextArea
JTextArea areaTexto actualizar(Figura f)