2 * Copyright (c) 2013-2014, 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_
19 #include <ico_window_mgr-client-protocol.h>
25 /*============================================================================*/
27 /*============================================================================*/
30 * @ICO_SYC_WIN_SHOW_ALL: show all of the application windows
32 typedef enum _window_show {
33 ICO_SYC_WIN_SHOW_ALL = -1
36 /*============================================================================*/
38 /*============================================================================*/
40 * animation information
42 #define ICO_SYC_WIN_SURF_RAISE 0x01000000
43 #define ICO_SYC_WIN_SURF_LOWER 0x02000000
44 #define ICO_SYC_WIN_SURF_NOCHANGE 0x04000000
45 #define ICO_SYC_WIN_SURF_NORESCTL 0x40000000
46 #define ICO_SYC_WIN_SURF_FLAGS 0xff000000
47 typedef struct _animation_info {
48 char *name; /* name of animation (ex. fade,slide,zoom etc..) */
49 int time; /* millisecond time to show the transition's animation */
50 } ico_syc_animation_t;
52 /*============================================================================*/
54 /*============================================================================*/
55 /*--------------------------------------------------------------------------*/
58 * Show the application window with animation.
59 * If user sets argument surface "ICO_SYC_WIN_SHOW_ALL",
60 * show all of the application windows.
62 * @param[in] appid application id
63 * @param[in] surface window's surface id
64 * @param[in] animation animation information
68 * @see ico_syc_win_show_e
70 /*--------------------------------------------------------------------------*/
71 int ico_syc_show(const char *appid, int surface,
72 const ico_syc_animation_t *animation);
74 /*--------------------------------------------------------------------------*/
77 * Hide the application window with animation.
79 * @param[in] appid application id
80 * @param[in] surface window's surface id
81 * @param[in] animation animation information
86 /*--------------------------------------------------------------------------*/
87 int ico_syc_hide(const char *appid, int surface,
88 const ico_syc_animation_t *animation);
90 /*--------------------------------------------------------------------------*/
93 * Move the application window with animation.
95 * @param[in] appid application id
96 * @param[in] surface window's surface id
97 * @param[in] move move information (zone/position/size)
98 * @param[in] animation animation information
101 * @retval not 0 error
103 /*--------------------------------------------------------------------------*/
104 int ico_syc_move(const char *appid, int surface,
105 const ico_syc_win_move_t *move,
106 const ico_syc_animation_t *animation);
108 /*--------------------------------------------------------------------------*/
110 * @brief ico_syc_change_active
111 * Change the active window which receives the input-event notification
112 * from System Controller.
114 * @param[in] appid application id
115 * @param[in] surface window's surface id
118 * @retval not 0 error
120 /*--------------------------------------------------------------------------*/
121 int ico_syc_change_active(const char *appid, int surface);
123 /*--------------------------------------------------------------------------*/
125 * @brief ico_syc_change_layer
126 * Change the window's layer.
128 * @param[in] appid application id
129 * @param[in] surface window's surface id
130 * @param[in] layer window's layer id
133 * @retval not 0 error
135 /*--------------------------------------------------------------------------*/
136 int ico_syc_change_layer(const char *appid, int surface, int layer);
138 /*--------------------------------------------------------------------------*/
140 * @brief ico_syc_map_get
141 * Get surface image pixel to the file.
143 * @param[in] surface window's surface id
144 * @param[in] filepath pixel image file path
147 * @retval not 0 error
149 /*--------------------------------------------------------------------------*/
150 int ico_syc_map_get(int surface, const char *filepath);
152 /*--------------------------------------------------------------------------*/
154 * @brief ico_syc_map_thumb
155 * Map the thumbnail data
157 * @param[in] surface window's surface id
158 * @param[in] framerate notify cycle [frames par sec]
159 * @param[in] filepath pixel image file path
162 * @retval not 0 error
164 /*--------------------------------------------------------------------------*/
165 int ico_syc_map_thumb(int surface, int framerate, const char *filepath);
167 /*--------------------------------------------------------------------------*/
169 * @brief ico_syc_unmap_thumb
170 * Unmap the thumbnail data.
171 * User calls this API when receiving the notification that
172 * terminated the application.
174 * @param[in] surface window's surface id
177 * @retval not 0 error
179 /*--------------------------------------------------------------------------*/
180 int ico_syc_unmap_thumb(int surface);
182 /*--------------------------------------------------------------------------*/
184 * @brief ico_syc_show_layer
187 * @param[in] layer window's layer id
190 * @retval not 0 error
192 /*--------------------------------------------------------------------------*/
193 int ico_syc_show_layer(int layer);
195 /*--------------------------------------------------------------------------*/
197 * @brief ico_syc_hide_layer
200 * @param[in] layer window's layer id
203 * @retval not 0 error
205 /*--------------------------------------------------------------------------*/
206 int ico_syc_hide_layer(int layer);
212 #endif /*_ICO_SYC_WINCTL_H_*/
213 /* vim:set expandtab ts=4 sw=4: */