X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Flogical-model-impl.h;h=0fa3df2092823d0d9fd64bb6acc60b042b0703f9;hb=HEAD;hp=80a1285c621ada16864eea9985938e32128e8343;hpb=6ea2f17f49c9c694a24d951160a7389c844d7889;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/logical-model-impl.h b/dali-toolkit/internal/text/logical-model-impl.h index 80a1285..af4510f 100644 --- a/dali-toolkit/internal/text/logical-model-impl.h +++ b/dali-toolkit/internal/text/logical-model-impl.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_TEXT_LOGICAL_MODEL_IMPL_H /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,12 +27,15 @@ #include #include #include +#include +#include #include #include #include #include #include #include +#include #include namespace Dali @@ -152,6 +155,16 @@ public: */ void ClearFontDescriptionRuns(); + /** + * @brief Clears the strikethrough runs. + */ + void ClearStrikethroughRuns(); + + /** + * @brief Clears the underline runs. + */ + void ClearUnderlineRuns(); + // Paragraphs /** @@ -176,6 +189,34 @@ public: Length numberOfCharacters, Vector& paragraphs); + /** + * @brief Retrieves the number of bounded paragraph runs. + * + * @return The number of bounded paragraph runs. + */ + Length GetNumberOfBoundedParagraphRuns() const; + + /** + * @brief Retrieves the reference for bounded paragraph runs. + * + * @return The reference for bounded paragraph runs. + */ + const Vector& GetBoundedParagraphRuns() const; + + /** + * @brief Retrieves the number of character-spacing runs. + * + * @return The number of character-spacing runs. + */ + Length GetNumberOfCharacterSpacingCharacterRuns() const; + + /** + * @brief Retrieves the reference for character-spacing runs. + * + * @return The reference for character-spacing runs. + */ + const Vector& GetCharacterSpacingCharacterRuns() const; + // Embedded images /** @@ -220,9 +261,17 @@ public: Vector mBidirectionalLineInfo; Vector mEmbeddedItems; Vector mAnchors; - Vector mUnderlinedCharacterRuns; ///< The underlined character run from markup-processor + Vector mUnderlinedCharacterRuns; ///< The underlined character run from markup-processor + Vector mStrikethroughCharacterRuns; ///< The strikethrough character run from markup-processor + Vector mBoundedParagraphRuns; ///< The bounded paragraph is used to handle a paragraph mark-up tag and it's attributes. Like TextAlign, TextDirection, TextIndent, LineHeight, etc. + Vector mCharacterSpacingCharacterRuns; ///< The character-spacing character run from markup-processor. BidirectionalLineRunIndex mBidirectionalLineIndex; ///< The last fetched bidirectional line info. + bool mSpannedTextPlaced : 1; ///< Whether the spanned-text is placed. + + bool mUnderlineRunsUpdated : 1; /// Whether the UnderlinedCharacterRuns is updated. (Added for SpannedText) + bool mCharacterSpacingRunsUpdated : 1; // Flag for updating character-spacing. + bool mStrikethroughRunsUpdated : 1; /// Whether the StrikethroughCharacterRuns is updated. (Added for SpannedText) }; } // namespace Text