1 #ifndef DALI_TOOLKIT_TEXT_FONT_DESCRIPTION_RUN_H
2 #define DALI_TOOLKIT_TEXT_FONT_DESCRIPTION_RUN_H
5 * Copyright (c) 2019 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
22 #include <dali/devel-api/text-abstraction/font-list.h>
25 #include <dali-toolkit/internal/text/character-run.h>
26 #include <dali-toolkit/internal/text/text-definitions.h>
38 * @brief Run of characters with the same font.
40 struct FontDescriptionRun
43 * Default constructor to set the default values of bitfields
47 familyName{ nullptr },
49 weight{ FontWeight::NONE },
50 width{ FontWidth::NONE },
51 slant{ FontSlant::NONE },
53 familyDefined{ false },
54 weightDefined{ false },
55 widthDefined{ false },
56 slantDefined{ false },
60 FontDescriptionRun( const CharacterRun& characterRun,
72 : characterRun{ characterRun },
73 familyName{ familyName },
74 familyLength{ familyLength },
79 familyDefined{ familyDefined },
80 weightDefined{ weightDefined },
81 widthDefined{ widthDefined },
82 slantDefined{ slantDefined },
83 sizeDefined{ sizeDefined }
86 CharacterRun characterRun; ///< The initial character index and the number of characters of the run.
87 char* familyName; ///< The font's family name.
88 Length familyLength; ///< The length of the font's family name.
89 FontWeight weight; ///< The font's weight.
90 FontWidth width; ///< The font's width.
91 FontSlant slant; ///< The font's slant.
92 PointSize26Dot6 size; ///< The font's size.
94 bool familyDefined : 1; ///< Whether the font's family is defined.
95 bool weightDefined : 1; ///< Whether the font's weight is defined.
96 bool widthDefined : 1; ///< Whether the font's width is defined.
97 bool slantDefined : 1; ///< Whether the font's slant is defined.
98 bool sizeDefined : 1; ///< Whether the font's size is defined.
103 } // namespace Toolkit
107 #endif // DALI_TOOLKIT_TEXT_FONT_DESCRIPTION_RUN_H