2 * Copyright (c) 2013, TOYOTA MOTOR CORPORATION.
4 * This program is licensed under the terms and conditions of the
5 * Apache License, version 2.0. The full text of the Apache License is at
6 * http://www.apache.org/licenses/LICENSE-2.0
10 * @brief header file of Window Control API
11 * for privilege applications
16 #ifndef _ICO_SYC_WINCTL_H_
17 #define _ICO_SYC_WINCTL_H_
23 /*============================================================================*/
25 /*============================================================================*/
28 * @ICO_SYC_WIN_SHOW_ALL: show all of the application windows
30 typedef enum _window_show {
31 ICO_SYC_WIN_SHOW_ALL = -1
34 /*============================================================================*/
36 /*============================================================================*/
38 * animation information
40 #define ICO_SYC_WIN_SURF_RAISE 0x01000000
41 #define ICO_SYC_WIN_SURF_LOWER 0x02000000
42 #define ICO_SYC_WIN_SURF_NOCHANGE 0x04000000
43 #define ICO_SYC_WIN_SURF_NORESCTL 0x40000000
44 #define ICO_SYC_WIN_SURF_ONESHOT 0x10000000
45 #define ICO_SYC_WIN_SURF_FLAGS 0xff000000
46 typedef struct _animation_info {
47 char *name; /* name of animation (ex. fade,slide,zoom etc..) */
48 int time; /* millisecond time to show the transition's animation */
49 } ico_syc_animation_t;
51 /*============================================================================*/
53 /*============================================================================*/
54 /*--------------------------------------------------------------------------*/
57 * Show the application window with animation.
58 * If user sets argument surface "ICO_SYC_WIN_SHOW_ALL",
59 * show all of the application windows.
61 * @param[in] appid application id
62 * @param[in] surface window's surface id
63 * @param[in] animation animation information
67 * @see ico_syc_win_show_e
69 /*--------------------------------------------------------------------------*/
70 int ico_syc_show(const char *appid, int surface,
71 const ico_syc_animation_t *animation);
73 /*--------------------------------------------------------------------------*/
76 * Hide the application window with animation.
78 * @param[in] appid application id
79 * @param[in] surface window's surface id
80 * @param[in] animation animation information
85 /*--------------------------------------------------------------------------*/
86 int ico_syc_hide(const char *appid, int surface,
87 const ico_syc_animation_t *animation);
89 /*--------------------------------------------------------------------------*/
92 * Move the application window with animation.
94 * @param[in] appid application id
95 * @param[in] surface window's surface id
96 * @param[in] move move information (zone/position/size)
97 * @param[in] animation animation information
100 * @retval not 0 error
102 /*--------------------------------------------------------------------------*/
103 int ico_syc_move(const char *appid, int surface,
104 const ico_syc_win_move_t *move,
105 const ico_syc_animation_t *animation);
107 /*--------------------------------------------------------------------------*/
109 * @brief ico_syc_change_active
110 * Change the active window which receives the input-event notification
111 * from System Controller.
113 * @param[in] appid application id
114 * @param[in] surface window's surface id
117 * @retval not 0 error
119 /*--------------------------------------------------------------------------*/
120 int ico_syc_change_active(const char *appid, int surface);
122 /*--------------------------------------------------------------------------*/
124 * @brief ico_syc_change_layer
125 * Change the window's layer.
127 * @param[in] appid application id
128 * @param[in] surface window's surface id
129 * @param[in] layer window's layer id
132 * @retval not 0 error
134 /*--------------------------------------------------------------------------*/
135 int ico_syc_change_layer(const char *appid, int surface, int layer);
137 /*--------------------------------------------------------------------------*/
139 * @brief ico_syc_map_get
140 * Get surface image pixel to the file.
142 * @param[in] surface window's surface id
143 * @param[in] filepath pixel image file path
146 * @retval not 0 error
148 /*--------------------------------------------------------------------------*/
149 int ico_syc_map_get(int surface, const char *filepath);
151 /*--------------------------------------------------------------------------*/
153 * @brief ico_syc_map_thumb
154 * Map the thumbnail data
156 * @param[in] surface window's surface id
157 * @param[in] framerate notify cycle [frames par sec]
158 * @param[in] filepath pixel image file path
161 * @retval not 0 error
163 /*--------------------------------------------------------------------------*/
164 int ico_syc_map_thumb(int surface, int framerate, const char *filepath);
166 /*--------------------------------------------------------------------------*/
168 * @brief ico_syc_unmap_thumb
169 * Unmap the thumbnail data.
170 * User calls this API when receiving the notification that
171 * terminated the application.
173 * @param[in] surface window's surface id
176 * @retval not 0 error
178 /*--------------------------------------------------------------------------*/
179 int ico_syc_unmap_thumb(int surface);
181 /*--------------------------------------------------------------------------*/
183 * @brief ico_syc_show_layer
186 * @param[in] layer window's layer id
189 * @retval not 0 error
191 /*--------------------------------------------------------------------------*/
192 int ico_syc_show_layer(int layer);
194 /*--------------------------------------------------------------------------*/
196 * @brief ico_syc_hide_layer
199 * @param[in] layer window's layer id
202 * @retval not 0 error
204 /*--------------------------------------------------------------------------*/
205 int ico_syc_hide_layer(int layer);
211 #endif /*_ICO_SYC_WINCTL_H_*/
212 /* vim:set expandtab ts=4 sw=4: */