| TransformButton.java |
1 package fi.jyu.mit.graphics;
2
3 import java.awt.Container;
4 import java.awt.event.ActionListener;
5
6 import javax.swing.*;
7
8 /**
9 * Painike johon voi liittää muunnosmatriisin
10 * @author Markus Kivioja
11 *
12 */
13 public class TransformButton extends JButton {
14
15 private static final long serialVersionUID = 1L;
16
17 private Matrix tM;
18
19 /**
20 * Luo uuden painikkeen
21 * @param text painikkeen teksti
22 */
23 public TransformButton(String text) {
24 super(text);
25 }
26
27 /**
28 * Asettaa muunnosmatriisin tähän painikkeeseen
29 * @param pM asetettava muunnosmatriisi
30 */
31 public void setTransform(Matrix pM) {
32 this.tM = pM;
33 }
34
35 /**
36 * Antaa tämän painikkeen muunnosmatriisin
37 * @return tämän painikkeen muunnosmatriisi
38 */
39 public Matrix getTransform() {
40 return this.tM;
41 }
42
43 /**
44 * Metodi helpottamaan komponentin luontia
45 * @param pM asetettava muunnosmatriisi
46 * @param parent painikkeen vanhempi
47 * @param constraints rajoitteet nappulalle
48 * @param listener painikkeen tapahtumakuuntelija
49 * @return this object
50 */
51 public TransformButton set(Matrix pM,Container parent,Object constraints,ActionListener listener) {
52 setTransform(pM);
53 if ( parent != null ) parent.add(this,constraints);
54 addActionListener(listener);
55 return this;
56 }
57
58 }
59