X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fmulti-language-support.h;h=7423820666e2f1af211578592fcd3f6952cf1bf5;hp=a22676c67bdaa397fd9113c9fc311eb5c7518636;hb=HEAD;hpb=6a1e5b837622d06f6cd69dc660cd11d23f7153ba diff --git a/dali-toolkit/internal/text/multi-language-support.h b/dali-toolkit/internal/text/multi-language-support.h index a22676c..5d15956 100644 --- a/dali-toolkit/internal/text/multi-language-support.h +++ b/dali-toolkit/internal/text/multi-language-support.h @@ -1,8 +1,8 @@ -#ifndef __DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H__ -#define __DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H__ +#ifndef DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H +#define DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H /* - * Copyright (c) 2015 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. @@ -23,26 +23,21 @@ #include // INTERNAL INCLUDES +#include #include #include namespace Dali { - namespace Toolkit { - namespace Text { - namespace Internal DALI_INTERNAL { - class MultilanguageSupport; -} // Internal - -class LogicalModel; +} // namespace DALI_INTERNAL /** * @brief Sets the character's scripts to the model and validates the fonts set by the user or assigns default ones. @@ -50,7 +45,6 @@ class LogicalModel; class MultilanguageSupport : public BaseHandle { public: - /** * @brief Create an uninitialized MultilanguageSupport handle. */ @@ -68,7 +62,7 @@ public: * * @param[in] implementation A pointer to the internal multi-language support object. */ - explicit DALI_INTERNAL MultilanguageSupport( Internal::MultilanguageSupport* implementation ); + explicit DALI_INTERNAL MultilanguageSupport(Internal::MultilanguageSupport* implementation); /** * @brief Retrieve a handle to the MultilanguageSupport instance. @@ -91,18 +85,18 @@ public: * script of the first character of the paragraph with a defined script. * * @param[in] text Vector of UTF-32 characters. - * @param[in] lineBreakInfo Vector with the line break info. + * @param[in] startIndex The character from where the script info is set. + * @param[in] numberOfCharacters The number of characters to set the script. * @param[out] scripts Vector containing the script runs for the whole text. */ - void SetScripts( const Vector& text, - const Vector& lineBreakInfo, - Vector& scripts ); + void SetScripts(const Vector& text, + CharacterIndex startIndex, + Length numberOfCharacters, + Vector& scripts); /** * @brief Validates the character's font of the whole text. * - * It may update fonts set by application developers. - * * This method ensures all characters are going to be rendered using an appropriate font. Provided a valid font * exists in the platform. * @@ -113,11 +107,30 @@ public: * * @param[in] text Vector of UTF-32 characters. * @param[in] scripts Vector containing the script runs for the whole text. - * @param[in,out] fonts Initially contains the fonts set by the application developers. Returns the validated fonts. + * @param[in] fontDescriptions The fonts set through the mark-up string or the input style set through the property system. + * @param[in] defaultFontDescription The default font's description set through the property system. + * @param[in] defaultFontPointSize The default font's point size set through the property system. + * @param[in] fontSizeScale The font's size scale. + * @param[in] startIndex The character from where the font info is set. + * @param[in] numberOfCharacters The number of characters to set the font. + * @param[out] fonts The validated fonts. */ - void ValidateFonts( const Vector& text, - const Vector& scripts, - Vector& fonts ); + void ValidateFonts(const Vector& text, + const Vector& scripts, + const Vector& fontDescriptions, + const TextAbstraction::FontDescription& defaultFontDescription, + TextAbstraction::PointSize26Dot6 defaultFontPointSize, + float fontSizeScale, + CharacterIndex startIndex, + Length numberOfCharacters, + Vector& fonts); + +public: + // Default copy and move operator + MultilanguageSupport(const MultilanguageSupport& rhs) = default; + MultilanguageSupport(MultilanguageSupport&& rhs) = default; + MultilanguageSupport& operator=(const MultilanguageSupport& rhs) = default; + MultilanguageSupport& operator=(MultilanguageSupport&& rhs) = default; }; } // namespace Text @@ -126,4 +139,4 @@ public: } // namespace Dali -#endif // __DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H__ +#endif // DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H