Merge "Add ApplyCustomFragmentPrefix" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / bidirectional-line-info-run.h
1 #ifndef DALI_TOOLKIT_TEXT_BIDIRECTIONAL_LINE_INFO_RUN_H
2 #define DALI_TOOLKIT_TEXT_BIDIRECTIONAL_LINE_INFO_RUN_H
3
4 /*
5  * Copyright (c) 2021 Samsung Electronics Co., Ltd.
6  *
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
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
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.
18  *
19  */
20
21 // INTERNAL INCLUDES
22 #include <dali-toolkit/internal/text/character-run.h>
23
24 namespace Dali
25 {
26 namespace Toolkit
27 {
28 namespace Text
29 {
30 /**
31  * @brief BidirectionalLineInfoRun
32  */
33 struct BidirectionalLineInfoRun
34 {
35   CharacterRun       characterRun;                  ///< The initial character index within the whole text and the number of characters of the run. In case the line is splitted by MIDDLE Ellipsis, this for the first half of line.
36   CharacterIndex*    visualToLogicalMap;            ///< Pointer to the visual to logical map table. In case the line is splitted by MIDDLE Ellipsis, this for the first half of line.
37   CharacterRun       characterRunForSecondHalfLine; ///< The initial character index within the whole text and the number of characters of the run for the second half of line.
38   CharacterIndex*    visualToLogicalMapSecondHalf;  ///< Pointer to the visual to logical map table for the second half of line.
39   CharacterDirection direction : 1;                 ///< Direction of the first character of the paragraph.
40   bool               isIdentity : 1;                ///< Whether the map is the identity.
41 };
42
43 } // namespace Text
44
45 } // namespace Toolkit
46
47 } // namespace Dali
48
49 #endif // DALI_TOOLKIT_TEXT_BIDIRECTIONAL_LINE_INFO_RUN_H