X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Flayouts%2Flayout-engine.cpp;h=17e9f58fd4436e0f52a89c17ec14f0cdf7f3dc12;hb=5e86784bcfbc88120549a72284a23b98adbc90ae;hp=148ff583769e1a1443c8ff0fd459bd1729e8f8a2;hpb=ee431c9e2b342243f9e0e2b6bafca7505d321457;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/layouts/layout-engine.cpp b/dali-toolkit/internal/text/layouts/layout-engine.cpp index 148ff58..17e9f58 100644 --- a/dali-toolkit/internal/text/layouts/layout-engine.cpp +++ b/dali-toolkit/internal/text/layouts/layout-engine.cpp @@ -1078,10 +1078,12 @@ struct Engine::Impl CharacterIndex startIndex, Length numberOfCharacters, HorizontalAlignment horizontalAlignment, - Vector& lines ) + Vector& lines, + float& alignmentOffset ) { const CharacterIndex lastCharacterPlusOne = startIndex + numberOfCharacters; + alignmentOffset = MAX_FLOAT; // Traverse all lines and align the glyphs. for( Vector::Iterator it = lines.Begin(), endIt = lines.End(); it != endIt; @@ -1106,6 +1108,9 @@ struct Engine::Impl CalculateHorizontalAlignment( size.width, horizontalAlignment, line ); + + // Updates the alignment offset. + alignmentOffset = std::min( alignmentOffset, line.alignmentOffset ); } } @@ -1267,13 +1272,15 @@ void Engine::Align( const Size& size, CharacterIndex startIndex, Length numberOfCharacters, Layout::HorizontalAlignment horizontalAlignment, - Vector& lines ) + Vector& lines, + float& alignmentOffset ) { mImpl->Align( size, startIndex, numberOfCharacters, horizontalAlignment, - lines ); + lines, + alignmentOffset ); } void Engine::SetDefaultLineSpacing( float lineSpacing )