From 07efc3f54b4886f982e3682ea8fd4574817a815c Mon Sep 17 00:00:00 2001 From: "keonpyo.kong" Date: Fri, 24 May 2013 17:54:43 +0900 Subject: [PATCH] Add OnFocusEventListenerAdded/Removed Change-Id: I8a7007c5a5f749ab4953f0c766207a89766ef399 Signed-off-by: keonpyo.kong --- src/ui/FUi_ControlImpl.cpp | 29 +++++++++++++++++++---------- src/ui/inc/FUi_ControlImpl.h | 3 +++ 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/ui/FUi_ControlImpl.cpp b/src/ui/FUi_ControlImpl.cpp index f938d41..76643c9 100644 --- a/src/ui/FUi_ControlImpl.cpp +++ b/src/ui/FUi_ControlImpl.cpp @@ -2134,11 +2134,7 @@ _ControlImpl::GetCore(void) result _ControlImpl::AddFocusEventListener(IFocusEventListener& listener) { - ClearLastResult(); - SysTryReturn(NID_UI, - __pPublicFocusEventListeners->Add(const_cast (&listener)) == E_SUCCESS, E_SYSTEM, - E_SYSTEM, "[E_SYSTEM] System error occurred."); - + OnFocusEventListenerAdded(listener); return E_SUCCESS; } @@ -2217,11 +2213,7 @@ _ControlImpl::AddTouchModeChangedEventListener(ITouchModeChangedEventListener& l result _ControlImpl::RemoveFocusEventListener(IFocusEventListener& listener) { - ClearLastResult(); - SysTryReturn(NID_UI, - __pPublicFocusEventListeners->Remove(&listener) == E_SUCCESS, E_SYSTEM, - E_SYSTEM, "[E_SYSTEM] System error occurred."); - + OnFocusEventListenerRemoved(listener); return E_SUCCESS; } @@ -3127,6 +3119,23 @@ _ControlImpl::OnTouchEventListenerRemoved(void) return E_SUCCESS; } +void +_ControlImpl::OnFocusEventListenerAdded(IFocusEventListener& listener) +{ + ClearLastResult(); + SysTryReturnVoidResult(NID_UI, + __pPublicFocusEventListeners->Add(const_cast (&listener)) == E_SUCCESS, E_SYSTEM, + "[E_SYSTEM] System error occurred."); +} + +void +_ControlImpl::OnFocusEventListenerRemoved(IFocusEventListener& listener) +{ + ClearLastResult(); + SysTryReturnVoidResult(NID_UI, + __pPublicFocusEventListeners->Remove(&listener) == E_SUCCESS, E_SYSTEM, + "[E_SYSTEM] System error occurred."); +} bool _ControlImpl::OnTouchPressed(const _ControlImpl& source, const _TouchInfo& touchinfo) diff --git a/src/ui/inc/FUi_ControlImpl.h b/src/ui/inc/FUi_ControlImpl.h index ffe74e2..c4aa614 100644 --- a/src/ui/inc/FUi_ControlImpl.h +++ b/src/ui/inc/FUi_ControlImpl.h @@ -409,6 +409,9 @@ protected: virtual result OnTouchEventListenerAdded(void); virtual result OnTouchEventListenerRemoved(void); + virtual void OnFocusEventListenerAdded(IFocusEventListener& listener); + virtual void OnFocusEventListenerRemoved(IFocusEventListener& listener); + bool CallOnTouchPressed(const _Control& source, const _TouchInfo& touchinfo); bool CallOnTouchReleased(const _Control& source, const _TouchInfo& touchinfo); bool CallOnTouchMoved(const _Control& source, const _TouchInfo& touchinfo); -- 2.7.4