Bug 120215 BPS 40 - DE changes
1. all report elements' properties will be overidable with an expression. The binding expression will have access to report parameter, and static BIRT report objects only. 2) DE will provide api to get property binding expression for a given property on a report element handle. It's up to the engine to evaluate the property binding expression when the report gets executed. DE API changes -------------------------- a) DesignElementHandle will support the following two methods. - String (expression) GetPropertyBinding ( propertyName ) - void SetPropertyBinding( propertyName , String (expression) ) // Note get and set property methods are wrapper classes which actually use reportDesignHandle methods to retrive and set the property binding. b) rom.def changes Property bindings contains a list of binding expressions. ReportDesign element will be enhanced to support a new property called. <Property canInherit="false" detailType="propertyBinding" displayNameID="Element.Module.propertyBindings" isList="true" name="propertyBindings" type="structure"/> A new datatype - <Structure name="propertybinding"> <Member name="name" since="2.0" type="name"/> <Member name="id" returnType="any" since="2.0" type="string"/> // Use the unique id used to identify an element. <Member name="value" returnType="string" since="2.0" type="expression"/> </Structure>
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/i18n/MessageConstants.java
public static final String CUSTOM_MSG_EXCEPTION_RESOURCE_KEY_REQUIRED = "Error.CustomMsgException.RESOURCE_KEY_REQUIRED"; 
	public static final String CUSTOM_MSG_EXCEPTION_DUPLICATE_LOCALE = "Error.CustomMsgException.DUPLICATE_LOCALE"; 
	public static final String CUSTOM_MSG_EXCEPTION_INVALID_LOCALE = "Error.CustomMsgException.INVALID_LOCALE"; 
	public static final String CUSTOM_MSG_EXCEPTION_TRANSLATION_NOT_FOUND = "Error.CustomMsgException.TRANSLATION_NOT_FOUND"; 
	
	public static final String EXTENDS_EXCEPTION_NOT_FOUND = "Error.ExtendsException.NOT_FOUND"; 
	public static final String EXTENDS_EXCEPTION_WRONG_TYPE = "Error.ExtendsException.WRONG_TYPE"; 
	public static final String EXTENDS_EXCEPTION_WRONG_EXTENSION_TYPE = "Error.ExtendsException.WRONG_EXTENSION_TYPE"; 
	public static final String EXTENDS_EXCEPTION_EXTENDS_FORBIDDEN = "Error.ExtendsException.EXTENDS_FORBIDDEN"; 
	public static final String EXTENDS_EXCEPTION_CANT_EXTEND = "Error.ExtendsException.CANT_EXTEND"; 
	public static final String EXTENDS_EXCEPTION_SELF_EXTEND = "Error.ExtendsException.SELF_EXTEND"; 
	public static final String EXTENDS_EXCEPTION_CIRCULAR = "Error.ExtendsException.CIRCULAR"; 
	public static final String EXTENDS_EXCEPTION_UNNAMED_PARENT = "Error.ExtendsException.UNNAMED_PARENT"; 
	public static final String EXTENDS_EXCEPTION_PARENT_NOT_IN_COMPONENT = "Error.ExtendsException.PARENT_NOT_IN_COMPONENT"; 
	public static final String EXTENDS_EXCEPTION_PARENT_NOT_INCLUDE = "Error.ExtendsException.PARENT_NOT_INCLUDE"; 
	public static final String EXTENDS_EXCEPTION_NO_PARENT = "Error.ExtendsException.NO_PARENT"; 
	
	
	public static final String NAME_EXCEPTION_NAME_REQUIRED = "Error.NameException.NAME_REQUIRED"; 
	public static final String NAME_EXCEPTION_NAME_FORBIDDEN = "Error.NameException.NAME_FORBIDDEN"; 
	public static final String NAME_EXCEPTION_DUPLICATE = "Error.NameException.DUPLICATE"; 
	public static final String NAME_EXCEPTION_HAS_REFERENCES = "Error.NameException.HAS_REFERENCES"; 
	public static final String NAME_EXCEPTION_DOT_FORBIDDEN = "Error.NameException.DOT_FORBIDDEN"; 
	
	
	public static final String PROPERTY_NAME_EXCEPTION_PROPERTY_NOT_VALID = "Error.PropertyNameException.PROPERTY_NOT_VALID"; 
	public static final String PROPERTY_NAME_EXCEPTION_MEMBER_NOT_VALID = "Error.PropertyNameException.MEMBER_NOT_VALID"; 
	
	public static final String PROPERTY_VALUE_EXCEPTION_INVALID_VALUE = "Error.PropertyValueException.INVALID_VALUE";