Community
Participate
Working Groups
Currently, there is only one script per extended item. This should be generalized to support multiple scripts for onRender, onPrepare, etc... The chart model contains its script contents, and it needs to be able to return it to the model through getProperty("onRender"). Currently this is ineffective, since onRender is considered as a ROM property. The proposal is to extend the extension schema to allow extended items to override some predefined properties such as "onRender": Example: <overrideProperty useOwnModel="true" propertyName="onRender"> </overrideProperty> In that case, the model will call the extension getProperty("onRender") when trying to read that property, instead of the ROM property. The chart will *not* need to redefine the onRender property with a <property> tag in plugin.xml This is blocking the javascript editor enhancements (bug132031, bug148405)
Defined the new schema of overrideProperty for this case. If this flag is true, just call IReportItem.getProperty(). Otherwise, still follows the Model getProperty() algorithm.
finish Add useOwnModel property. please check it.
The getProperty works but setProperty fails due to this code (it doesn't go inside the if statement) // The values differ. Make the change. if ( element instanceof ExtendedItem ) { ExtendedItem extendedItem = ( (ExtendedItem) element ); if ( extendedItem.isExtensionModelProperty( prop.getName( ) ) ) { IReportItem extElement = extendedItem.getExtendedElement( ); assert extElement != null; extElement.checkProperty( prop.getName( ), value ); extElement.setProperty( prop.getName( ), value ); return; } }
done it. thx