1 20 package org.enhydra.barracuda.contrib.dbroggisch.repopulation; 21 22 import org.enhydra.barracuda.core.forms.DefaultFormElement; 23 import org.enhydra.barracuda.core.forms.FormType; 24 import org.enhydra.barracuda.core.comp.ViewContext; 25 import org.enhydra.barracuda.core.comp.BToggleButton; 26 import org.enhydra.barracuda.core.forms.ParseException; 27 28 public class CheckboxFormElement extends DefaultFormElement implements RepopulationElement { 29 30 public CheckboxFormElement(java.lang.String name, org.enhydra.barracuda.core.forms.FormType ft) { 31 super(name, ft, null); 33 } 34 35 36 public Object render(ViewContext context) { 37 BToggleButton btog = new BToggleButton(); 38 btog.setName(getName()); 39 Object val = getOrigVal(); 40 41 if(val != null && val instanceof Boolean ) { 42 btog.setSelected(((Boolean )val).booleanValue()); 43 } else if(val instanceof String ) { 44 try { 45 Boolean bVal = (Boolean )FormType.BOOLEAN.parse((String )val); 46 btog.setSelected(bVal.booleanValue()); 47 } 48 catch(ParseException ex) { 49 if(logger.isDebugEnabled()) { 50 logger.debug("Parsing of " + val + " to Boolean failed"); 51 } 52 } 53 } 54 return btog; 55 } 56 } 57 58 | Popular Tags |