Ubuntu Platform API  2.1.0
A library helping with tight integration into the Ubuntu platform
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
window.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2013 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 3 as
6  * published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * Authored by: Ricardo Mendoza <ricardo.mendoza@canonical.com>
17  * Thomas Voß <thomas.voss@canonical.com>
18  */
19 
20 #ifndef UBUNTU_APPLICATION_UI_WINDOW_H_
21 #define UBUNTU_APPLICATION_UI_WINDOW_H_
22 
23 #include <ubuntu/visibility.h>
24 
25 #include <ubuntu/status.h>
28 
29 #include <EGL/egl.h>
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35  typedef void UAUiWindow;
36  typedef int32_t UAUiWindowId;
37 
38  UBUNTU_DLL_PUBLIC UAUiWindow*
40  UApplicationInstance *instance,
41  UAUiWindowProperties *properties);
42 
45  UAUiWindow *window);
46 
47  UBUNTU_DLL_PUBLIC UAUiWindowId
49  UAUiWindow *window);
50 
53  UAUiWindow *window,
54  uint32_t *width,
55  uint32_t *height);
56 
59  UAUiWindow *window,
60  uint32_t new_x,
61  uint32_t new_y);
62 
65  UAUiWindow *window,
66  uint32_t new_width,
67  uint32_t new_height);
68 
71  UAUiWindow *window);
72 
75  UAUiWindow *window);
76 
79  UAUiWindow *window);
80 
81  UBUNTU_DLL_PUBLIC EGLNativeWindowType
83  UAUiWindow *window);
84 
85 #ifdef __cplusplus
86 }
87 #endif
88 
89 #endif /* UBUNTU_APPLICATION_UI_WINDOW_H_ */
void UAUiWindow
Definition: window.h:35
UBUNTU_DLL_PUBLIC EGLNativeWindowType ua_ui_window_get_native_type(UAUiWindow *window)
UbuntuStatus
Indicates the status of an operation.
Definition: status.h:26
UBUNTU_DLL_PUBLIC UAUiWindow * ua_ui_window_new_for_application_with_properties(UApplicationInstance *instance, UAUiWindowProperties *properties)
UBUNTU_DLL_PUBLIC void ua_ui_window_destroy(UAUiWindow *window)
void UAUiWindowProperties
UBUNTU_DLL_PUBLIC UStatus ua_ui_window_show(UAUiWindow *window)
UBUNTU_DLL_PUBLIC void ua_ui_window_get_size(UAUiWindow *window, uint32_t *width, uint32_t *height)
void UApplicationInstance
Opaque type describing an application instance.An application instance encapsulates the event loop of...
Definition: instance.h:39
UBUNTU_DLL_PUBLIC UAUiWindowId ua_ui_window_get_id(UAUiWindow *window)
UBUNTU_DLL_PUBLIC UStatus ua_ui_window_move(UAUiWindow *window, uint32_t new_x, uint32_t new_y)
#define UBUNTU_DLL_PUBLIC
Definition: visibility.h:26
UBUNTU_DLL_PUBLIC UStatus ua_ui_window_resize(UAUiWindow *window, uint32_t new_width, uint32_t new_height)
UBUNTU_DLL_PUBLIC void ua_ui_window_request_fullscreen(UAUiWindow *window)
int32_t UAUiWindowId
Definition: window.h:36
UBUNTU_DLL_PUBLIC UStatus ua_ui_window_hide(UAUiWindow *window)