Revision 44152 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/featuretype/DefaultFeatureTypePanel.java
DefaultFeatureTypePanel.java | ||
---|---|---|
215 | 215 |
} |
216 | 216 |
} |
217 | 217 |
|
218 |
private void doFormFieldFetch() {
|
|
218 |
private boolean doFormFieldFetch() {
|
|
219 | 219 |
int row = this.tblFields.getSelectedRow(); |
220 | 220 |
if( row<0 ) { |
221 |
return; |
|
221 |
return true;
|
|
222 | 222 |
} |
223 | 223 |
FeatureAttributeDescriptor descriptor = this.featureType.getAttributeDescriptor(row); |
224 | 224 |
if( descriptor instanceof EditableFeatureAttributeDescriptor ) { |
225 |
this.descriptorPanel.fetch((EditableFeatureAttributeDescriptor) descriptor); |
|
225 |
if( this.descriptorPanel.fetch((EditableFeatureAttributeDescriptor) descriptor)==null ) { |
|
226 |
return false; |
|
227 |
} |
|
226 | 228 |
this.tableModel.fireUpdateEvent(); |
227 | 229 |
} |
230 |
return true; |
|
228 | 231 |
} |
229 | 232 |
|
230 | 233 |
private void doFormFieldPut() { |
... | ... | |
249 | 252 |
this.btnFormFieldAccept.setEnabled(false); |
250 | 253 |
this.btnFormFieldDiscard.setEnabled(false); |
251 | 254 |
this.btnFormFieldModify.setEnabled(this.editable); |
255 |
this.btnNew.setEnabled(true); |
|
256 |
this.btnDelete.setEnabled(true); |
|
252 | 257 |
} |
253 | 258 |
|
254 | 259 |
private void doFormFieldModify() { |
... | ... | |
262 | 267 |
this.btnFormFieldAccept.setEnabled(this.editable); |
263 | 268 |
this.btnFormFieldDiscard.setEnabled(this.editable); |
264 | 269 |
this.btnFormFieldModify.setEnabled(false); |
270 |
this.btnNew.setEnabled(false); |
|
271 |
this.btnDelete.setEnabled(false); |
|
265 | 272 |
if( descriptor instanceof EditableFeatureAttributeDescriptor ) { |
266 | 273 |
this.descriptorPanel.setEditable(this.editable); |
267 | 274 |
} else { |
... | ... | |
271 | 278 |
} |
272 | 279 |
|
273 | 280 |
private void doFormFieldAccept() { |
274 |
doFormFieldFetch(); |
|
275 |
this.updateButtonState(); |
|
276 |
this.fieldSelectionAllowed = true; |
|
281 |
int row = this.tblFields.getSelectedRow(); |
|
282 |
if( row<0 ) { |
|
283 |
return; |
|
284 |
} |
|
285 |
if( doFormFieldFetch() ) { |
|
286 |
this.updateButtonState(); |
|
287 |
this.tblFields.getSelectionModel().setSelectionInterval(row, row); |
|
288 |
this.tblFields.scrollRectToVisible(this.tblFields.getCellRect(row, 0, true)); |
|
289 |
this.fieldSelectionAllowed = true; |
|
290 |
} |
|
277 | 291 |
} |
278 | 292 |
|
279 | 293 |
private void doFormFieldDiscard() { |
... | ... | |
349 | 363 |
EditableFeatureType eft = (EditableFeatureType)this.featureType; |
350 | 364 |
EditableFeatureAttributeDescriptor descriptor = eft.add( |
351 | 365 |
getNewFieldName(this.featureType), |
352 |
DataTypes.STRING |
|
366 |
DataTypes.STRING, |
|
367 |
50 |
|
353 | 368 |
); |
354 | 369 |
this.tableModel.fireUpdateEvent(); |
355 | 370 |
int row = descriptor.getIndex(); |
356 | 371 |
this.tblFields.getSelectionModel().addSelectionInterval(row,row); |
372 |
this.tblFields.scrollRectToVisible(this.tblFields.getCellRect(row, 0, true)); |
|
357 | 373 |
updateButtonState(); |
358 |
doFormFieldPut();
|
|
374 |
doFormFieldModify();
|
|
359 | 375 |
} |
360 | 376 |
|
361 | 377 |
private void doDeleteField() { |
Also available in: Unified diff