diff -r b7904b40483f -r ff572005ac23 homescreensrv_plat/ai_content_model_api/inc/aicontentobserver.h --- a/homescreensrv_plat/ai_content_model_api/inc/aicontentobserver.h Mon Jan 18 20:32:13 2010 +0200 +++ b/homescreensrv_plat/ai_content_model_api/inc/aicontentobserver.h Tue Jan 26 12:11:15 2010 +0200 @@ -35,6 +35,28 @@ */ class MAiContentObserver { +public: // New Enumeration + /** + * CSS Primitive value type + */ + enum TValueType + { + EValueUnknown = 0, + EValueNumber, + EValuePercentage, + EValuePx, + EValueDimension, + EValueString, + EValueIdent, + EValueAttr, + EValueCounter, + EValueRect, + EValueRgbColor, + EValueRgbaColor, + EValueFunction, + EValueUnitValue + }; + public: // New functions /** @@ -250,8 +272,52 @@ * @param aPublsiherInfo Publisher which requires subscription * @return ETrue if subsription is needed, EFalse otherwise */ - virtual TBool RequiresSubscription( const TAiPublisherInfo& aPublisherInfo ) const = 0; - + virtual TBool RequiresSubscription( const TAiPublisherInfo& aPublisherInfo ) const = 0; + + /** + * Invoked by the plug-in to change the property value of a specific content. + * value type must be string. + * @param aPlugin - Plug-in property extension interface implementation. + * @param aElementId - id of content selector, MUST correspond + * single content supported by plug-in. The framework + * utilizes the id to find in the plugin xml defintion. + * @param aPropertyName - property name. + * @param aPropertyValue - property value. + * @return - Possible return values: + * - KErrNone - if content reference found. + * - KErrNotFound - if content reference is not found in current + * plugin definition. + * - KErrNotSupported - if content selector is not supported by + * current plugin definition. + */ + virtual TInt SetProperty( MAiPropertyExtension& aPlugin, + const TDesC8& aElementId, + const TDesC8& aPropertyName, + const TDesC8& aPropertyValue ) = 0; + + /** + * Invoked by the plug-in to change the property value of a specific content. + * + * @param aPlugin - Plug-in property extension interface implementation. + * @param aElementId - id of content selector, MUST correspond + * single content supported by plug-in. The framework + * utilizes the id to find in the plugin xml defintion. + * @param aPropertyName - property name. + * @param aPropertyValue - property value. + * @param aValueType - value type. + * @return - Possible return values: + * - KErrNone - if content reference found. + * - KErrNotFound - if content reference is not found in current + * plugin definition. + * - KErrNotSupported - if content selector is not supported by + * current plugin definition. + */ + virtual TInt SetProperty( MAiPropertyExtension& aPlugin, + const TDesC8& aElementId, + const TDesC8& aPropertyName, + const TDesC8& aPropertyValue, + MAiContentObserver::TValueType aValueType) = 0; + protected: /** * Protected destructor prevents deletion through this interface.