1 #ifndef DALI_INTERNAL_BASE_WINDOW_EVENT_INTERFACE_H
2 #define DALI_INTERNAL_BASE_WINDOW_EVENT_INTERFACE_H
5 * Copyright (c) 2019 Samsung Electronics Co., Ltd.
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
22 #include <dali/public-api/events/key-event.h>
23 #include <dali/public-api/events/wheel-event.h>
24 #include <dali/integration-api/events/key-event-integ.h>
25 #include <dali/integration-api/events/point.h>
37 * @brief Abstract interface for handling DALi events received from the native window system
40 class WindowEventInterface
46 * @brief Touch Event callback
47 * @param[in] point touch point
48 * @param[in] timeStamp time stamp
50 virtual void TouchEvent( Dali::Integration::Point& point, unsigned long timeStamp ) = 0;
53 * @brief Key Event callback
54 * @param[in] keyEvent key event
56 virtual void KeyEvent( Dali::Integration::KeyEvent& keyEvent ) = 0;
59 * @brief Wheel Event callback
60 * @param[in] wheelEvent wheel event
62 virtual void WheelEvent( Dali::WheelEvent& wheelEvent ) = 0;
65 * @brief Window damage callback
66 * @param[in] damageArea Window damage area
68 virtual void DamageEvent( Dali::Rect<int>& damageArea ) = 0;
71 * @brief Window Focused
73 virtual void WindowFocusIn() = 0;
76 * @brief Window lost focus
78 virtual void WindowFocusOut() = 0;
85 WindowEventInterface()
92 virtual ~WindowEventInterface()
96 // Undefined copy constructor.
97 WindowEventInterface( const WindowEventInterface& );
99 // Undefined assignment operator.
100 WindowEventInterface& operator=( const WindowEventInterface& );
104 } // namespace Adaptor
106 } // namespace Internal
110 #endif // DALI_INTERNAL_BASE_WINDOW_EVENT_INTERFACE_H