Revision 1225 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormField.java
AbstractJDynFormField.java | ||
---|---|---|
42 | 42 |
import javax.swing.JTextField; |
43 | 43 |
import javax.swing.JViewport; |
44 | 44 |
import javax.swing.text.JTextComponent; |
45 |
import org.gvsig.tools.dataTypes.CoercionException; |
|
46 |
import org.gvsig.tools.dataTypes.DataTypes; |
|
45 | 47 |
|
46 | 48 |
import org.gvsig.tools.dynform.DynFormFieldDefinition; |
47 | 49 |
import org.gvsig.tools.dynform.JDynForm; |
48 | 50 |
import org.gvsig.tools.dynform.JDynFormField; |
49 | 51 |
import org.gvsig.tools.dynform.spi.DynFormSPIManager; |
52 |
import org.gvsig.tools.dynobject.DynField_v2; |
|
50 | 53 |
import org.gvsig.tools.dynobject.DynObject; |
51 | 54 |
import org.gvsig.tools.service.Manager; |
52 | 55 |
import org.gvsig.tools.service.spi.ServiceManager; |
... | ... | |
119 | 122 |
|
120 | 123 |
public JComponent getJLabel() { |
121 | 124 |
if (this.jlabel == null) { |
122 |
this.jlabel = new JLabel(this.getLabel()); |
|
125 |
if( getTagValueAsBoolean("dynform.label.empty", false) ) { |
|
126 |
this.jlabel = new JLabel(""); |
|
127 |
} else { |
|
128 |
this.jlabel = new JLabel(this.getLabel()); |
|
129 |
} |
|
123 | 130 |
this.jlabel.setLabelFor(this.contents); |
124 | 131 |
if( this.getDefinition().isMandatory() ) { |
125 | 132 |
this.jlabel.setForeground(Color.red.darker()); |
... | ... | |
377 | 384 |
public JDynForm getForm() { |
378 | 385 |
return this.form; |
379 | 386 |
} |
387 |
|
|
388 |
protected int getTagValueAsInt(String tagname, int defaultVaue) { |
|
389 |
return getTagValueAsInt(tagname, null, defaultVaue); |
|
390 |
} |
|
391 |
|
|
392 |
protected int getTagValueAsInt(String tagname1, String tagname2, int defaultVaue) { |
|
393 |
DynField_v2 fielddef = (DynField_v2)this.getDefinition(); |
|
394 |
String tagname = null; |
|
395 |
if( fielddef.getTags().has(tagname1) ) { |
|
396 |
tagname = tagname1; |
|
397 |
} else if( fielddef.getTags().has(tagname2) ) { |
|
398 |
tagname = tagname2; |
|
399 |
} else { |
|
400 |
return defaultVaue; |
|
401 |
} |
|
402 |
try { |
|
403 |
int value = fielddef.getTags().getInt(tagname); |
|
404 |
return value; |
|
405 |
} catch (CoercionException ex) { |
|
406 |
logger.warn("Can't parse tag '"+tagname+"' as int for field '"+fielddef.getName()+"'.",ex); |
|
407 |
} |
|
408 |
return defaultVaue; |
|
409 |
} |
|
410 |
|
|
411 |
protected boolean getTagValueAsBoolean(String tagname, boolean defaultVaue) { |
|
412 |
return getTagValueAsBoolean(tagname, null, defaultVaue); |
|
413 |
} |
|
414 |
|
|
415 |
protected boolean getTagValueAsBoolean(String tagname1, String tagname2, boolean defaultVaue) { |
|
416 |
DynField_v2 fielddef = (DynField_v2)this.getDefinition(); |
|
417 |
String tagname = null; |
|
418 |
if( fielddef.getTags().has(tagname1) ) { |
|
419 |
tagname = tagname1; |
|
420 |
} else if( fielddef.getTags().has(tagname2) ) { |
|
421 |
tagname = tagname2; |
|
422 |
} else { |
|
423 |
return defaultVaue; |
|
424 |
} |
|
425 |
try { |
|
426 |
boolean value = fielddef.getTags().getBoolean(tagname); |
|
427 |
return value; |
|
428 |
} catch (CoercionException ex) { |
|
429 |
logger.warn("Can't parse tag '"+tagname+"' as boolean for field '"+fielddef.getName()+"'.",ex); |
|
430 |
} |
|
431 |
return defaultVaue; |
|
432 |
} |
|
433 |
|
|
434 |
protected String getTagValueAsString(String tagname, String defaultVaue) { |
|
435 |
return getTagValueAsString(tagname, null, defaultVaue); |
|
436 |
} |
|
437 |
|
|
438 |
protected String getTagValueAsString(String tagname1, String tagname2, String defaultVaue) { |
|
439 |
DynField_v2 fielddef = (DynField_v2)this.getDefinition(); |
|
440 |
String tagname = null; |
|
441 |
if( fielddef.getTags().has(tagname1) ) { |
|
442 |
tagname = tagname1; |
|
443 |
} else if( fielddef.getTags().has(tagname2) ) { |
|
444 |
tagname = tagname2; |
|
445 |
} else { |
|
446 |
return defaultVaue; |
|
447 |
} |
|
448 |
try { |
|
449 |
String value = (String) fielddef.getTags().get(tagname,DataTypes.STRING); |
|
450 |
return value; |
|
451 |
} catch (CoercionException ex) { |
|
452 |
logger.warn("Can't parse tag '"+tagname+"' as string for field '"+fielddef.getName()+"'.",ex); |
|
453 |
} |
|
454 |
return defaultVaue; |
|
455 |
} |
|
456 |
|
|
380 | 457 |
} |
Also available in: Unified diff