X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit-internal%2Fdali-toolkit-test-utils%2Ftoolkit-text-utils.cpp;h=7db463268ac85acebdd6ab7743fd72091b10bf69;hp=e9d0ef09dd4d087b8056f4c097c580bd20bccc78;hb=HEAD;hpb=120b951f49a8f1bb98adc557b9415dd044632e5d diff --git a/automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/toolkit-text-utils.cpp b/automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/toolkit-text-utils.cpp index e9d0ef0..7db4632 100644 --- a/automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/toolkit-text-utils.cpp +++ b/automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/toolkit-text-utils.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Samsung Electronics Co., Ltd. + * Copyright (c) 2023 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. @@ -21,6 +21,7 @@ // EXTERNAL INCLUDES #include #include +#include ///< for memcpy // INTERNAL INCLUDES #include @@ -28,11 +29,11 @@ #include #include #include -#include +#include #include #include #include -#include +#include namespace Dali { @@ -102,7 +103,8 @@ void CreateTextModel(const std::string& text, LineWrap::Mode wrapMode, bool ellipsisEnabled, DevelText::EllipsisPosition::Type ellipsisPosition, - float lineSpacing) + float lineSpacing, + float characterSpacing) { textModel = Model::New(); ///< Pointer to the text's model. LogicalModelPtr logicalModel = textModel->mLogicalModel; @@ -114,13 +116,17 @@ void CreateTextModel(const std::string& text, logicalModel->mAnchors, logicalModel->mUnderlinedCharacterRuns, logicalModel->mBackgroundColorRuns, - logicalModel->mStrikethroughCharacterRuns); + logicalModel->mStrikethroughCharacterRuns, + logicalModel->mBoundedParagraphRuns, + logicalModel->mCharacterSpacingCharacterRuns); Length textSize = 0u; const uint8_t* utf8 = NULL; if(markupProcessorEnabled) { - ProcessMarkupString(text, markupProcessData); + MarkupPropertyData markupPropertyData(Color::MEDIUM_BLUE, Color::DARK_MAGENTA); + + ProcessMarkupString(text, markupPropertyData, markupProcessData); textSize = markupProcessData.markupProcessedText.size(); // This is a bit horrible but std::string returns a (signed) char* @@ -226,6 +232,7 @@ void CreateTextModel(const std::string& text, fontDescriptionRuns, fontDescription, TextAbstraction::FontClient::DEFAULT_POINT_SIZE, + 1.0f, 0u, characterCount, validFonts); @@ -299,6 +306,8 @@ void CreateTextModel(const std::string& text, visualModel->CreateGlyphsPerCharacterTable(0u, 0u, characterCount); visualModel->CreateCharacterToGlyphTable(0u, 0u, characterCount); + visualModel->SetCharacterSpacing(characterSpacing); + const Length numberOfGlyphs = glyphs.Count(); // 8) Get the glyph metrics @@ -346,11 +355,15 @@ void CreateTextModel(const std::string& text, layoutParameters.startLineIndex = 0u; layoutParameters.estimatedNumberOfLines = logicalModel->mParagraphInfo.Count(); - bool isAutoScroll = false; + bool isAutoScroll = false; + bool isAutoScrollMaxTextureExceeded = false; + bool isHiddenInputEnabled = false; layoutEngine.LayoutText(layoutParameters, layoutSize, false, isAutoScroll, + isAutoScrollMaxTextureExceeded, + isHiddenInputEnabled, ellipsisPosition); if(options.align)