package net.ms.designer.editors.componentdetail.models; import java.util.ArrayList; import java.util.List; import net.ms.designer.editors.componentdetail.IEditorConstant; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.views.properties.IPropertyDescriptor; public class IntegerField extends CommonField { public IntegerField() { super(); // this.setBizField(ConvertObjectTree.convertKCGFieldToBizField(this, // null)); } static final long serialVersionUID = 1; private final String field_Type = "Integer"; //$NON-NLS-1$ public static final String INTEGER_IS_SECURITYBASE = "securitybase"; private Integer isSecurityBase; private Integer defaultValue = null; private static Image LED_ICON = new Image(null, TemplateConstants.class .getResourceAsStream("icons/Integer16.gif")); //$NON-NLS-1$ public Image getIconImage() { return LED_ICON; } public IPropertyDescriptor[] getPropertyDescriptors() { List propList = new ArrayList(); propList.addAll(propDescriptors); propList.addAll(getRangePropsList()); filterPropertyDescriptor(propList); return (IPropertyDescriptor[])propList.toArray(new IPropertyDescriptor[propList.size()]); } public Object getPropertyValue(Object propName) { if (FIELD_DEFVALUE.equals(propName)) return (getDefaultValue()==null?"":getDefaultValue().toString()); else if(INTEGER_IS_SECURITYBASE.equals(propName)) { return getIsSecurityBase(); } else return super.getPropertyValue(propName); } public void resetPropertyValue(Object id) { if (FIELD_DEFVALUE.equals(id)) setDefaultValue(null); else if(INTEGER_IS_SECURITYBASE.equals(id)) { setIsSecurityBase(new Integer(0)); } else super.resetPropertyValue(id); } public void setPropertyValue(Object id, Object value) { if (FIELD_DEFVALUE.equals(id)) { String v = (String)value; if(v!="") setDefaultValue(Integer.valueOf(v)); else setDefaultValue(null); } else if(INTEGER_IS_SECURITYBASE.equals(id)) { setIsSecurityBase((Integer)value); } super.setPropertyValue(id, value); } public String getField_Type() { return field_Type; } public int getFieldTypeID() { return super.getFieldTypeID(); } public void setFieldTypeID() { super.setFieldTypeID(IEditorConstant.INTEGERFIELD_TYPE); } public int getFieldTypeLength() { return 10; } public int getFieldTypeScale() { return 0; } public Integer getDefaultValue() { return defaultValue; } public void setDefaultValue(Integer defaultValue) { this.defaultValue = defaultValue; } public Integer getIsSecurityBase() { if(isSecurityBase==null) isSecurityBase = new Integer(0); return isSecurityBase; } public void setIsSecurityBase(Integer isSecurityBase) { this.isSecurityBase = isSecurityBase; } }