X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=dali-toolkit%2Finternal%2Ftext%2Flogical-model-impl.cpp;h=7ebf2a780a719806701bd400d8443a5bdce88807;hb=528ee21711fc507b20ddb031cf6b1d71f1f44e75;hp=f1fd1f593837c4e32834889c920980c0a6dbd4e3;hpb=464bc52fc6f6751d915e3304836f462b0258a633;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/logical-model-impl.cpp b/dali-toolkit/internal/text/logical-model-impl.cpp index f1fd1f5..7ebf2a7 100644 --- a/dali-toolkit/internal/text/logical-model-impl.cpp +++ b/dali-toolkit/internal/text/logical-model-impl.cpp @@ -19,6 +19,7 @@ #include // INTERNAL INCLUDES +#include #include #include @@ -331,6 +332,26 @@ void LogicalModel::UpdateTextStyleRuns(CharacterIndex index, int numberOfCharact // Free memory allocated for the font family name. FreeFontFamilyNames(removedFontDescriptionRuns); + + // Process the bounded paragraph runs + MergeBoundedParagraphRunsWhenRemoveCharacters(mText, + index, + numberOfCharacters, + mBoundedParagraphRuns); + + Vector removedBoundedParagraphRuns; + UpdateCharacterRuns(index, + numberOfCharacters, + totalNumberOfCharacters, + mBoundedParagraphRuns, + removedBoundedParagraphRuns); + + Vector removedCharacterSpacingCharacterRuns; + UpdateCharacterRuns(index, + numberOfCharacters, + totalNumberOfCharacters, + mCharacterSpacingCharacterRuns, + removedCharacterSpacingCharacterRuns); } void LogicalModel::RetrieveStyle(CharacterIndex index, InputStyle& style) @@ -471,6 +492,11 @@ void LogicalModel::ClearFontDescriptionRuns() FreeFontFamilyNames(mFontDescriptionRuns); } +void LogicalModel::ClearStrikethroughRuns() +{ + mStrikethroughCharacterRuns.Clear(); +} + void LogicalModel::CreateParagraphInfo(CharacterIndex startIndex, Length numberOfCharacters) { @@ -595,6 +621,26 @@ void LogicalModel::FindParagraphs(CharacterIndex index, } } +Length LogicalModel::GetNumberOfBoundedParagraphRuns() const +{ + return mBoundedParagraphRuns.Count(); +} + +const Vector& LogicalModel::GetBoundedParagraphRuns() const +{ + return mBoundedParagraphRuns; +} + +Length LogicalModel::GetNumberOfCharacterSpacingCharacterRuns() const +{ + return mCharacterSpacingCharacterRuns.Count(); +} + +const Vector& LogicalModel::GetCharacterSpacingCharacterRuns() const +{ + return mCharacterSpacingCharacterRuns; +} + void LogicalModel::ClearEmbeddedImages() { FreeEmbeddedItems(mEmbeddedItems);