--- 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.