static { PropertyDescriptor pValueProp = new TextPropertyDescriptor(P_VALUE, LogicMessages.PropertyDescriptor_LED_Value); pValueProp.setValidator(LogicNumberCellEditorValidator.instance()); if (descriptors != null) { newDescriptors = new IPropertyDescriptor[descriptors.length + 1]; for (int i = 0; i < descriptors.length; i++) newDescriptors[i] = descriptors[i]; newDescriptors[descriptors.length] = pValueProp; } else newDescriptors = new IPropertyDescriptor[] {pValueProp}; }
static { descriptors = new Vector(); PropertyDescriptor propertyDescriptor; /// propertyDescriptor = new TextPropertyDescriptor(P_ID_PHONENUMBER, P_PHONENUMBER); propertyDescriptor.setCategory(P_CONTACTINFO); propertyDescriptor.setHelpContextIds(PHONE_NUMBER_CONTEXT); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new PropertyDescriptor(P_ID_ADDRESS, P_ADDRESS); propertyDescriptor.setCategory(P_CONTACTINFO); propertyDescriptor.setHelpContextIds(ADDRESS_CONTEXT); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new TextPropertyDescriptor(P_ID_EMAIL, P_EMAIL); propertyDescriptor.setCategory(P_CONTACTINFO); propertyDescriptor.setHelpContextIds(EMAIL_CONTEXT); propertyDescriptor.setValidator(new EmailAddressValidator()); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new TextPropertyDescriptor(P_ID_FULLNAME, P_FULLNAME); propertyDescriptor.setCategory(P_PERSONELINFO); propertyDescriptor.setHelpContextIds(FULL_NAME_CONTEXT); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new PropertyDescriptor(P_ID_BDAY, P_BDAY); propertyDescriptor.setCategory(P_PERSONELINFO); propertyDescriptor.setHelpContextIds(BIRTHDAY_CONTEXT); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new ComboBoxPropertyDescriptor( P_ID_COOP, P_COOP, new String[] {P_VALUE_TRUE_LABEL, P_VALUE_FALSE_LABEL}); propertyDescriptor.setCategory(P_PERSONELINFO); propertyDescriptor.setHelpContextIds(COOP_CONTEXT); propertyDescriptor.setLabelProvider(new BooleanLabelProvider()); descriptors.addElement(propertyDescriptor); /// propertyDescriptor = new TextPropertyDescriptor(P_ID_SALARY, P_SALARY); // add custom validator to propertyDescriptor limiting salary values to be // greator than zero propertyDescriptor.setHelpContextIds(new Object[] {SALARY_CONTEXT}); propertyDescriptor.setFilterFlags(new String[] {IPropertySheetEntry.FILTER_ID_EXPERT}); propertyDescriptor.setValidator( new ICellEditorValidator() { public String isValid(Object value) { if (value == null) return MessageUtil.getString("salary_is_invalid"); // $NON-NLS-1$ // Float trySalary; try { trySalary = new Float(Float.parseFloat((String) value)); } catch (NumberFormatException e) { return MessageUtil.getString("salary_is_invalid"); // $NON-NLS-1$ } if (trySalary.floatValue() < 0.0) return MessageUtil.getString("salary_must_be_greator_than_zero"); // $NON-NLS-1$ return null; } }); propertyDescriptor.setCategory(P_PERSONELINFO); descriptors.addElement(propertyDescriptor); /// HairColor propertyDescriptor = new ColorPropertyDescriptor(P_ID_HAIRCOLOR, P_HAIRCOLOR); propertyDescriptor.setCategory(P_PERSONALINFO); propertyDescriptor.setHelpContextIds(HAIR_COLOR__CONTEXT); descriptors.addElement(propertyDescriptor); /// EyeColor propertyDescriptor = new ColorPropertyDescriptor(P_ID_EYECOLOR, P_EYECOLOR); propertyDescriptor.setCategory(P_PERSONALINFO); propertyDescriptor.setHelpContextIds(EYE_COLOR_CONTEXT); descriptors.addElement(propertyDescriptor); // gets descriptors from parent, warning name-space collision may occur Vector parentDescriptors = OrganizationElement.getDescriptors(); for (int i = 0; i < parentDescriptors.size(); i++) { descriptors.addElement(parentDescriptors.elementAt(i)); } }