2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0/
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 FUiAnimIFrameAnimatorEventListener.h
20 * @brief This is the header file for the %IFrameAnimatorEventListener interface.
22 * This header file contains the declarations of the %IFrameAnimatorEventListener interface.
25 #ifndef _FUI_CTRL_IFRAME_ANIMATOR_EVENT_LISTENER_H_
26 #define _FUI_CTRL_IFRAME_ANIMATOR_EVENT_LISTENER_H_
28 #include <FBaseTypes.h>
29 #include <FBaseObject.h>
30 #include <FBaseRtIEventListener.h>
31 #include <FUiAnimTypes.h>
32 #include <FUiAnimAnimationBase.h>
35 namespace Tizen { namespace Ui { namespace Controls
39 namespace Tizen { namespace Ui { namespace Controls
43 namespace Tizen { namespace Ui { namespace Animations
48 namespace Tizen { namespace Ui { namespace Animations
54 * @interface IFrameAnimatorEventListener
55 * @brief This interface implements the listener for animation events.
59 * The %IFrameAnimatorEventListener interface is the listener interface for receiving frame animator events.
60 * The class that processes a frame animator event implements this interface, and the instance created with that class is
61 * registered with a Frame, using the FrameAnimator::AddFrameAnimatorEventListener() method. When the frame animator event occurs, a
62 * method of that instance is invoked.
64 class _OSP_EXPORT_ IFrameAnimatorEventListener
65 : virtual public Tizen::Base::Runtime::IEventListener
70 * This is the destructor for this class.
74 virtual ~IFrameAnimatorEventListener(void) {}
78 * Called when the animation of a form transition starts.
82 * @param[in] source The source of the event
83 * @param[in] frame The frame @n
84 * The frame that starts the animation of a form transition.
85 * @param[in] form1 The form @n
86 * The animation starts on this form.
87 * @param[in] form2 The form @n
88 * The animation starts on this form.
90 virtual void OnFormTransitionAnimationStarted(Tizen::Ui::Animations::FrameAnimator& source, Tizen::Ui::Controls::Frame& frame, Tizen::Ui::Controls::Form& form1, Tizen::Ui::Controls::Form& form2) = 0;
94 * Called when the animation of a form transition stops.
98 * @param[in] source The source of the event
99 * @param[in] frame The frame @n
100 * The frame that stops the animation of a form transition.
101 * @param[in] form1 The form @n
102 * The animation stops on this form.
103 * @param[in] form2 The form @n
104 * The animation stops on this form.
106 virtual void OnFormTransitionAnimationStopped(Tizen::Ui::Animations::FrameAnimator& source, Tizen::Ui::Controls::Frame& frame, Tizen::Ui::Controls::Form& form1, Tizen::Ui::Controls::Form& form2) = 0;
110 * Called when the animation of a form transition finishes.
114 * @param[in] source The source of the event
115 * @param[in] frame The frame @n
116 * The frame that finishes the animation of a form transition.
117 * @param[in] form1 The form @n
118 * The animation finishes on this form.
119 * @param[in] form2 The form @n
120 * The animation finishes on this form.
122 virtual void OnFormTransitionAnimationFinished(Tizen::Ui::Animations::FrameAnimator& source, Tizen::Ui::Controls::Frame& frame, Tizen::Ui::Controls::Form& form1, Tizen::Ui::Controls::Form& form2) = 0;
128 // This method is for internal use only. Using this method can cause behavioral, security-related,
129 // and consistency-related issues in the application.
131 // This method is reserved and may change its name at any time without
136 virtual void IFrameAnimatorEventListener_Reserved1(void) { }
140 // This method is for internal use only. Using this method can cause behavioral, security-related,
141 // and consistency-related issues in the application.
143 // This method is reserved and may change its name at any time without
148 virtual void IFrameAnimatorEventListener_Reserved2(void) { }
152 // This method is for internal use only. Using this method can cause behavioral, security-related,
153 // and consistency-related issues in the application.
155 // This method is reserved and may change its name at any time without
160 virtual void IFrameAnimatorEventListener_Reserved3(void) { }
161 }; // IFrameAnimatorEventListener
164 }}} // Tizen::Ui::Animations
166 #endif // _FUI_ANIM_IFRAME_ANIMATOR_EVENT_LISTENER_H_