Render control background without creating extra actor
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / renderers / image / image-renderer.h
index fbebfc4..fd88df0 100644 (file)
@@ -83,6 +83,7 @@ public:
   ~ImageRenderer();
 
 public:  // from ControlRenderer
+
   /**
    * @copydoc ControlRenderer::Initialize
    */
@@ -94,6 +95,11 @@ public:  // from ControlRenderer
   virtual void SetSize( const Vector2& size );
 
   /**
+   * @copydoc ControlRenderer::GetNaturalSize
+   */
+  virtual void GetNaturalSize( Vector2& naturalSize ) const;
+
+  /**
    * @copydoc ControlRenderer::SetClipRect
    */
   virtual void SetClipRect( const Rect<int>& clipRect );
@@ -103,6 +109,11 @@ public:  // from ControlRenderer
    */
   virtual void SetOffset( const Vector2& offset );
 
+  /**
+   * @copydoc ControlRenderer::CreatePropertyMap
+   */
+  virtual void CreatePropertyMap( Property::Map& map ) const;
+
 protected:
   /**
    * @copydoc ControlRenderer::DoSetOnStage
@@ -117,6 +128,13 @@ protected:
 public:
 
   /**
+   * Request the geometry and shader from the cache, if not available, create and save to the cache for sharing.
+   *
+   * @param[in] factoryCache A pointer pointing to the RendererFactoryCache object
+   */
+  void Initialize( RendererFactoryCache& factoryCache );
+
+  /**
    * @brief Sets the image of this renderer to the resource at imageUrl
    * The renderer will load the Image asynchronously when the associated actor is put on stage, and destroy the image when it is off stage
    *
@@ -143,6 +161,13 @@ public:
    */
   void SetImage( Image image );
 
+  /**
+   * @brief Gets the image this renderer uses
+   *
+   * @return The image this renderer uses, which may be null if the image is set from a URL string and the renderer is not set as onstage
+   */
+  Image GetImage() const;
+
 private:
 
   /**