Merge "TextController - Update the text model." into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / text-view.h
index e611c3c..0067f94 100644 (file)
@@ -25,8 +25,6 @@
 namespace Dali
 {
 
-struct Vector2;
-
 namespace Toolkit
 {
 
@@ -58,23 +56,28 @@ public:
   void SetVisualModel( VisualModelPtr visualModel );
 
   /**
-   * @copydoc Dali::Toolkit::Text::ViewInterface::GetNumberOfGlyphs()
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetControlSize()
    */
-  virtual Length GetNumberOfGlyphs() const;
+  virtual const Vector2& GetControlSize() const;
 
   /**
-   * @copydoc Dali::Toolkit::Text::ViewInterface::GetGlyphs()
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetLayoutSize()
+   */
+  virtual const Vector2& GetLayoutSize() const;
+
+  /**
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetNumberOfGlyphs()
    */
-  virtual void GetGlyphs( GlyphInfo* glyphs,
-                          GlyphIndex glyphIndex,
-                          Length numberOfGlyphs ) const;
+  virtual Length GetNumberOfGlyphs() const;
 
   /**
-   * @copydoc Dali::Toolkit::Text::ViewInterface::GetGlyphPositions()
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetGlyphs()
    */
-  virtual void GetGlyphPositions( Vector2* glyphPositions,
-                                  GlyphIndex glyphIndex,
-                                  Length numberOfGlyphs ) const;
+  virtual Length GetGlyphs( GlyphInfo* glyphs,
+                            Vector2* glyphPositions,
+                            Vector4* glyphColors,
+                            GlyphIndex glyphIndex,
+                            Length numberOfGlyphs ) const;
 
   /**
    * @copydoc Dali::Toolkit::Text::ViewInterface::GetTextColor()
@@ -106,6 +109,18 @@ public:
    */
   virtual float GetUnderlineHeight() const;
 
+  /**
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetNumberOfUnderlineRuns()
+   */
+  virtual Length GetNumberOfUnderlineRuns() const;
+
+  /**
+   * @copydoc Dali::Toolkit::Text::ViewInterface::GetUnderlineRuns()
+   */
+  virtual void GetUnderlineRuns( GlyphRun* underlineRuns,
+                                 UnderlineRunIndex index,
+                                 Length numberOfRuns ) const;
+
 private:
 
   // Undefined