0b1627375286e044891f7d026b6f581ba9c4110f
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / controls / text-controls / text-label-devel.h
1 #ifndef DALI_TOOLKIT_TEXT_LABEL_DEVEL_H
2 #define DALI_TOOLKIT_TEXT_LABEL_DEVEL_H
3
4 /*
5  * Copyright (c) 2018 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/public-api/controls/text-controls/text-label.h>
23
24 namespace Dali
25 {
26
27 namespace Toolkit
28 {
29
30 namespace DevelTextLabel
31 {
32
33 namespace Property
34 {
35   enum Type
36   {
37     RENDERING_BACKEND = Dali::Toolkit::TextLabel::Property::RENDERING_BACKEND,
38     TEXT = Dali::Toolkit::TextLabel::Property::TEXT,
39     FONT_FAMILY = Dali::Toolkit::TextLabel::Property::FONT_FAMILY,
40     FONT_STYLE = Dali::Toolkit::TextLabel::Property::FONT_STYLE,
41     POINT_SIZE = Dali::Toolkit::TextLabel::Property::POINT_SIZE,
42     MULTI_LINE = Dali::Toolkit::TextLabel::Property::MULTI_LINE,
43     HORIZONTAL_ALIGNMENT = Dali::Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT,
44     VERTICAL_ALIGNMENT = Dali::Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT,
45     UNUSED_PROPERTY_TEXT_COLOR = Dali::Toolkit::TextLabel::Property::UNUSED_PROPERTY_TEXT_COLOR,
46     SHADOW_OFFSET = Dali::Toolkit::TextLabel::Property::SHADOW_OFFSET,
47     SHADOW_COLOR = Dali::Toolkit::TextLabel::Property::SHADOW_COLOR,
48     UNDERLINE_ENABLED = Dali::Toolkit::TextLabel::Property::UNDERLINE_ENABLED,
49     UNDERLINE_COLOR = Dali::Toolkit::TextLabel::Property::UNDERLINE_COLOR,
50     UNDERLINE_HEIGHT = Dali::Toolkit::TextLabel::Property::UNDERLINE_HEIGHT,
51     ENABLE_MARKUP = Dali::Toolkit::TextLabel::Property::ENABLE_MARKUP,
52     ENABLE_AUTO_SCROLL = Dali::Toolkit::TextLabel::Property::ENABLE_AUTO_SCROLL,
53     AUTO_SCROLL_SPEED = Dali::Toolkit::TextLabel::Property::AUTO_SCROLL_SPEED,
54     AUTO_SCROLL_LOOP_COUNT = Dali::Toolkit::TextLabel::Property::AUTO_SCROLL_LOOP_COUNT,
55     AUTO_SCROLL_GAP = Dali::Toolkit::TextLabel::Property::AUTO_SCROLL_GAP,
56     LINE_SPACING = Dali::Toolkit::TextLabel::Property::LINE_SPACING,
57     UNDERLINE = Dali::Toolkit::TextLabel::Property::UNDERLINE,
58     SHADOW = Dali::Toolkit::TextLabel::Property::SHADOW,
59     EMBOSS = Dali::Toolkit::TextLabel::Property::EMBOSS,
60     OUTLINE = Dali::Toolkit::TextLabel::Property::OUTLINE,
61     PIXEL_SIZE = Dali::Toolkit::TextLabel::Property::PIXEL_SIZE,
62     ELLIPSIS = Dali::Toolkit::TextLabel::Property::ELLIPSIS,
63     AUTO_SCROLL_LOOP_DELAY = Dali::Toolkit::TextLabel::Property::AUTO_SCROLL_LOOP_DELAY,
64     AUTO_SCROLL_STOP_MODE = Dali::Toolkit::TextLabel::Property::AUTO_SCROLL_STOP_MODE,
65     LINE_COUNT = Dali::Toolkit::TextLabel::Property::LINE_COUNT,
66     LINE_WRAP_MODE = Dali::Toolkit::TextLabel::Property::LINE_WRAP_MODE,
67
68     /**
69      * @brief The direction of the layout.
70      * @details Name "textDirection", type [Type](@ref Dali::Toolkit::DevelText::TextDirection::Type) (Property::INTEGER), Read/Write
71      * @note The text direction can be changed only by replacing the text itself.
72      * @see TextDirection::Type for supported values.
73      */
74     TEXT_DIRECTION,
75
76     /**
77      * @brief Alignment of text within area of single line
78      * @details Name "verticalLineAlignment", type [Type](@ref Dali::Toolkit::DevelText::VerticalLineAlignment::Type) (Property::INTEGER), Read/Write
79      * @note The default value is TOP
80      * @see VerticalLineAlignment::Type for supported values
81      */
82     VERTICAL_LINE_ALIGNMENT,
83
84     /**
85      * @brief The default text background parameters.
86      * @details Name "textBackground", type Property::MAP.
87      * @note Use "textBackground" as property name to avoid conflict with Control's "background" property
88      *
89      * The background map contains the following keys:
90      *
91      * | %Property Name       | Type     | Required | Description                                                                                                        |
92      * |----------------------|----------|----------|--------------------------------------------------------------------------------------------------------------------|
93      * | enable               | BOOLEAN  | No       | True to enable the background or false to disable (the default value is false)                                     |
94      * | color                | VECTOR4  | No       | The color of the background (the default value is Color::CYAN)                                                     |
95      */
96     BACKGROUND,
97
98     /**
99      * @brief Ignore spaces after text.
100      * @details Name "ignoreSpacesAfterText", type (Property::BOLEAN), Read/Write
101      * @note The default value is true
102      */
103     IGNORE_SPACES_AFTER_TEXT,
104   };
105
106 } // namespace Property
107
108 } // namespace DevelTextLabel
109
110 } // namespace Toolkit
111
112 } // namespace Dali
113
114 #endif // DALI_TOOLKIT_TEXT_LABEL_DEVEL_H