X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fline-run.h;h=52c47a13e835b61dbdea5ad2aba25c60636f3f51;hp=fd5371dc4aff754fc8dd9b43319e31f81d68814c;hb=75fe6c4a2f784bd52ccf8eb16049317825338a6e;hpb=cc82bd9b187cda8fe2c8336b73fd1fa9376cfebd diff --git a/dali-toolkit/internal/text/line-run.h b/dali-toolkit/internal/text/line-run.h index fd5371d..52c47a1 100644 --- a/dali-toolkit/internal/text/line-run.h +++ b/dali-toolkit/internal/text/line-run.h @@ -1,8 +1,8 @@ -#ifndef __DALI_TOOLKIT_TEXT_LINE_RUN_H__ -#define __DALI_TOOLKIT_TEXT_LINE_RUN_H__ +#ifndef DALI_TOOLKIT_TEXT_LINE_RUN_H +#define DALI_TOOLKIT_TEXT_LINE_RUN_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. @@ -18,37 +18,47 @@ * */ -// EXTERNAL INCLUDES -#include - // INTERNAL INCLUDES #include +#include namespace Dali { - namespace Toolkit { - namespace Text { - /** * @brief LineRun */ struct LineRun { - GlyphIndex glyphIndex; ///< The initial glyph index. - Length numberOfGlyphs; ///< The number of glyphs of the run. - CharacterRun characterRun; ///< The initial character and the number of characters. - Size lineSize; ///< The size of the line. - float extraLength; ///< The length of the white spaces at the end of the line. + GlyphRun glyphRun; ///< The initial glyph index and the number of glyphs of the run. + CharacterRun characterRun; ///< The initial character index and the number of characters of the run. + float width; ///< The line's width. + float ascender; ///< The line's ascender. + float descender; ///< The line's descender. + float extraLength; ///< The length of the white spaces at the end of the line. + float alignmentOffset; ///< The horizontal alignment offset. + float lineSpacing; ///< The line's spacing + CharacterDirection direction : 1; ///< Direction of the first character of the paragraph. + bool ellipsis : 1; ///< Wheter ellipsis is added to the line. + bool isSplitToTwoHalves; ///< Whether the second half is defined. When split line to two halves to set Ellipsis in the MIDDLE of line. The second half is the second part of line after Ellipsis. + GlyphRun glyphRunSecondHalf; ///< The initial glyph index and the number of glyphs of the run for the second half of line. + CharacterRun characterRunForSecondHalfLine; ///< The initial character index and the number of characters of the run for the second half of line. }; +/** + * @brief Get the line height for the specified line run. + * + * @param[in] lineRun The line runs to get the height for. + */ +float GetLineHeight(const LineRun lineRun); + } // namespace Text } // namespace Toolkit } // namespace Dali -#endif // __DALI_TOOLKIT_TEXT_LINE_RUN_H__ +#endif // DALI_TOOLKIT_TEXT_LINE_RUN_H