01: /* Copyright (c) 2001-2005, The HSQL Development Group
02: * All rights reserved.
03: *
04: * Redistribution and use in source and binary forms, with or without
05: * modification, are permitted provided that the following conditions are met:
06: *
07: * Redistributions of source code must retain the above copyright notice, this
08: * list of conditions and the following disclaimer.
09: *
10: * Redistributions in binary form must reproduce the above copyright notice,
11: * this list of conditions and the following disclaimer in the documentation
12: * and/or other materials provided with the distribution.
13: *
14: * Neither the name of the HSQL Development Group nor the names of its
15: * contributors may be used to endorse or promote products derived from this
16: * software without specific prior written permission.
17: *
18: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19: * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21: * ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG,
22: * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23: * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24: * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25: * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26: * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27: * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28: * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29: */
30:
31: package org.hsqldb.util;
32:
33: import java.awt.Color;
34: import java.awt.TextField;
35:
36: /**
37: * Class declaration
38: *
39: *
40: * @author ulrivo@users
41: * @version 1.0.0
42: */
43:
44: // a TextField for the GUI which implements ZaurusComponent
45: //
46: public class ZaurusTextField extends TextField implements
47: ZaurusComponent {
48:
49: int countChanges;
50:
51: public ZaurusTextField(int i) {
52:
53: super (i);
54:
55: countChanges = 0;
56: }
57:
58: public void clearChanges() {
59: countChanges = 0;
60: }
61:
62: public void clearContent() {
63: super .setText("");
64: }
65:
66: public String getContent() {
67: return super .getText();
68: }
69:
70: // the initially setText increments the counter
71: public boolean hasChanged() {
72: return countChanges > 1;
73: }
74:
75: public void requestFocus() {
76: super .requestFocus();
77: }
78:
79: public void setChanged() {
80: countChanges++;
81: }
82:
83: public void setContent(String s) {
84: super .setText(s);
85: }
86:
87: public void setEditable(boolean b) {
88:
89: super .setEditable(b);
90:
91: if (b) {
92: super .setBackground(Color.white);
93: } else {
94: super .setBackground(Color.lightGray);
95: } // end of if (b)else
96: }
97: }
|