-#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) 2021 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.
#include <dali/public-api/object/base-handle.h>
// INTERNAL INCLUDES
+#include <dali-toolkit/internal/text/font-description-run.h>
#include <dali-toolkit/internal/text/font-run.h>
#include <dali-toolkit/internal/text/script-run.h>
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.
class MultilanguageSupport : public BaseHandle
{
public:
-
/**
* @brief Create an uninitialized MultilanguageSupport handle.
*/
*
* @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.
* 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<Character>& text,
- const Vector<LineBreakInfo>& lineBreakInfo,
- Vector<ScriptRun>& scripts );
+ void SetScripts(const Vector<Character>& text,
+ CharacterIndex startIndex,
+ Length numberOfCharacters,
+ Vector<ScriptRun>& 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.
*
*
* @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] 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<Character>& text,
- const Vector<ScriptRun>& scripts,
- Vector<FontRun>& fonts );
+ void ValidateFonts(const Vector<Character>& text,
+ const Vector<ScriptRun>& scripts,
+ const Vector<FontDescriptionRun>& fontDescriptions,
+ const TextAbstraction::FontDescription& defaultFontDescription,
+ TextAbstraction::PointSize26Dot6 defaultFontPointSize,
+ CharacterIndex startIndex,
+ Length numberOfCharacters,
+ Vector<FontRun>& fonts);
};
} // namespace Text
} // namespace Dali
-#endif // __DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H__
+#endif // DALI_TOOLKIT_TEXT_MULTI_LANGUAGE_SUPPORT_H