X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Flogical-model-impl.cpp;h=123d8ea4d0900003fe9839cedb131c59af7fc4ef;hb=e7b6e57ffd4743de2a300b440d59ca7c3c80a8a8;hp=7ebf2a780a719806701bd400d8443a5bdce88807;hpb=6a219d0bbcfd016e24b5466d5fb1a666c92feae5;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 7ebf2a7..123d8ea 100644 --- a/dali-toolkit/internal/text/logical-model-impl.cpp +++ b/dali-toolkit/internal/text/logical-model-impl.cpp @@ -146,8 +146,8 @@ CharacterIndex LogicalModel::GetLogicalCursorIndex(CharacterIndex visualCursorIn // both characters and the direction of the paragraph. const CharacterIndex previousVisualCursorIndex = visualCursorIndex - 1u; - const CharacterIndex previousLogicalCursorIndex = *(bidirectionalLineInfo->visualToLogicalMap + previousVisualCursorIndex - bidirectionalLineInfo->characterRun.characterIndex) + bidirectionalLineInfo->characterRun.characterIndex; - const CharacterIndex currentLogicalCursorIndex = *(bidirectionalLineInfo->visualToLogicalMap + visualCursorIndex - bidirectionalLineInfo->characterRun.characterIndex) + bidirectionalLineInfo->characterRun.characterIndex; + const CharacterIndex previousLogicalCursorIndex = *(bidirectionalLineInfo->visualToLogicalMap + static_cast(previousVisualCursorIndex - bidirectionalLineInfo->characterRun.characterIndex)) + bidirectionalLineInfo->characterRun.characterIndex; + const CharacterIndex currentLogicalCursorIndex = *(bidirectionalLineInfo->visualToLogicalMap + static_cast(visualCursorIndex - bidirectionalLineInfo->characterRun.characterIndex)) + bidirectionalLineInfo->characterRun.characterIndex; const CharacterDirection previousCharacterDirection = *(modelCharacterDirections + previousLogicalCursorIndex); const CharacterDirection currentCharacterDirection = *(modelCharacterDirections + currentLogicalCursorIndex); @@ -199,7 +199,7 @@ CharacterIndex LogicalModel::GetLogicalCharacterIndex(CharacterIndex visualChara // The bidirectional line info. const BidirectionalLineInfoRun* const bidirectionalLineInfo = mBidirectionalLineInfo.Begin() + mBidirectionalLineIndex; - return *(bidirectionalLineInfo->visualToLogicalMap + visualCharacterIndex - bidirectionalLineInfo->characterRun.characterIndex) + bidirectionalLineInfo->characterRun.characterIndex; + return *(bidirectionalLineInfo->visualToLogicalMap + static_cast(visualCharacterIndex - bidirectionalLineInfo->characterRun.characterIndex)) + bidirectionalLineInfo->characterRun.characterIndex; } bool LogicalModel::FetchBidirectionalLineInfo(CharacterIndex characterIndex) @@ -543,7 +543,7 @@ void LogicalModel::CreateParagraphInfo(CharacterIndex startIndex, if(updateCurrentParagraphs) { for(Vector::ConstIterator it = mParagraphInfo.Begin(), - endIt = mParagraphInfo.Begin() + totalNumberOfParagraphs - numberOfNewParagraphs; + endIt = mParagraphInfo.Begin() + static_cast(totalNumberOfParagraphs - numberOfNewParagraphs); it != endIt; ++it) { @@ -658,7 +658,9 @@ LogicalModel::~LogicalModel() } LogicalModel::LogicalModel() -: mBidirectionalLineIndex(0u) +: mBidirectionalLineIndex(0u), + mSpannedTextPlaced(false), + mUnderlineRunsUpdated(false) { }