X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fvisual-model-impl.h;h=359b695deb20c9ca441ed9eddc5b142a878afef9;hp=c355c3cebb62adae532301f51998f6e00efe06e5;hb=5247947358fb8bd9a1b27a6f0f347d6836b6e4f0;hpb=8f2687c154d9fc859c58e5ee2fb42a18f9fe6e78 diff --git a/dali-toolkit/internal/text/visual-model-impl.h b/dali-toolkit/internal/text/visual-model-impl.h index c355c3c..359b695 100644 --- a/dali-toolkit/internal/text/visual-model-impl.h +++ b/dali-toolkit/internal/text/visual-model-impl.h @@ -29,6 +29,9 @@ #include #include +// DEVEL INCLUDES +#include + namespace Dali { namespace Toolkit @@ -374,6 +377,89 @@ public: */ bool IsMarkupProcessorEnabled() const; + /** + * @brief Sets ellipsis position + * @param[in] ellipsisPosition The ellipsis position for the text + */ + void SetEllipsisPosition(Toolkit::DevelText::EllipsisPosition::Type ellipsisPosition); + + /** + * @brief Retrieves ellipsis position for text. + * + * @return The ellipsis position. + */ + Toolkit::DevelText::EllipsisPosition::Type GetEllipsisPosition() const; + + /** + * @brief Enable or disable the text elide. + * + * @param[in] enabled Whether to enable the text elide. + */ + void SetTextElideEnabled(bool enabled); + + /** + * @brief Whether the text elide property is enabled. + * + * @return @e true if the text elide property is enabled, @e false otherwise. + */ + bool IsTextElideEnabled() const; + + /** + * @brief Sets the start index of laid-out glyphs. + * + * @param[in] startIndexOfElidedGlyphs The start index of laid-out glyphs. + */ + void SetStartIndexOfElidedGlyphs(GlyphIndex startIndexOfElidedGlyphs); + + /** + * @brief Sets the end index of elided glyphs. + * + * @param[in] endIndexOfElidedGlyphs The end index of elided glyphs. + */ + void SetEndIndexOfElidedGlyphs(GlyphIndex endIndexOfElidedGlyphs); + + /** + * @brief Sets the first middle index of elided glyphs, index before ellipsis of middle. + * + * @param[in] firstMiddleIndexOfElidedGlyphs The first middle index of elided glyphs, index before ellipsis of middle. + */ + void SetFirstMiddleIndexOfElidedGlyphs(GlyphIndex firstMiddleIndexOfElidedGlyphs); + + /** + * @brief Sets the second middle index of elided glyphs, index of ellipsis of middle. + * + * @param[in] secondMiddleIndexOfElidedGlyphs The second middle index of elided glyphs, index of ellipsis of middle. + */ + void SetSecondMiddleIndexOfElidedGlyphs(GlyphIndex secondMiddleIndexOfElidedGlyphs); + + /** + * @brief Retrieves the start index of laid-out glyphs. + * + * @return The start index of laid-out glyphs. + */ + GlyphIndex GetStartIndexOfElidedGlyphs() const; + + /** + * @brief Retrieves the end index of laid-out glyphs. + * + * @return The end index of laid-out glyphs. + */ + GlyphIndex GetEndIndexOfElidedGlyphs() const; + + /** + * @brief Retrieves the first middle index of elided glyphs, index before ellipsis of middle. + * + * @return The first middle index of elided glyphs, index before ellipsis of middle. + */ + GlyphIndex GetFirstMiddleIndexOfElidedGlyphs() const; + + /** + * @brief Retrieves the second middle index of elided glyphs, index of ellipsis of middle. + * + * @return The second middle index of elided glyphs, index of ellipsis of middle. + */ + GlyphIndex GetSecondMiddleIndexOfElidedGlyphs() const; + protected: /** * @brief A reference counted object may only be deleted by calling Unreference(). @@ -424,12 +510,19 @@ private: // Caches to increase performance in some consecutive operations. LineIndex mCachedLineIndex; ///< Used to increase performance in consecutive calls to GetLineOfGlyph() or GetLineOfCharacter() with consecutive glyphs or characters. + DevelText::EllipsisPosition::Type mEllipsisPosition; ///< Where is the location the text elide + GlyphIndex mStartIndexOfElidedGlyphs; ///< The start index of elided glyphs. + GlyphIndex mEndIndexOfElidedGlyphs; ///< The end index of elided glyphs. + GlyphIndex mFirstMiddleIndexOfElidedGlyphs; ///< The first end index of elided glyphs, index before ellipsis of middle. + GlyphIndex mSecondMiddleIndexOfElidedGlyphs; ///< The first end index of elided glyphs, index of ellipsis of middle. + bool mTextElideEnabled : 1; ///< Whether the text's elide is enabled. + public: - bool mUnderlineEnabled : 1; ///< Underline enabled flag - bool mUnderlineColorSet : 1; ///< Has the underline color been explicitly set? - bool mBackgroundEnabled : 1; ///< Background enabled flag - bool mMarkupProcessorEnabled : 1; ///< Markup-processor enabled flag - HyphenInfo mHyphen; ///< Contains hyphen glyph info & the character index to draw hyphen after. + bool mUnderlineEnabled : 1; ///< Underline enabled flag + bool mUnderlineColorSet : 1; ///< Has the underline color been explicitly set? + bool mBackgroundEnabled : 1; ///< Background enabled flag + bool mMarkupProcessorEnabled : 1; ///< Markup-processor enabled flag + HyphenInfo mHyphen; ///< Contains hyphen glyph info & the character index to draw hyphen after. }; } // namespace Text