TextModel - Create paragraph info for a given range of characters inside a text.
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / text-definitions.h
index d991384..0e9fb3f 100644 (file)
  */
 
 // EXTERNAL INCLUDES
-#include <dali/public-api/text-abstraction/text-abstraction-definitions.h>
-#include <dali/public-api/text-abstraction/font-metrics.h>
-#include <dali/public-api/text-abstraction/glyph-info.h>
-#include <dali/public-api/text-abstraction/script.h>
+#include <dali/devel-api/text-abstraction/text-abstraction-definitions.h>
+#include <dali/devel-api/text-abstraction/font-list.h>
+#include <dali/devel-api/text-abstraction/font-metrics.h>
+#include <dali/devel-api/text-abstraction/glyph-info.h>
+#include <dali/devel-api/text-abstraction/script.h>
 
 namespace Dali
 {
@@ -33,23 +34,32 @@ namespace Toolkit
 namespace Text
 {
 
-typedef TextAbstraction::FontId          FontId;             ///< The unique identifier for a font face (generated by FontClient).
-typedef TextAbstraction::FontMetrics     FontMetrics;        ///< The metrics for a Font expressed in 26.6 fractional pixel format.
-typedef TextAbstraction::PointSize26Dot6 PointSize26Dot6;    ///< The point size in 26.6 fractional points.
-typedef TextAbstraction::FaceIndex       FaceIndex;          ///< Used with fonts which allow several font faces.
-typedef TextAbstraction::GlyphIndex      GlyphIndex;         ///< Uniquely identifies a glyph within a particular font.
-typedef TextAbstraction::Character       Character;          ///< A UTF-32 representation of a character.
-typedef TextAbstraction::GlyphInfo       GlyphInfo;          ///< The information describing a glyph (font ID, index, metrics).
-typedef TextAbstraction::CharacterIndex  CharacterIndex;     ///< An index into an array of characters.
-typedef TextAbstraction::Length          Length;             ///< The length of an array.
-typedef TextAbstraction::BidiInfoIndex   BidiInfoIndex;      ///< Index to the bidirectional info for a paragraph.
-typedef TextAbstraction::Script          Script;             ///< The character's script.
-typedef TextAbstraction::LineBreakInfo   LineBreakInfo;      ///< Line break info (must break, allow break, no break). Possible values are: @e LINE_MUST_BREAK, @e LINE_ALLOW_BREAK and @e LINE_NO_BREAK (in the TextAbstraction namespace).
-typedef TextAbstraction::WordBreakInfo   WordBreakInfo;      ///< Word break info (break, no break). Possible values are: @e WORD_BREAK and @e WORD_NO_BREAK (in the TextAbstraction namespace).
-
-typedef uint32_t                         GlyphIndex;         ///< An index into an array of glyphs.
-typedef bool                             CharacterDirection; ///< The character's direction: @e false is left to right, @e true is right to left.
-typedef uint32_t                         LineIndex;          ///< An index into an array of lines.
+typedef TextAbstraction::FontId             FontId;             ///< The unique identifier for a font face (generated by FontClient).
+typedef TextAbstraction::FontWidth::Type    FontWidth;          ///< The font's width.
+typedef TextAbstraction::FontWeight::Type   FontWeight;         ///< The font's weight.
+typedef TextAbstraction::FontSlant::Type    FontSlant;          ///< The font's slant.
+typedef TextAbstraction::FontMetrics        FontMetrics;        ///< The metrics for a Font expressed in 26.6 fractional pixel format.
+typedef TextAbstraction::PointSize26Dot6    PointSize26Dot6;    ///< The point size in 26.6 fractional points.
+typedef TextAbstraction::FaceIndex          FaceIndex;          ///< Used with fonts which allow several font faces.
+typedef TextAbstraction::GlyphIndex         GlyphIndex;         ///< Uniquely identifies a glyph within a particular font.
+typedef TextAbstraction::Character          Character;          ///< A UTF-32 representation of a character.
+typedef TextAbstraction::GlyphInfo          GlyphInfo;          ///< The information describing a glyph (font ID, index, metrics).
+typedef TextAbstraction::CharacterIndex     CharacterIndex;     ///< An index into an array of characters.
+typedef TextAbstraction::Length             Length;             ///< The length of an array.
+typedef TextAbstraction::BidiInfoIndex      BidiInfoIndex;      ///< Index to the bidirectional info for a paragraph.
+typedef TextAbstraction::Script             Script;             ///< The character's script.
+typedef TextAbstraction::LineBreakInfo      LineBreakInfo;      ///< Line break info (must break, allow break, no break). Possible values are: @e LINE_MUST_BREAK, @e LINE_ALLOW_BREAK and @e LINE_NO_BREAK (in the TextAbstraction namespace).
+typedef TextAbstraction::WordBreakInfo      WordBreakInfo;      ///< Word break info (break, no break). Possible values are: @e WORD_BREAK and @e WORD_NO_BREAK (in the TextAbstraction namespace).
+typedef TextAbstraction::CharacterDirection CharacterDirection; ///< The character's direction: @e false is left to right, @e true is right to left.
+
+typedef uint32_t                         GlyphIndex;                ///< An index into an array of glyphs.
+typedef uint32_t                         ScriptRunIndex;            ///< An index into an array of script runs.
+typedef uint32_t                         FontRunIndex;              ///< An index into an array of font runs.
+typedef uint32_t                         UnderlineRunIndex;         ///< An index into an array of underline runs.
+typedef uint32_t                         BidirectionalRunIndex;     ///< An index into an array of bidirectional info.
+typedef uint32_t                         BidirectionalLineRunIndex; ///< An index into an array of bidirectional line info.
+typedef uint32_t                         LineIndex;                 ///< An index into an array of lines.
+typedef uint32_t                         ParagraphRunIndex;         ///< An index into an array of paragraphs.
 
 } // namespace Text