1 /* -------------------------------------------------------------------
2 * Java source file for the class RectangleEditor
3 *
4 * Copyright (c), 2002, Masahiro Takatsuka.
5 * All Rights Researved.
6 *
7 * Original Author: Masahiro Takatsuka (masa@jbeans.net)
8 * $Author: takatsukam $
9 *
10 * $Date: 2003/07/25 04:51:45 $
11 *
12 * $Id: RectangleEditor.java,v 1.1.1.1 2003/07/25 04:51:45 takatsukam Exp $
13 *
14 * Reference: Document no:
15 * ___ ___
16 *
17 * To Do:
18 * ___
19 *
20 ------------------------------------------------------------------- */
21
22 /* --------------------------- Package ---------------------------- */
23 package net.jbeans.bean.property.editor;
24
25 /* ------------------ Import classes (packages) ------------------- *//package-summary/html">color="#329900"> ------------------ Import classes (packages) ------------------- *//package-summary.html">color="#329900">/* ------------------ Import classes (packages) ------------------- *//package-summary.html">color="#329900"> ------------------ Import classes (packages) ------------------- */
26 import java.awt.*;
27 import javax.swing.*;
28
29 import net.jbeans.util.text.*;
30
31 /*====================================================================
32 Implementation of class RectangleEditor
33 ====================================================================*/
34 /***
35 * An editor for editing Rectangle.
36 *
37 * @version $Revision: 1.1.1.1 $
38 * @author Masahiro Takatsuka (masa@jbeans.net)
39 * @see EditorSupport
40 */
41
42 public final class RectangleEditor extends EditorSupport {
43 private JTextField xTF;
44 private JTextField yTF;
45 private JTextField widthTF;
46 private JTextField heightTF;
47
48 public RectangleEditor() {
49 this.xTF = new JTextField();
50 this.xTF.setDocument(new NumberDocument());
51 this.yTF = new JTextField();
52 this.yTF.setDocument(new NumberDocument());
53 this.widthTF = new JTextField();
54 this.widthTF.setDocument(new NumberDocument());
55 this.heightTF = new JTextField();
56 this.heightTF.setDocument(new NumberDocument());
57
58 JPanel panel = new JPanel();
59 panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
60 panel.add(new JLabel("X: "));
61 panel.add(this.xTF);
62 panel.add(new JLabel("Y: "));
63 panel.add(this.yTF);
64 panel.add(new JLabel("Width: "));
65 panel.add(this.widthTF);
66 panel.add(new JLabel("Height: "));
67 panel.add(this.heightTF);
68 setPanel(panel);
69 }
70
71 public final void setValue(Object value) {
72 super.setValue(value);
73
74 Rectangle rect = (Rectangle)value;
75
76 this.xTF.setText(Integer.toString(rect.x));
77 this.yTF.setText(Integer.toString(rect.y));
78 this.widthTF.setText(Integer.toString(rect.width));
79 this.heightTF.setText(Integer.toString(rect.height));
80 }
81
82 public final Object getValue() {
83 int x = Integer.parseInt(this.xTF.getText());
84 int y = Integer.parseInt(this.yTF.getText());
85 int width = Integer.parseInt(this.widthTF.getText());
86 int height = Integer.parseInt(this.heightTF.getText());
87
88 return new Rectangle(x, y, width, height);
89 }
90
91 public final String getJavaInitializationString() {
92 Rectangle rect = (Rectangle) getValue();
93 return "new java.awt.Rectangle(" + rect.x + ", " + rect.y + ", " + rect.width + ", " + rect.height + ")";
94 }
95 }
This page was automatically generated by Maven