X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fcanvas-renderer%2Fcommon%2Fdrawable-impl.h;h=d9fd55e6415d3f69cfbbb30f767eeb0ea1833e44;hb=35be541018648e2be601c64453c9b6bbf2f64d6d;hp=d4439ed7619f157e10cdc03464f00a51b50a6f57;hpb=4aef55782a00a0491eedffea40a34b1e5fc3b095;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/dali/internal/canvas-renderer/common/drawable-impl.h b/dali/internal/canvas-renderer/common/drawable-impl.h index d4439ed..d9fd55e 100644 --- a/dali/internal/canvas-renderer/common/drawable-impl.h +++ b/dali/internal/canvas-renderer/common/drawable-impl.h @@ -47,6 +47,17 @@ public: DRAWABLE_GROUP ///< Meaning of DrawableGorup class that inherits Drawable. }; + /** + * @brief Enumeration indicating type used in the composition of two objects - the target and the source. + */ + enum class CompositionType + { + NONE = 0, ///< Means that type is not defined. + CLIP_PATH, ///< The intersection of the source and the target is determined and only the resulting pixels from the source are rendered. + ALPHA_MASK, ///< The pixels of the source and the target are alpha blended. As a result, only the part of the source, which intersects with the target is visible. + ALPHA_MASK_INVERSE ///< The pixels of the source and the complement to the target's pixels are alpha blended. As a result, only the part of the source which is not covered by the target is visible. + }; + public: /** * @brief Constructor @@ -99,6 +110,23 @@ public: virtual Rect GetBoundingBox() const; /** + * @copydoc Dali::CanvasRenderer::Drawable::SetClipPath() + */ + virtual bool SetClipPath(Dali::CanvasRenderer::Drawable& clip); + + /** + * @brief Returns a composition drawble object. + * @return Returns a composition drawble object. + */ + virtual Dali::CanvasRenderer::Drawable GetCompositionDrawable() const; + + /** + * @brief Returns a composition type + * @return Returns a composition type + */ + virtual CompositionType GetCompositionType() const; + + /** * @brief Set whether this drawable object was added to other object(CanvasRenderer or DrawableGroup) or not. * @param[in] added Ture if added, false otherwise. */