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.
18 * @file FUiCtrl_Edit.h
19 * @brief This is the header file for the _Edit class.
21 * This header file contains the declarations of the %_Edit class.
24 #ifndef _FUI_CTRL_INTERNAL_EDIT_H_
25 #define _FUI_CTRL_INTERNAL_EDIT_H_
27 #include <FBaseCharacter.h>
28 #include <FBaseString.h>
29 #include <FGrpBitmap.h>
30 #include <FGrpColor.h>
31 #include <FGrpPoint.h>
32 #include <FGrpRectangle.h>
33 #include <FGrp_TextTextObject.h>
34 #include <FUiControl.h>
35 #include <FUiCtrlControlsTypes.h>
36 #include <FUiCtrlEditTypes.h>
37 #include <FUiCtrlGroupTypes.h>
38 #include <FUiCtrlIExpandableEditAreaEventListener.h>
39 #include <FUiCtrlInputTypes.h>
40 #include <FUiIActionEventListener.h>
41 #include <FUiIClipboardPopupEventListener.h>
42 #include <FUiITextEventListener.h>
43 #include "FUi_Control.h"
44 #include "FUi_ITouchFlickGestureEventListener.h"
45 #include "FUi_ITouchLongPressGestureEventListener.h"
46 #include "FUi_ITouchTapGestureEventListener.h"
47 #include "FUi_ResourceManager.h"
48 #include "FUi_TouchFlickGestureDetector.h"
49 #include "FUi_TouchLongPressGestureDetector.h"
50 #include "FUi_TouchTapGestureDetector.h"
51 #include "FUiCtrl_ExpandableEditAreaEvent.h"
52 #include "FUiCtrl_IActionEventListener.h"
53 #include "FUiCtrl_IExpandableEditAreaEventListener.h"
54 #include "FUiCtrl_IKeypadEventListener.h"
55 #include "FUiCtrl_ITextBlockEventListener.h"
56 #include "FUiCtrl_ITextEventListener.h"
57 #include "FUiCtrl_ILanguageEventListener.h"
58 #include "FUiCtrl_IScrollPanelEventListener.h"
59 #include "FUiCtrl_IUiLinkEventListener.h"
60 #include "FUiCtrl_KeypadEvent.h"
61 #include "FUiCtrl_LanguageEvent.h"
62 #include "FUiCtrl_LinkEvent.h"
63 #include "FUiCtrl_ScrollPanelEvent.h"
64 #include "FUiCtrl_TextBlockEvent.h"
65 #include "FUiCtrl_TextEvent.h"
68 namespace Tizen { namespace Ui
70 class _AccessibilityElement;
73 namespace Tizen { namespace Ui { namespace Animations
78 namespace Tizen { namespace Ui { namespace Controls
83 Tizen::Graphics::Color textColor;
84 Tizen::Graphics::Color titleTextColor;
85 Tizen::Graphics::Color backgroundColor;
88 struct EditBlockTextColor
91 Tizen::Graphics::Color blockTextColor;
94 struct EditCutlinkColor
96 Tizen::Graphics::Color cutlinkFgColor;
97 Tizen::Graphics::Color cutlinkBgColor;
102 EDIT_LINK_TYPE_INVALID = -1,
104 EDIT_LINK_TYPE_EMAIL,
105 EDIT_LINK_TYPE_PHONE_NUM,
106 EDIT_LINK_TYPE_STREAMING_URL,
110 enum EditTextHorizontalMargin
112 EDIT_TEXT_LEFT_MARGIN,
113 EDIT_TEXT_RIGHT_MARGIN,
114 EDIT_TEXT_HORIZONTAL_MARGIN
117 enum EditTextVerticalMargin
119 EDIT_TEXT_TOP_MARGIN,
120 EDIT_TEXT_BOTTOM_MARGIN,
121 EDIT_TEXT_VERTICAL_MARGIN
124 enum EditAccessibilityElementType
126 EDIT_ACCESSIBILITY_ELEMENT_TYPE_TITLE_TEXT,
127 EDIT_ACCESSIBILITY_ELEMENT_TYPE_TEXT,
128 EDIT_ACCESSIBILITY_ELEMENT_TYPE_CLEAR_ICON
131 const int EDIT_STYLE_SINGLE_LINE = 0x00000001;
132 const int EDIT_STYLE_NORMAL = 0x00000002;
133 const int EDIT_STYLE_BORDER = 0x00000004;
134 const int EDIT_STYLE_TITLE_LEFT = 0x00000010;
135 const int EDIT_STYLE_TITLE_TOP = 0x00000020;
136 const int EDIT_STYLE_PASSWORD = 0x00000100;
137 const int EDIT_STYLE_VIEWER = 0x00000200;
138 const int EDIT_STYLE_NOSCROLL = 0x00000400;
139 const int EDIT_STYLE_CLEAR = 0x00001000;
140 const int EDIT_STYLE_ICON_EMBEDDED = 0x00010000;
141 const int EDIT_STYLE_DASHBOARD_EMBEDDED = 0x00100000;
142 const int EDIT_STYLE_FLEXIBLE = 0x01000000;
143 const int EDIT_STYLE_TOKEN = 0x02000000;
144 const int EDIT_COLOR_OPACITY = 100;
145 const int EDIT_AREA_DEFAULT_LIMIT_LENGTH = 1000;
146 const int EDIT_FIELD_DEFAULT_LIMIT_LENGTH = 100;
148 const int EDIT_COLOR_MAX = 4;
149 const int EDIT_TEXT_COLOR_MAX = 4;
150 const int EDIT_MARGIN_COUNT_MAX = 2;
151 const int DEFAULT_LINE_SPACE = 1;
159 class _EditPresenter;
161 class _ScrollPanelItemEvent;
162 class _EditInternalTouchEventListener;
165 class _OSP_EXPORT_ _Edit
167 , virtual public Tizen::Base::Runtime::IEventListener
168 , virtual public Tizen::Ui::_IUiEventListener
169 , virtual public Tizen::Ui::_IUiEventPreviewer
170 , virtual public Tizen::Ui::_ITouchGestureEventListener
171 , public _ITouchFlickGestureEventListener
172 , public _ITouchLongPressGestureEventListener
173 , public _ITouchTapGestureEventListener
174 , public IClipboardPopupEventListener
177 DECLARE_CLASS_BEGIN(_Edit, _Control);
178 DECLARE_PROPERTY("autoResizingEnabled", GetPropertyAutoResizingEnabled, SetPropertyAutoResizingEnabled);
179 DECLARE_PROPERTY("guideTextColor", GetPropertyGuideTextColor, SetPropertyGuideTextColor);
180 DECLARE_PROPERTY("normalColor", GetPropertyNormalColor, SetPropertyNormalColor);
181 DECLARE_PROPERTY("disabledColor", GetPropertyDisabledColor, SetPropertyDisabledColor);
182 DECLARE_PROPERTY("highlightedColor", GetPropertyHighlightedColor, SetPropertyHighlightedColor);
183 DECLARE_PROPERTY("pressedColor", GetPropertyPressedColor, SetPropertyPressedColor);
184 DECLARE_PROPERTY("normalTextColor", GetPropertyNormalTextColor, SetPropertyNormalTextColor);
185 DECLARE_PROPERTY("disabledTextColor", GetPropertyDisabledTextColor, SetPropertyDisabledTextColor);
186 DECLARE_PROPERTY("highlightedTextColor", GetPropertyHighlightedTextColor, SetPropertyHighlightedTextColor);
187 DECLARE_PROPERTY("pressedTextColor", GetPropertyPressedTextColor, SetPropertyPressedTextColor);
188 DECLARE_PROPERTY("lineSpacing", GetPropertyLineSpacing, SetPropertyLineSpacing);
189 DECLARE_PROPERTY("textSize", GetPropertyTextSize, SetPropertyTextSize);
190 DECLARE_PROPERTY("cursorPosition", GetPropertyCursorPosition, SetPropertyCursorPosition);
191 DECLARE_PROPERTY("guideText", GetPropertyGuideText, SetPropertyGuideText);
192 DECLARE_PROPERTY("keypadActionEnabled", GetPropertyKeypadActionEnabled, SetPropertyKeypadActionEnabled);
193 DECLARE_PROPERTY("keypadAction", GetPropertyKeypadAction, SetPropertyKeypadAction);
194 DECLARE_PROPERTY("keypadEnabled", GetPropertyKeypadEnabled, SetPropertyKeypadEnabled);
195 DECLARE_PROPERTY("keypadStyle", GetPropertyKeypadStyle, SetPropertyKeypadStyle);
196 DECLARE_PROPERTY("lowerCaseModeEnabled", GetPropertyLowerCaseModeEnabled, SetPropertyLowerCaseModeEnabled);
197 DECLARE_PROPERTY("overlayKeypadCommandButtonVisible", GetPropertyOverlayKeypadCommandButtonVisible, SetPropertyOverlayKeypadCommandButtonVisible);
198 DECLARE_PROPERTY("text", GetPropertyText, SetPropertyText);
199 DECLARE_PROPERTY("viewModeEnabled", GetPropertyViewModeEnabled, SetPropertyViewModeEnabled);
200 DECLARE_PROPERTY("autoLinkMask", GetPropertyAutoLinkMask, SetPropertyAutoLinkMask);
201 DECLARE_PROPERTY("titleText", GetPropertyTitleText, SetPropertyTitleText);
202 DECLARE_PROPERTY("normalTitleTextColor", GetPropertyNormalTitleTextColor, SetPropertyNormalTitleTextColor);
203 DECLARE_PROPERTY("disabledTitleTextColor", GetPropertyDisabledTitleTextColor, SetPropertyDisabledTitleTextColor);
204 DECLARE_PROPERTY("highlightedTitleTextColor", GetPropertyHighlightedTitleTextColor, SetPropertyHighlightedTitleTextColor);
205 DECLARE_PROPERTY("pressedTitleTextColor", GetPropertyPressedTitleTextColor, SetPropertyPressedTitleTextColor);
206 DECLARE_PROPERTY("blockedTextColor", GetPropertyBlockedTextColor, SetPropertyBlockedTextColor);
207 DECLARE_PROPERTY("topMargin", GetPropertyTopMargin, SetPropertyTopMargin);
208 DECLARE_PROPERTY("bottomMargin", GetPropertyBottomMargin, SetPropertyBottomMargin);
209 DECLARE_PROPERTY("leftMargin", GetPropertyLeftMargin, SetPropertyLeftMargin);
210 DECLARE_PROPERTY("rightMargin", GetPropertyRightMargin, SetPropertyRightMargin);
213 result SetPropertyAutoResizingEnabled(const Variant& enable);
214 result SetPropertyGuideTextColor(const Variant& color);
215 result SetPropertyNormalColor(const Variant& color);
216 result SetPropertyDisabledColor(const Variant& color);
217 result SetPropertyHighlightedColor(const Variant& color);
218 result SetPropertyPressedColor(const Variant& color);
219 result SetPropertyNormalTextColor(const Variant& color);
220 result SetPropertyDisabledTextColor(const Variant& color);
221 result SetPropertyHighlightedTextColor(const Variant& color);
222 result SetPropertyPressedTextColor(const Variant& color);
223 result SetPropertyLineSpacing(const Variant& lineSpacing);
224 result SetPropertyTextSize(const Variant& textSize);
225 result SetPropertyCursorPosition(const Variant& position);
226 result SetPropertyGuideText(const Variant& guideText);
227 result SetPropertyKeypadActionEnabled(const Variant& enabled);
228 result SetPropertyKeypadAction(const Variant& action);
229 result SetPropertyKeypadEnabled(const Variant& enabled);
230 result SetPropertyKeypadStyle(const Variant& style);
231 result SetPropertyLowerCaseModeEnabled(const Variant& enabled);
232 result SetPropertyOverlayKeypadCommandButtonVisible(const Variant& visible);
233 result SetPropertyText(const Variant& text);
234 result SetPropertyViewModeEnabled(const Variant& enabled);
235 result SetPropertyAutoLinkMask(const Variant& autoLinks);
236 result SetPropertyTitleText(const Variant& titleText);
237 result SetPropertyNormalTitleTextColor(const Variant& color);
238 result SetPropertyDisabledTitleTextColor(const Variant& color);
239 result SetPropertyHighlightedTitleTextColor(const Variant& color);
240 result SetPropertyPressedTitleTextColor(const Variant& color);
241 result SetPropertyBlockedTextColor(const Variant& color);
242 result SetPropertyTopMargin(const Variant& margin);
243 result SetPropertyBottomMargin(const Variant& margin);
244 result SetPropertyLeftMargin(const Variant& margin);
245 result SetPropertyRightMargin(const Variant& margin);
247 Variant GetPropertyAutoResizingEnabled(void) const;
248 Variant GetPropertyGuideTextColor(void) const;
249 Variant GetPropertyNormalColor(void) const;
250 Variant GetPropertyDisabledColor(void) const;
251 Variant GetPropertyHighlightedColor(void) const;
252 Variant GetPropertyPressedColor(void) const;
253 Variant GetPropertyNormalTextColor(void) const;
254 Variant GetPropertyDisabledTextColor(void) const;
255 Variant GetPropertyHighlightedTextColor(void) const;
256 Variant GetPropertyPressedTextColor(void) const;
257 Variant GetPropertyLineSpacing(void) const;
258 Variant GetPropertyTextSize(void) const;
259 Variant GetPropertyCursorPosition(void) const;
260 Variant GetPropertyGuideText(void) const;
261 Variant GetPropertyKeypadActionEnabled(void) const;
262 Variant GetPropertyKeypadAction(void) const;
263 Variant GetPropertyKeypadEnabled(void) const;
264 Variant GetPropertyKeypadStyle(void) const;
265 Variant GetPropertyLowerCaseModeEnabled(void) const;
266 Variant GetPropertyOverlayKeypadCommandButtonVisible(void) const;
267 Variant GetPropertyText(void) const;
268 Variant GetPropertyViewModeEnabled(void) const;
269 Variant GetPropertyAutoLinkMask(void) const;
270 Variant GetPropertyTitleText(void) const;
271 Variant GetPropertyNormalTitleTextColor(void) const;
272 Variant GetPropertyDisabledTitleTextColor(void) const;
273 Variant GetPropertyHighlightedTitleTextColor(void) const;
274 Variant GetPropertyPressedTitleTextColor(void) const;
275 Variant GetPropertyBlockedTextColor(void) const;
276 Variant GetPropertyTopMargin(void) const;
277 Variant GetPropertyBottomMargin(void) const;
278 Variant GetPropertyLeftMargin(void) const;
279 Variant GetPropertyRightMargin(void) const;
283 virtual ~_Edit(void);
285 static _Edit* CreateEditN(void);
286 virtual result Initialize(int editStyle, InputStyle inputStyle, int limitLength, GroupStyle groupStyle = GROUP_STYLE_NONE);
288 result SetAutoLinkMask(unsigned long autoLinks);
289 result SetAutoResizingEnabled(bool enable);
290 result SetBackgroundBitmap(EditStatus status, const Tizen::Graphics::Bitmap& bitmap);
291 result SetBlockRange(int start, int end);
292 result SetBlockTextColor(const Tizen::Graphics::Color& color);
293 result SetColor(EditStatus status, const Tizen::Graphics::Color& color);
294 result SetCurrentLanguage(Tizen::Locales::LanguageCode languageCode);
295 result SetCursorPosition(int position);
296 void SetCutlinkColorInfo(EditCutLinkType type, EditCutlinkColor colorInfo);
297 void SetEllipsisPosition(EllipsisPosition position);
298 result SetFont(const Tizen::Graphics::Font& font);
299 result SetFontType(const Tizen::Base::String& typefaceName, unsigned long styleMask);
300 result SetTextStyle(unsigned long style);
301 void SetGuideText(const Tizen::Base::String& guideText);
302 result SetGuideTextColor(const Tizen::Graphics::Color& color);
303 result SetHorizontalMargin(int margin, EditTextHorizontalMargin marginType = EDIT_TEXT_HORIZONTAL_MARGIN);
304 result SetKeypadAction(CoreKeypadAction keypadAction);
305 result SetKeypadActionEnabled(bool enabled);
306 void SetKeypadEnabled(bool enable);
307 result SetKeypadStyle(KeypadStyle keypadStyle);
308 result SetKeypadNormalNumberStyle(bool enable);
309 result SetTextPredictionEnabled(bool enable);
310 result SetLimitLength(int limitLength);
311 result SetLineSpacing(int linePixelGap);
312 void SetLowerCaseModeEnabled(bool enable);
313 void SetMaxLineCount(int maxLineCount);
314 result SetKeypadCommandButton(CommandButtonPosition position, const Tizen::Base::String& text, int actionId);
315 result SetKeypadCommandButtonVisible(bool visible);
316 _Toolbar* GetKeypadCommandButton(void) const;
317 result SetText(const Tizen::Base::String& text);
318 result SetTextAlignment(HorizontalAlignment alignment);
319 result SetTextColor(EditTextColor type, const Tizen::Graphics::Color& color);
320 result SetTextSize(int size);
321 virtual result SetTitleText(const Tizen::Base::String& title);
322 result SetTitleTextColor(EditStatus status, const Tizen::Graphics::Color& color);
323 result SetViewModeEnabled(bool enable);
324 result SetVerticalMargin(int margin, EditTextVerticalMargin marginType = EDIT_TEXT_VERTICAL_MARGIN);
325 void SetEditStyle(unsigned long style);
326 void SetBorderRoundStyleEnabled(bool enable);
328 unsigned long GetAutoLinkMask(void) const;
329 Tizen::Graphics::Bitmap* GetBackgroundBitmap(EditStatus status) const;
330 result LoadDefaultBackgroundBitmap(GroupStyle groupStyle);
331 result ReplaceDefaultBackgroundBitmapForSearchBar(void);
332 Tizen::Graphics::Bitmap* GetDefaultBackgroundBitmap(EditStatus status) const;
333 bool IsCustomDefaultBackgroundBitmap(EditStatus status) const;
334 Tizen::Graphics::Bitmap* GetDefaultBackgroundEffectBitmap(void) const;
335 void GetBlockRange(int& start, int& end) const;
336 Tizen::Graphics::Color GetBlockTextColor(void) const;
337 Tizen::Graphics::Color GetColor(EditStatus status) const;
338 result GetCurrentLanguage(Tizen::Locales::LanguageCode& language) const;
339 void GetCurrentTextRange(int& start, int& end) const;
340 int GetCursorPosition(void) const;
341 int GetCursorPositionAt(const Tizen::Graphics::Point& point) const;
342 result GetCursorBounds(bool isAbsRect, Tizen::Graphics::Rectangle& cursorBounds) const;
343 void GetCutlinkColorInfo(EditCutLinkType type, EditCutlinkColor* colorInfo) const;
344 EllipsisPosition GetEllipsisPosition(void) const;
345 void GetFontType(Tizen::Base::String& typefaceName, unsigned long& styleMask) const;
346 unsigned long GetTextStyle(void) const;
347 Tizen::Base::String GetGuideText(void) const;
348 Tizen::Graphics::Color GetGuideTextColor(void) const;
349 int GetHorizontalMargin(EditTextHorizontalMargin marginType) const;
350 InputStyle GetInputStyle(void) const;
351 CoreKeypadAction GetKeypadAction(void) const;
352 bool GetKeypadActionEnabled(void) const;
353 result GetKeypadBounds(Tizen::Graphics::Rectangle& rect) const;
354 KeypadStyle GetKeypadStyle(void) const;
355 int GetTextLimitLength(void) const;
356 int GetLineSpacing(void) const;
357 int GetMaxLineCount(void) const;
358 int GetKeypadCommandButtonActionId(CommandButtonPosition position) const;
359 Tizen::Base::String GetKeypadCommandButtonText(CommandButtonPosition position) const;
360 int GetRemainingLength(void) const;
361 Tizen::Base::String GetText(void) const;
362 Tizen::Base::String GetText(int start, int end) const;
363 HorizontalAlignment GetTextAlignment(void) const;
364 Tizen::Graphics::Color GetTextColor(EditStatus status) const;
365 Tizen::Graphics::Color GetTextColor(EditTextColor type) const;
366 int GetTextLength(void) const;
367 int GetTextLineCount(void) const;
368 int GetTextSize(void) const;
369 int GetTextTotalHeight(void) const;
370 virtual Tizen::Base::String GetTitleText(void) const;
371 Tizen::Graphics::Color GetTitleTextColor(EditStatus status) const;
372 int GetVerticalMargin(EditTextVerticalMargin marginType) const;
373 unsigned long GetEditStyle(void) const;
374 void GetWordPosition(int cursorPos, int& startPos, int& endPos) const;
375 result GetTextImageRangeAt(int postion, int& startPosition, int& endPosition) const;
377 result AppendCharacter(const Tizen::Base::Character& character);
378 result AppendText(const Tizen::Base::String& text);
379 result BeginTextBlock(void);
380 bool CalculateAbsoluteCursorBounds(int index ,Tizen::Graphics::Rectangle& absCursorRect);
381 result ClearText(void);
382 result CopyText(void);
383 result CutText(void);
384 result DeleteCharacterAt(int index);
385 result DeleteCharacterAtCursorPosition(void);
386 void SetCursorDisabled(bool disabled);
387 result HideKeypad(void);
388 void InitializeColorInformation(void);
389 void SetViewModeColorInformation(bool enabled);
390 result InsertTextAtCursorPosition(const Tizen::Base::String& text);
391 result InsertCharacterAt(int index, const Tizen::Base::Character& character);
392 result InsertTextAt(int index, const Tizen::Base::String& text);
393 result InsertTextAt(int position, const Tizen::Base::String& text, const Tizen::Graphics::Bitmap& textImage);
394 result AppendText(const Tizen::Base::String& text, const Tizen::Graphics::Bitmap& textImage);
395 bool IsAutoResizingEnabled(void) const;
396 bool IsBlocked(void) const;
397 bool IsClipped(void) const;
398 bool IsLowerCaseModeEnabled(void) const;
399 bool IsKeypadCommandButtonVisible(void) const;
400 bool IsSettingGuideTextColor(void) const;
401 bool IsViewModeEnabled(void) const;
402 bool IsKeypadEnabled(void) const;
403 bool IsTextPredictionEnabled(void) const;
404 void UpdateAccessibilityElement(EditAccessibilityElementType type);
405 void SetFullScreenKeypadEdit(bool enabled);
406 bool IsFullScreenKeypadEdit(void);
407 bool IsBorderRoundStyleEnabled(void) const;
408 bool IsUsbKeyboardConnected(void) const;
409 bool IsKeypadExist(void) const;
410 virtual void SetAutoShrinkModeEnabled(bool enable);
411 virtual bool IsAutoShrinkModeEnabled(void) const;
413 result PasteText(void);
414 result ReleaseTextBlock(void);
415 result RemoveTextBlock(void);
416 result ShowKeypad(void);
418 result AddActionEventListener(const _IActionEventListener& listener);
419 result AddExpandableEditAreaEventListener(const _IExpandableEditAreaEventListener& listener);
420 result AddKeypadEventListener(const _IKeypadEventListener& listener);
421 result AddLanguageEventListener(const _ILanguageEventListener& listener);
422 result AddScrollPanelEventListener(const _IScrollPanelEventListener& listener);
423 result AddTextBlockEventListener(const _ITextBlockEventListener& listener);
424 result AddTextEventListener(const _ITextEventListener& listener);
425 result AddUiLinkEventListener(const _IUiLinkEventListener& listener);
427 result RemoveActionEventListener(const _IActionEventListener& listener);
428 result RemoveExpandableEditAreaEventListener(const _IExpandableEditAreaEventListener& listener);
429 result RemoveKeypadEventListener(const _IKeypadEventListener& listener);
430 result RemoveLanguageEventListener(const _ILanguageEventListener& listener);
431 result RemoveScrollPanelEventListener(const _IScrollPanelEventListener& listener);
432 result RemoveTextBlockEventListener(const _ITextBlockEventListener& listener);
433 result RemoveTextEventListener(const _ITextEventListener& listener);
434 result RemoveUiLinkEventListener(const _IUiLinkEventListener& listener);
436 result AttachScrollPanelEvent(void);
437 result DetachScrollPanelEvent(void);
439 result SendExpandableEditAreaEvent(_ExpandableEditAreaEventStatus status, int selectedTokenIndex = -1);
440 result SendKeypadEvent(CoreKeypadAction keypadAction, CoreKeypadEventStatus eventstatus);
441 result SendLanguageEvent(Tizen::Locales::LanguageCode prevLanguageCode, Tizen::Locales::LanguageCode currentLanguageCode);
442 result SendLinkEvent(const Tizen::Base::String& text, Tizen::Base::Utility::LinkType linkType, const Tizen::Base::String& link);
443 result SendScrollPanelEvent(CoreScrollPanelStatus eventstatus);
444 result SendTextBlockEvent(int start, int end);
445 result SendTextEvent(CoreTextEventStatus textEventStatus);
447 void OnScrollPanelBoundsChanged(void);
448 virtual result OnAttachedToMainTree(void);
449 virtual void OnBoundsChanged(void);
450 virtual void OnChangeLayout(_ControlOrientation orientation);
451 virtual void OnClipboardPopupClosed(const ClipboardItem* pClipboardItem);
452 virtual void OnDraw(void);
453 virtual bool OnFocusGained(const _Control& source);
454 virtual bool OnFocusLost(const _Control& source);
455 virtual bool OnFlickGestureDetected(_TouchFlickGestureDetector& gesture);
456 virtual bool OnFlickGestureCanceled(_TouchFlickGestureDetector& gesture);
457 virtual bool OnLongPressGestureDetected(_TouchLongPressGestureDetector& gesture);
458 virtual bool OnLongPressGestureCanceled(_TouchLongPressGestureDetector& gesture);
459 virtual bool OnTapGestureDetected(_TouchTapGestureDetector& gesture);
460 virtual bool OnTapGestureCanceled(_TouchTapGestureDetector& gesture);
461 virtual bool OnTouchMoved(const _Control& source, const _TouchInfo& touchinfo);
462 virtual bool OnTouchPressed(const _Control& source, const _TouchInfo& touchinfo);
463 virtual bool OnTouchCanceled(const _Control& source, const _TouchInfo& touchinfo);
464 virtual bool OnTouchReleased(const _Control& source, const _TouchInfo& touchinfo);
465 virtual bool OnKeyPressed(const _Control& source, const _KeyInfo& keyInfo);
466 virtual bool OnKeyReleased(const _Control& source, const _KeyInfo& keyInfo);
467 virtual bool OnNotifiedN(const _Control& source, Tizen::Base::Collection::IList* pArgs);
469 virtual void OnFontChanged(Tizen::Graphics::Font* pFont);
470 virtual void OnFontInfoRequested(unsigned long& style, int& size);
472 virtual void OnAncestorEnableStateChanged(const _Control& control);
474 _EditPresenter* GetPresenter(void) const;
475 Tizen::Graphics::Dimension GetContentSizeInternal(void) const;
478 result SetPresenter(const _EditPresenter& pPresenter);
482 _Edit& operator =(const _Edit&);
483 _EditPresenter* _pEditPresenter;
493 bool __borderRoundStyle;
495 EllipsisPosition __ellipsisPosition;
496 InputStyle __inputStyle;
497 bool __isConstructed;
499 EditColor __color[EDIT_COLOR_MAX];
500 EditBlockTextColor __blockTextColor;
501 EditCutlinkColor __cutlinkColor[EDIT_LINK_TYPE_MAX];
502 Tizen::Graphics::Color __guideTextColor;
503 bool __isSettingGuideTextColor;
505 Tizen::Graphics::Bitmap* __pBackgroundBitmap[EDIT_COLOR_MAX];
508 Tizen::Graphics::Bitmap* __pDefaultBackgroundBitmap[EDIT_COLOR_MAX];
509 Tizen::Graphics::Bitmap* __pDefaultBackgroundEffectBitmap;
511 Tizen::Ui::_TouchFlickGestureDetector* __pGestureFlick;
512 Tizen::Ui::_TouchLongPressGestureDetector* __pGestureLongPress;
513 Tizen::Ui::_TouchTapGestureDetector* __pGestureTap;
514 Tizen::Ui::Controls::_EditInternalTouchEventListener* __pEditInternalTouchEventListener;
516 _ExpandableEditAreaEvent* __pExpandableEditAreaEvent;
517 _KeypadEvent* __pKeypadEvent;
518 _LanguageEvent* __pLanguageEvent;
519 _LinkEvent* __pLinkEvent;
520 _ScrollPanelEvent* __pScrollPanelEvent;
521 _TextBlockEvent* __pTextBlockEvent;
522 _TextEvent* __pTextEvent;
523 Tizen::Ui::_AccessibilityElement* __pTitleTextAccessibilityElement;
524 Tizen::Ui::_AccessibilityElement* __pTextAccessibilityElement;
525 Tizen::Ui::_AccessibilityElement* __pClearButtonTextAccessibilityElement;
526 Tizen::Ui::_AccessibilityElement* __pToolbarAccessibilityElement;
527 bool __isAccessibilityCreated;
528 bool __isFullScreenKeypadEdit;
531 }}} // Tizen::Ui::Controls
533 #endif // _FUI_CTRL_INTERNAL_EDIT_H_