X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fvisual-model-impl.h;h=07175824a9ec1878248059510d2ab244bcdf208e;hb=bb0dea72a7c67187997d21b65beac49ba2b7110d;hp=f290ba56291739a77a585a937da9b8cb0b81641a;hpb=24ab5420ad958de9ba345b504de62881162c754b;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/visual-model-impl.h b/dali-toolkit/internal/text/visual-model-impl.h index f290ba5..0717582 100644 --- a/dali-toolkit/internal/text/visual-model-impl.h +++ b/dali-toolkit/internal/text/visual-model-impl.h @@ -21,6 +21,7 @@ // EXTERNAL INCLUDES #include #include +#include #include #include @@ -30,15 +31,12 @@ namespace Dali { -struct Vector2; - namespace Toolkit { namespace Text { -struct LineRun; class VisualModel; typedef IntrusivePtr VisualModelPtr; @@ -154,6 +152,19 @@ public: */ LineIndex GetLineOfCharacter( CharacterIndex characterIndex ); + // Underline runs + + /** + * @brief Retrieves the underline runs. + * + * @param[out] underlineRuns Pointer to a buffer where the underline runs are copied. + * @param[in] index Index of the first underline run to be copied. + * @param[in] numberOfRuns Number of underline runs to be copied. + */ + void GetUnderlineRuns( GlyphRun* underlineRuns, + UnderlineRunIndex index, + Length numberOfRuns ) const; + // Size interface /** @@ -302,15 +313,15 @@ public: Vector mGlyphsPerCharacter; ///< For each character, the number of glyphs that are shaped. Vector mGlyphPositions; ///< For each glyph, the position. Vector mLines; ///< The laid out lines. + Vector mUnderlineRuns; ///< Runs of glyphs that are underlined. + Vector2 mControlSize; ///< The size of the UI control the decorator is adding it's decorations to. Vector4 mTextColor; ///< The text color Vector4 mShadowColor; ///< Color of drop shadow Vector4 mUnderlineColor; ///< Color of underline Vector2 mShadowOffset; ///< Offset for drop shadow, 0 indicates no shadow float mUnderlineHeight; ///< Fixed height for underline to override font metrics. - - private: Size mNaturalSize; ///< Size of the text with no line wrapping.