namespace DevelImageVisual
{
+
+/**
+ * @brief The policy determining when a image is deleted from the cache in relation to the ImageVisual lifetime.
+ * @note If the texture is being shared by another visual it persist if still required.
+ */
+namespace ReleasePolicy
+{
+
+/**
+ * @brief The available named elements that define the ReleasePolicy.
+ */
+enum Type
+{
+ DETACHED = 0, ///< Image deleted from cache when ImageVisual detached from stage.
+ DESTROYED, ///< Image deleted from cache when ImageVisual destroyed.
+ NEVER ///< Image is never deleted, will survive the lifetime of the application.
+};
+
+} // namespace ReleasePolicy;
+
namespace Property
{
PIXEL_AREA = Dali::Toolkit::ImageVisual::Property::PIXEL_AREA,
WRAP_MODE_U = Dali::Toolkit::ImageVisual::Property::WRAP_MODE_U,
WRAP_MODE_V = Dali::Toolkit::ImageVisual::Property::WRAP_MODE_V,
+ BORDER = Dali::Toolkit::ImageVisual::Property::BORDER,
+ ATLASING = Dali::Toolkit::ImageVisual::Property::ATLASING,
+ ALPHA_MASK_URL = Dali::Toolkit::ImageVisual::Property::ALPHA_MASK_URL,
+ BATCH_SIZE = Dali::Toolkit::ImageVisual::Property::BATCH_SIZE,
+ CACHE_SIZE = Dali::Toolkit::ImageVisual::Property::CACHE_SIZE,
+ FRAME_DELAY = Dali::Toolkit::ImageVisual::Property::FRAME_DELAY,
+ MASK_CONTENT_SCALE = Dali::Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE,
+ CROP_TO_MASK = Dali::Toolkit::ImageVisual::Property::CROP_TO_MASK,
/**
- * @brief The border of the image
- * @details Name "border", type Property::RECTANGLE or Property::VECTOR4
- * The border of the image in the order: left, right, bottom, top.
- *
- * @note Optional.
- * @note For N-Patch images only.
+ * @brief The policy to determine when an image should no longer be cached.
+ * @details Name "releasePolicy", Type ReleasePolicy::Type (Property::INTEGER) or Property::STRING
+ * @note Default ReleasePolicy::DETACHED
+ * @see ReleasePolicy::Type
*/
- BORDER = WRAP_MODE_V + 1,
-
- /**
- * @brief Whether to use the texture atlas
- * @details Name "atlasing", type Property::BOOLEAN, true to enable texture atlas
- *
- * @note Optional. By default atlasing is off.
- */
-
- ATLASING = WRAP_MODE_V + 2,
+ RELEASE_POLICY = CROP_TO_MASK + 2,
};
} //namespace Property