X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=dali-toolkit%2Finternal%2Fcontrols%2Frenderers%2Fcontrol-renderer-impl.h;h=7258e294b7d1558f214a7c450ae4dd903f4bf2b5;hb=8991dd870badfb20693aa0eb1acf0aedbe88f99f;hp=4dea2d99af8305c641d21ec8afb0d5898c2c76f4;hpb=4c1f4bfb9eb5b956b64a6c9bf077217fc0ca9234;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/renderers/control-renderer-impl.h b/dali-toolkit/internal/controls/renderers/control-renderer-impl.h index 4dea2d9..7258e29 100644 --- a/dali-toolkit/internal/controls/renderers/control-renderer-impl.h +++ b/dali-toolkit/internal/controls/renderers/control-renderer-impl.h @@ -27,6 +27,7 @@ // INTERNAL INCLUDES #include #include +#include namespace Dali { @@ -37,8 +38,6 @@ namespace Toolkit namespace Internal { -class RendererFactoryCache; - /** * Base class for all Control rendering logic. A control may have multiple control renderers. * @@ -68,10 +67,10 @@ public: * request the geometry and shader from the cache, if not available, create and save to the cache for sharing; * record the property values. * - * @param[in] factoryCache A pointer pointing to the RendererFactoryCache object + * @param[in] actor The Actor the renderer is applied to if, empty if the renderer has not been applied to any Actor * @param[in] propertyMap The properties for the requested ControlRenderer object. */ - void Initialize( RendererFactoryCache& factoryCache, const Property::Map& propertyMap ); + void Initialize( Actor& actor, const Property::Map& propertyMap ); /** * @copydoc Toolkit::ControlRenderer::SetSize @@ -137,8 +136,10 @@ protected: /** * @brief Constructor. + * + * @param[in] factoryCache A pointer pointing to the RendererFactoryCache object */ - ControlRenderer(); + ControlRenderer( RendererFactoryCache& factoryCache ); /** * @brief A reference counted object may only be deleted by calling Unreference(). @@ -156,10 +157,10 @@ protected: /** * @brief Called by Initialize() allowing sub classes to respond to the Initialize event * - * @param[in] factoryCache A pointer pointing to the RendererFactoryCache object + * @param[in] actor The Actor the renderer is applied to if, empty if the renderer has not been applied to any Actor * @param[in] propertyMap The properties for the requested ControlRenderer object. */ - virtual void DoInitialize( RendererFactoryCache& factoryCache, const Property::Map& propertyMap ) = 0; + virtual void DoInitialize( Actor& actor, const Property::Map& propertyMap ) = 0; protected: @@ -177,6 +178,21 @@ protected: */ virtual void DoSetOffStage( Actor& actor ); +protected: + /** + * @brief Gets the on stage state for this ControlRenderer + * + * @return Returns true if this ControlRenderer is on stage, false if it is off the stage + */ + bool GetIsOnStage() const; + + /** + * @brief Gets whether the Dali::Renderer is from a shared cache (and therefore any modifications will affect other users of that renderer) + * + * @return Returns true if the renderer is from shared cache, false otherwise + */ + bool GetIsFromCache() const; + private: // Undefined @@ -188,6 +204,7 @@ private: protected: struct Impl; Impl* mImpl; + RendererFactoryCache& mFactoryCache; }; } // namespace Internal