Merge "Cache fallback font lists for each requested font" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / controls / renderer-factory / control-renderer.h
index 57626d4..d5f0df4 100644 (file)
@@ -42,31 +42,39 @@ class DALI_IMPORT_API ControlRenderer : public BaseHandle
 {
 public:
 
+  /**
+   * @brief Create an empty ControlRenderer Handle
+   */
   ControlRenderer();
-  ControlRenderer(Internal::ControlRenderer *impl);
+
+  /**
+   * @brief Destructor
+   *
+   * This is non-virtual since derived Handle types must not contain data or virtual methods.
+   */
   ~ControlRenderer();
 
   /**
-   * Set the size of the painting area.
+   * @brief This copy constructor is required for (smart) pointer semantics.
    *
-   * @param[in] size The size of the painting area.
+   * @param[in] handle A reference to the copied handle.
    */
-  void SetSize( const Vector2& size );
+  ControlRenderer( const ControlRenderer& handle );
 
   /**
-   * Set the clip rectangular of this renderer.
-   * The contents of the renderer will not be visible outside this rectangular.
+   * @brief This assignment operator is required for (smart) pointer semantics.
    *
-   * @param [in] clipRect The clipping rectangular.
+   * @param [in] handle  A reference to the copied handle.
+   * @return A reference to this.
    */
-  void SetClipRect( const Rect<int>& clipRect );
+  ControlRenderer& operator=( const ControlRenderer& handle );
 
   /**
-   * Reposition this renderer with a 2D offset.
+   * Set the size of the painting area.
    *
-   * @param[in] offset The offset to reposition the renderer.
+   * @param[in] size The size of the painting area.
    */
-  void SetOffset( const Vector2& offset );
+  void SetSize( const Vector2& size );
 
   /**
    * Set the depth index of this renderer.
@@ -85,13 +93,9 @@ public:
    */
   void SetOnStage( Actor& actor );
 
-  /**
-   * Renderer is destroyed when control is off stage.
-   * This function should be called when the control removes from stage
-   *
-   * @param[in] actor The actor applying this renderer.
-   */
-  void SetOffStage( Actor& actor );
+public: // Not intended for application developers
+
+  explicit DALI_INTERNAL ControlRenderer(Internal::ControlRenderer *impl);
 
 };