ab665e91b5118c8c17b53fcda97744575ea30c15
[profile/ivi/ecore.git] / src / lib / ecore_cocoa / Ecore_Cocoa.h
1 #ifndef _ECORE_COCOA_H
2 #define _ECORE_COCOA_H
3
4 #ifdef EAPI
5 # undef EAPI
6 #endif
7
8 # ifdef __GNUC__
9 #  if __GNUC__ >= 4
10 #   define EAPI __attribute__ ((visibility("default")))
11 #  else
12 #   define EAPI
13 #  endif
14 # else
15 #  define EAPI
16 # endif
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 typedef struct _Ecore_Cocoa_Window Ecore_Cocoa_Window;
23
24 EAPI extern int ECORE_COCOA_EVENT_GOT_FOCUS;
25 EAPI extern int ECORE_COCOA_EVENT_LOST_FOCUS;
26 EAPI extern int ECORE_COCOA_EVENT_RESIZE;
27 EAPI extern int ECORE_COCOA_EVENT_EXPOSE;
28
29 typedef struct _Ecore_Cocoa_Event_Video_Resize Ecore_Cocoa_Event_Video_Resize;
30 struct _Ecore_Cocoa_Event_Video_Resize
31 {
32    int             w;
33    int             h;
34 };
35
36
37 /* Core */
38
39 EAPI int  ecore_cocoa_init(const char *name);
40 EAPI int  ecore_cocoa_shutdown(void);
41 EAPI void ecore_cocoa_feed_events(void);
42
43 /* Window */
44
45 EAPI Ecore_Cocoa_Window *ecore_cocoa_window_new(int x,
46                                                 int y,
47                                                 int width,
48                                                 int height);
49
50 EAPI void ecore_cocoa_window_free(Ecore_Cocoa_Window *window);
51
52 EAPI void *ecore_cocoa_window_hwnd_get(Ecore_Cocoa_Window *window);
53
54 EAPI void ecore_cocoa_window_move(Ecore_Cocoa_Window *window,
55                                   int                 x,
56                                   int                 y);
57
58 EAPI void ecore_cocoa_window_resize(Ecore_Cocoa_Window *window,
59                                     int                 width,
60                                     int                 height);
61
62 EAPI void ecore_cocoa_window_move_resize(Ecore_Cocoa_Window *window,
63                                          int                 x,
64                                          int                 y,
65                                          int                 width,
66                                          int                 height);
67
68 EAPI void ecore_cocoa_window_geometry_get(Ecore_Cocoa_Window *window,
69                                           int                *x,
70                                           int                *y,
71                                           int                *width,
72                                           int                *height);
73
74 EAPI void ecore_cocoa_window_size_get(Ecore_Cocoa_Window *window,
75                                       int                *width,
76                                       int                *height);
77
78 EAPI void ecore_cocoa_window_size_min_set(Ecore_Cocoa_Window *window,
79                                           unsigned int        min_width,
80                                           unsigned int        min_height);
81
82 EAPI void ecore_cocoa_window_size_min_get(Ecore_Cocoa_Window *window,
83                                           unsigned int       *min_width,
84                                           unsigned int       *min_height);
85
86 EAPI void ecore_cocoa_window_size_max_set(Ecore_Cocoa_Window *window,
87                                           unsigned int        max_width,
88                                           unsigned int        max_height);
89
90 EAPI void ecore_cocoa_window_size_max_get(Ecore_Cocoa_Window *window,
91                                           unsigned int       *max_width,
92                                           unsigned int       *max_height);
93
94 EAPI void ecore_cocoa_window_size_base_set(Ecore_Cocoa_Window *window,
95                                            unsigned int        base_width,
96                                            unsigned int        base_height);
97
98 EAPI void ecore_cocoa_window_size_base_get(Ecore_Cocoa_Window *window,
99                                            unsigned int       *base_width,
100                                            unsigned int       *base_height);
101
102 EAPI void ecore_cocoa_window_size_step_set(Ecore_Cocoa_Window *window,
103                                            unsigned int        step_width,
104                                            unsigned int        step_height);
105
106 EAPI void ecore_cocoa_window_size_step_get(Ecore_Cocoa_Window *window,
107                                            unsigned int       *step_width,
108                                            unsigned int       *step_height);
109
110 EAPI void ecore_cocoa_window_show(Ecore_Cocoa_Window *window);
111
112 EAPI void ecore_cocoa_window_hide(Ecore_Cocoa_Window *window);
113
114 EAPI void ecore_cocoa_window_raise(Ecore_Cocoa_Window *window);
115
116 EAPI void ecore_cocoa_window_lower(Ecore_Cocoa_Window *window);
117
118 EAPI void ecore_cocoa_window_title_set(Ecore_Cocoa_Window *window,
119                                        const char         *title);
120
121 EAPI void ecore_cocoa_window_focus_set(Ecore_Cocoa_Window *window);
122
123 EAPI void ecore_cocoa_window_iconified_set(Ecore_Cocoa_Window *window,
124                                            int                 on);
125
126 EAPI void ecore_cocoa_window_borderless_set(Ecore_Cocoa_Window *window,
127                                             int                 on);
128
129 #ifdef __cplusplus
130 }
131 #endif
132
133 #endif