Revision 298 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.swing/org.gvsig.tools.swing.serv/org.gvsig.tools.swing.serv.field/src/main/java/org/gvsig/tools/swing/serv/field/component/date/JNullSpinner.java

View differences:

JNullSpinner.java
53 53
 */
54 54
public class JNullSpinner extends JSpinner {
55 55

  
56
	private static final String DEFAULT_FORMAT = "dd/MM/yyyy hh:mm:ss Z";
57
//	private DynField field;
58
	private SpinnerModel model;
59
	private Object value;
60
	private NullSpinnerHandler spinnerHandler;
56
    /**
57
     * 
58
     */
59
    private static final long serialVersionUID = -3139951166497954315L;
60
    private static final String DEFAULT_FORMAT = "dd/MM/yyyy hh:mm:ss Z";
61
    // private DynField field;
62
    private SpinnerModel model;
63
    private Object value;
64
    private NullSpinnerHandler spinnerHandler;
61 65

  
62
	//
63
	// public DateSpinner(Date date, String format){
64
	// this(date,TYPE_SHOW_DATE_ONLY);
65
	// }
66
    //
67
    // public DateSpinner(Date date, String format){
68
    // this(date,TYPE_SHOW_DATE_ONLY);
69
    // }
66 70

  
67
	// public DateSpinner(Date date, String format, int dateField){
68
	// this(new DateElement(date), format, dateField);
69
	// }
70
//
71
//
72
//	public JNullSpinner() {
73
//		super();
74
//
75
////		this.setBackground(null);
76
//		this.setForeground(Color.BLUE);
77
//	}
71
    // public DateSpinner(Date date, String format, int dateField){
72
    // this(new DateElement(date), format, dateField);
73
    // }
74
    //
75
    //
76
    // public JNullSpinner() {
77
    // super();
78
    //
79
    // // this.setBackground(null);
80
    // this.setForeground(Color.BLUE);
81
    // }
78 82

  
79
	public JNullSpinner(DynField dynField) {
80
		super();
81
		this.setForeground(Color.BLUE);
82
		this.setDynFieldModel(dynField);		
83
	}
84
	
85
	public void setDynFieldModel(DynField dynField){
83
    public JNullSpinner(DynField dynField) {
84
        super();
85
        this.setForeground(Color.BLUE);
86
        this.setDynFieldModel(dynField);
87
    }
86 88

  
87
		this.spinnerHandler = new NullSpinnerHandler(dynField, this.getLocale());
88
		this.model = spinnerHandler.getModel();
89
		this.setModel(this.model);
90
//		this.model.addChangeListener(this);
91
		//		
92
		if (spinnerHandler.isDate()) {
93
			this.setEditor(new NullDateEditor(this, dynField, spinnerHandler.getFormatter()));
94
		} else if (spinnerHandler.isNumber()) {
95
			this.setEditor(new NullNumberEditor(this, dynField, spinnerHandler.getFormatter()));
96
		}
97
		this.spinnerHandler.setDefaultValueOn(false);
98
				
99
		// refresh();
89
    public void alignToField(ComponentService arg0) {
100 90

  
101
	}
102
	
103
	private Border createCompoundBorder() {
104
		// Create a border for all calendars
105
		Border etchedBorder = BorderFactory.createEtchedBorder();
106
		Border emptyBorder = BorderFactory.createEmptyBorder(10, 10, 10, 10);
107
		return BorderFactory.createCompoundBorder(etchedBorder, emptyBorder);
108
	}
109
	
110
//	private Object getValueFromTextField(){
111
//		return nullModel.getValueFromTexField(getTextField());
112
//		
113
//	}
114
//	
115
//	private JFormattedTextField getTextField(){
116
//		if (nullModel.isDate()) {
117
//			((DateEditor) this.getEditor()).getTextField();
118
//		} else if (nullModel.isNumber()) {
119
//			((NumberEditor) this.getEditor()).getTextField();
120
//		}
121
//		return new JFormattedTextField();
122
//	}
123
//
124
//	private void setToTextField(Object value){
125
//		if ((value == null)||(value.equals(""))){
126
//			value = null;
127
//		}
128
//		nullModel.getFormatter().setFormattedValue(getTextField(), value);
129
//	}
130
//	
131
//	/**
132
//     * 
133
//     */
134
//	private void refresh() {
135
//		this.setValue(this.getValue());
136
//	}
91
    }
137 92

  
138
	/**
139
	 * @param time
140
	 */
141
	public void setDate(Date date) {
142
		this.setValue(date);
143
	}
93
    private Border createCompoundBorder() {
94
        // Create a border for all calendars
95
        Border etchedBorder = BorderFactory.createEtchedBorder();
96
        Border emptyBorder = BorderFactory.createEmptyBorder(10, 10, 10, 10);
97
        return BorderFactory.createCompoundBorder(etchedBorder, emptyBorder);
98
    }
144 99

  
145
	public Date getCurDate(Date date) {
146
		return (Date) this.getValue();
147
	}
100
    // private Object getValueFromTextField(){
101
    // return nullModel.getValueFromTexField(getTextField());
102
    //		
103
    // }
104
    //	
105
    // private JFormattedTextField getTextField(){
106
    // if (nullModel.isDate()) {
107
    // ((DateEditor) this.getEditor()).getTextField();
108
    // } else if (nullModel.isNumber()) {
109
    // ((NumberEditor) this.getEditor()).getTextField();
110
    // }
111
    // return new JFormattedTextField();
112
    // }
113
    //
114
    // private void setToTextField(Object value){
115
    // if ((value == null)||(value.equals(""))){
116
    // value = null;
117
    // }
118
    // nullModel.getFormatter().setFormattedValue(getTextField(), value);
119
    // }
120
    //	
121
    // /**
122
    // *
123
    // */
124
    // private void refresh() {
125
    // this.setValue(this.getValue());
126
    // }
148 127

  
149
	/**
150
	 * @param b
151
	 */
152
	public void setEditable(boolean isEditable) {
153
		this.setEnabled(this.isEnabled());
154
	}
128
    public Date getCurDate(Date date) {
129
        return (Date) this.getValue();
130
    }
155 131

  
156
	public void alignToField(ComponentService arg0) {
132
    /**
133
     * @param time
134
     */
135
    public void setDate(Date date) {
136
        this.setValue(date);
137
    }
157 138

  
158
	}
139
    public void setDynFieldModel(DynField dynField) {
159 140

  
160
//	public void addDateChangeListener(ChangeListener listener) {
161
//		this.getModel().addChangeListener(listener);
162
//	}
141
        this.spinnerHandler =
142
            new NullSpinnerHandler(dynField, this.getLocale());
143
        this.model = spinnerHandler.getModel();
144
        this.setModel(this.model);
145
        // this.model.addChangeListener(this);
146
        //		
147
        if (spinnerHandler.isDate()) {
148
            this.setEditor(new NullDateEditor(this, dynField, spinnerHandler
149
                .getFormatter()));
150
        } else
151
            if (spinnerHandler.isNumber()) {
152
                this.setEditor(new NullNumberEditor(this, dynField,
153
                    spinnerHandler.getFormatter()));
154
            }
155
        this.spinnerHandler.setDefaultValueOn(false);
163 156

  
164
//	@Override
165
//	public SpinnerModel getModel() {
166
//		if (this.model == null)
167
//			return  new SpinnerNumberModel();
168
//		return this.model;
169
//
170
//	}
157
        // refresh();
171 158

  
172
//	@Override
173
//	public void setValue(Object value) {
174
//		this.getModel().setValue(value);
175
//		setToTextField(value);
176
//	}
159
    }
177 160

  
178
//	@Override
179
//	public Object getNextValue() {
180
//		return this.getModel().getNextValue();
181
//	}
182
//
183
//	@Override
184
//	public Object getPreviousValue() {
185
//		return this.getModel().getPreviousValue();
186
//	}
161
    /**
162
     * @param b
163
     */
164
    public void setEditable(boolean isEditable) {
165
        this.setEnabled(this.isEnabled());
166
    }
187 167

  
188
//	@Override
189
//	public Object getValue() {
190
//		Object value = this.getModel().getValue();
191
////		if (value==null)
192
////			return 0                                                                                                                                                                  ;
193
//		return value;
194
//	}
195
//
196
//	@Override
197
//	public void setModel(SpinnerModel model) {
198
//		this.model = model;
199
//	}
200
//
201
//	public void stateChanged(ChangeEvent e) {
202
////		SpinnerModel model = (SpinnerModel) e.getSource();
203
////		this.setToTextField(model.getValue());
204
//	}
168
    // public void addDateChangeListener(ChangeListener listener) {
169
    // this.getModel().addChangeListener(listener);
170
    // }
171

  
172
    // @Override
173
    // public SpinnerModel getModel() {
174
    // if (this.model == null)
175
    // return new SpinnerNumberModel();
176
    // return this.model;
177
    //
178
    // }
179

  
180
    // @Override
181
    // public void setValue(Object value) {
182
    // this.getModel().setValue(value);
183
    // setToTextField(value);
184
    // }
185

  
186
    // @Override
187
    // public Object getNextValue() {
188
    // return this.getModel().getNextValue();
189
    // }
190
    //
191
    // @Override
192
    // public Object getPreviousValue() {
193
    // return this.getModel().getPreviousValue();
194
    // }
195

  
196
    // @Override
197
    // public Object getValue() {
198
    // Object value = this.getModel().getValue();
199
    // // if (value==null)
200
    // // return 0 ;
201
    // return value;
202
    // }
203
    //
204
    // @Override
205
    // public void setModel(SpinnerModel model) {
206
    // this.model = model;
207
    // }
208
    //
209
    // public void stateChanged(ChangeEvent e) {
210
    // // SpinnerModel model = (SpinnerModel) e.getSource();
211
    // // this.setToTextField(model.getValue());
212
    // }
205 213
}

Also available in: Unified diff