Revert "[Tizen] keygrab & ecore-wl-window-handle c# binding"
[platform/core/uifw/dali-adaptor.git] / adaptors / devel-api / adaptor-framework / window-devel.h
1 #ifndef DALI_WINDOW_DEVEL_H
2 #define DALI_WINDOW_DEVEL_H
3
4 /*
5  * Copyright (c) 2017 Samsung Electronics Co., Ltd.
6  *
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
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
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.
18  *
19  */
20
21 // INTERNAL INCLUDES
22 #ifdef DALI_ADAPTOR_COMPILATION  // full path doesn't exist until adaptor is installed so we have to use relative
23 #include <window.h>
24 #else
25 #include <dali/public-api/adaptor-framework/window.h>
26 #endif
27
28 namespace Dali
29 {
30
31 namespace DevelWindow
32 {
33
34 typedef Signal< void (bool) > FocusSignalType;      ///< Window focus signal type
35
36 /**
37  * @brief The user should connect to this signal to get a timing when window gains focus or loses focus.
38  *
39  * A callback of the following type may be connected:
40  * @code
41  *   void YourCallbackName( bool focusIn );
42  * @endcode
43  * The parameter is true if window gains focus, otherwise false.
44  *
45  * @param[in] window The window to get a signal
46  * @return The signal to connect to
47  */
48 DALI_IMPORT_API FocusSignalType& FocusChangedSignal( Window window );
49
50 /**
51  * @brief Sets whether window accepts focus or not.
52  *
53  * @param[in] window The window to accept focus
54  * @param[in] accept If focus is accepted or not. Default is true.
55  */
56 DALI_IMPORT_API void SetAcceptFocus( Window window, bool accept );
57
58 /**
59  * @brief Returns whether window accepts focus or not.
60  *
61  * @param[in] window The window to accept focus
62  * @return True if the window accept focus, false otherwise
63  */
64 DALI_IMPORT_API bool IsFocusAcceptable( Window window );
65
66 /**
67  * @brief Shows the window if it is hidden.
68  * @param[in] window The window to show
69  */
70 DALI_IMPORT_API void Show( Window window );
71
72 /**
73  * @brief Hides the window if it is showing.
74  * @param[in] window The window to hide
75  */
76 DALI_IMPORT_API void Hide( Window window );
77
78 /**
79  * @brief Returns whether the window is visible or not.
80  * @param[in] window The window to query
81  * @return True if the window is visible, false otherwise.
82  */
83 DALI_IMPORT_API bool IsVisible( Window window );
84
85 } // namespace DevelWindow
86
87 } // namespace Dali
88
89 #endif // DALI_WINDOW_DEVEL_H