2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://floralicense.org/license/
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FGrp_TextCommon.h
20 * @brief This file contains the declarations of text properties.
24 #ifndef _FGRP_INTERNAL_TEXT_COMMON_H_
25 #define _FGRP_INTERNAL_TEXT_COMMON_H_
28 #include <FBaseDataType.h>
29 #include <FGrpColor.h>
30 #include <FGrpRectangle.h>
31 #include <FGrpBitmap.h>
34 // Forward Declarations
35 namespace Tizen { namespace Graphics
41 enum TextLineReturnType
43 TEXT_RETBY_NORMAL = 2,
45 TEXT_RETBY_LIMITWIDTH,
46 TEXT_RETBY_LIMITLENGTH,
48 TEXT_RETBY_LINEFEED_BIDI
53 TEXT_ELEMENT_TYPE_NONE = 0,
54 TEXT_ELEMENT_TYPE_TEXT,
55 TEXT_ELEMENT_TYPE_IMAGE,
56 TEXT_ELEMENT_TYPE_CUTLINK,
60 enum TextElementSourceType
62 TEXT_ELEMENT_SOURCE_TYPE_EXTERNAL = 0,
63 TEXT_ELEMENT_SOURCE_TYPE_INTERNAL,
64 TEXT_ELEMENT_SOURCE_TYPE_MAX
67 enum TextObjectWrapType
69 TEXT_OBJECT_WRAP_TYPE_NONE = 0,
70 TEXT_OBJECT_WRAP_TYPE_CHARACTER,
71 TEXT_OBJECT_WRAP_TYPE_WORD
74 enum TextObjectEllipsisType
76 TEXT_OBJECT_ELLIPSIS_TYPE_INVALID = -1,
77 TEXT_OBJECT_ELLIPSIS_TYPE_TAIL,
78 TEXT_OBJECT_ELLIPSIS_TYPE_MIDDLE,
79 TEXT_OBJECT_ELLIPSIS_TYPE_HEAD,
80 TEXT_OBJECT_ELLIPSIS_TYPE_MAX
83 enum TextObjectLinkColorType
85 TEXT_OBJECT_LINK_COLOR_TYPE_NONE = -1,
86 TEXT_OBJECT_LINK_COLOR_TYPE_URL_NORMAL,
87 TEXT_OBJECT_LINK_COLOR_TYPE_URL_SELECT,
88 TEXT_OBJECT_LINK_COLOR_TYPE_EMAIL_NORMAL,
89 TEXT_OBJECT_LINK_COLOR_TYPE_EMAIL_SELECT,
90 TEXT_OBJECT_LINK_COLOR_TYPE_PHONE_NUMBER_NORMAL,
91 TEXT_OBJECT_LINK_COLOR_TYPE_PHONE_NUMBER_SELECT,
92 TEXT_OBJECT_LINK_COLOR_TYPE_MAX
95 enum TextObjectActionType
97 TEXT_OBJECT_ACTION_TYPE_NONE = 0,
98 TEXT_OBJECT_ACTION_TYPE_ABBREV,
99 TEXT_OBJECT_ACTION_TYPE_SLIDE_LEFT,
100 TEXT_OBJECT_ACTION_TYPE_SLIDE_UP,
101 TEXT_OBJECT_ACTION_TYPE_MAX
105 enum TextObjectSpaceHideType
107 TEXT_OBJECT_SPACE_HIDE_TYPE_NONE = 0,
108 TEXT_OBJECT_SPACE_HIDE_TYPE_ONE,
109 TEXT_OBJECT_SPACE_HIDE_TYPE_ALL
112 enum TextComponentInfoValueType
117 SET_FONT_OUTLINECOLOR,
118 MAX_TEXTOBJECT_VALUE,
121 MAX_IMAGEOBJECT_VALUE,
122 COMMONOBJECT_VALUE_START,
123 SET_ALTERNATE_LOOK = COMMONOBJECT_VALUE_START,
124 SET_ALTERNATIVE_FGCOLOR,
125 MAX_COMMONOBJECT_VALUE,
128 SET_CUTLINK_EDITABLE,
130 SET_ALLVALUE_CLONE = 0xFF
133 enum TextObjectAlignmentType
135 TEXT_OBJECT_ALIGNMENT_LEFT = 0x0001,
136 TEXT_OBJECT_ALIGNMENT_CENTER = 0x0002,
137 TEXT_OBJECT_ALIGNMENT_RIGHT = 0x0004,
138 TEXT_OBJECT_ALIGNMENT_TOP = 0x0100,
139 TEXT_OBJECT_ALIGNMENT_MIDDLE = 0x0200,
140 TEXT_OBJECT_ALIGNMENT_BOTTOM = 0x0400,
141 TEXT_OBJECT_ALIGNMENT_BASELINE = 0x0800,
142 TEXT_OBJECT_ALIGNMENT_INVALID = 0X1000
147 TEXT_ALIGNMASK_HORIZ = 0x0007,
148 TEXT_ALIGNMASK_VERT = 0x0F00
151 enum TextObjectSweepType
153 TEXT_OBJECT_SWEEP_TYPE_NONE = 0,
154 TEXT_OBJECT_SWEEP_TYPE_FORWARD,
155 TEXT_OBJECT_SWEEP_TYPE_BACKWARD,
156 TEXT_OBJECT_SWEEP_TYPE_KEYINPUT,
157 TEXT_OBJECT_SWEEP_TYPE_REPLACE,
158 TEXT_OBJECT_SWEEP_TYPE_INVALID
161 enum TextObjectSweepEventType
163 TEXT_OBJECT_SWEEP_EVENT_NONE = 0,
164 TEXT_OBJECT_SWEEP_EVENT_INSERT,
165 TEXT_OBJECT_SWEEP_EVENT_REMOVE
168 struct TextObjectSweepInfo
171 TextObjectSweepType sweepType;
172 TextObjectSweepEventType sweepEventType;
175 int prevAnchorLineIndex;
176 int sweepRegionStartLineIndex;
177 int sweepRegionLineCount;
178 int insertedLineCount;
179 int deletedLineCount;
183 struct TextObjectSweepComposeLineInfo
186 int prevLineTextOffset;
187 int prevLineTextLength;
189 int currentLineTextOffset;
190 int currentLineTextLength;
191 int currentLineWidth;
194 typedef int TextObjectAlignment;
196 //special character definistion
197 static const unsigned short TEXT_OBJ_CHARACTER = 0xFFFC;
198 static const unsigned short TEXT_LINE_FEED = 0x0A;
199 static const unsigned short TEXT_CARRIAGE_RETURN = 0x0D;
200 static const unsigned short TEXT_ABBREV_CHARACTER = 0x2026;
201 static const unsigned short TEXT_LINE_SEPARATOR = 0x2028;
202 static const unsigned short TEXT_PARAGRAPH_SEPARATOR = 0x2029;
203 static const unsigned short TEXT_TAB_CHARACTER = 0x09;
205 }}} // Tizen::Graphics::_Text
207 #endif // _FGRP_INTERNAL_TEXT_COMMON_H_