1 module glfw3.wayland; 2 3 extern(C): nothrow: @nogc: 4 5 // extensions 6 7 struct zxdg_toplevel_decoration_v1_listener { 8 extern(C): nothrow: @nogc: 9 void function(void* data, zxdg_toplevel_decoration_v1* decoration, uint mode) configure; 10 } 11 12 struct xdg_toplevel_listener { 13 extern(C): nothrow: @nogc: 14 void function(void* data, xdg_toplevel* toplevel, int width, int height, wl_array* states) configure; 15 void function(void* data, xdg_toplevel* toplevel) close; 16 } 17 18 struct xdg_surface_listener { 19 extern(C): nothrow: @nogc: 20 void function(void* data, xdg_surface* surface, uint serial) configure; 21 } 22 23 struct zwp_relative_pointer_v1_listener { 24 extern(C): nothrow: @nogc: 25 void function(void* data, zwp_relative_pointer_v1* pointer, uint timeHi, uint timeLo, wl_fixed_t dx, wl_fixed_t dy, wl_fixed_t dxUnaccel, wl_fixed_t dyUnaccel) relativeMotion; 26 } 27 28 struct zwp_locked_pointer_v1_listener { 29 extern(C): nothrow: @nogc: 30 void function(void* data, zwp_locked_pointer_v1* lockedPointer) locked; 31 void function(void* data, zwp_locked_pointer_v1* lockedPointer) unlocked; 32 } 33 34 // 35 struct wl_buffer; 36 struct wl_callback; 37 struct wl_compositor; 38 struct wl_cursor_theme; 39 struct wl_data_device_manager; 40 struct wl_data_device; 41 struct wl_data_offer; 42 struct wl_data_source; 43 struct wl_display; 44 struct wl_egl_window; 45 struct wl_keyboard; 46 struct wl_output; 47 struct wl_pointer; 48 struct wl_region; 49 struct wl_registry; 50 struct wl_seat; 51 struct wl_shell_surface; 52 struct wl_shell; 53 struct wl_shm_pool; 54 struct wl_shm; 55 struct wl_subcompositor; 56 struct wl_subsurface; 57 struct wl_surface; 58 struct wl_touch; 59 struct wp_viewport; 60 struct wp_viewporter; 61 struct xdg_surface; 62 struct xdg_toplevel; 63 struct xdg_wm_base; 64 struct zwp_idle_inhibit_manager_v1; 65 struct zwp_idle_inhibitor_v1; 66 struct zwp_locked_pointer_v1; 67 struct zwp_pointer_constraints_v1; 68 struct zwp_relative_pointer_manager_v1; 69 struct zwp_relative_pointer_v1; 70 struct zxdg_decoration_manager_v1; 71 struct zxdg_toplevel_decoration_v1; 72 73 alias wl_fixed_t = uint; 74 75 pure @safe nothrow @nogc 76 pragma(inline, true) double wl_fixed_to_double(wl_fixed_t f) { 77 static union U { 78 double d; 79 ulong i; 80 } 81 U u; 82 u.i = ((1023L + 44L) << 52) + (1L << 51) + f; 83 return u.d - (3L << 43); 84 } 85 86 struct wl_array { 87 size_t size; 88 size_t alloc; 89 void *data; 90 } 91 92 enum wl_seat_capability { 93 WL_SEAT_CAPABILITY_POINTER = 1, 94 WL_SEAT_CAPABILITY_KEYBOARD = 2, 95 WL_SEAT_CAPABILITY_TOUCH = 4, 96 } 97 enum WL_SEAT_CAPABILITY_POINTER = wl_seat_capability.WL_SEAT_CAPABILITY_POINTER; 98 enum WL_SEAT_CAPABILITY_KEYBOARD = wl_seat_capability.WL_SEAT_CAPABILITY_KEYBOARD; 99 enum WL_SEAT_CAPABILITY_TOUCH = wl_seat_capability.WL_SEAT_CAPABILITY_TOUCH; 100 101 enum wl_output_mode { 102 WL_OUTPUT_MODE_CURRENT = 0x1, 103 WL_OUTPUT_MODE_PREFERRED = 0x2, 104 } 105 enum WL_OUTPUT_MODE_CURRENT = wl_output_mode.WL_OUTPUT_MODE_CURRENT; 106 enum WL_OUTPUT_MODE_PREFERRED = wl_output_mode.WL_OUTPUT_MODE_PREFERRED; 107 108 enum wl_pointer_button_state { 109 WL_POINTER_BUTTON_STATE_RELEASED = 0, 110 WL_POINTER_BUTTON_STATE_PRESSED = 1, 111 } 112 enum WL_POINTER_BUTTON_STATE_RELEASED = wl_pointer_button_state.WL_POINTER_BUTTON_STATE_RELEASED; 113 enum WL_POINTER_BUTTON_STATE_PRESSED = wl_pointer_button_state.WL_POINTER_BUTTON_STATE_PRESSED; 114 115 enum wl_keyboard_key_state { 116 WL_KEYBOARD_KEY_STATE_RELEASED = 0, 117 WL_KEYBOARD_KEY_STATE_PRESSED = 1, 118 } 119 enum WL_KEYBOARD_KEY_STATE_RELEASED = wl_keyboard_key_state.WL_KEYBOARD_KEY_STATE_RELEASED; 120 enum WL_KEYBOARD_KEY_STATE_PRESSED = wl_keyboard_key_state.WL_KEYBOARD_KEY_STATE_PRESSED; 121 122 enum wl_pointer_axis { 123 WL_POINTER_AXIS_VERTICAL_SCROLL = 0, 124 WL_POINTER_AXIS_HORIZONTAL_SCROLL = 1, 125 } 126 enum WL_POINTER_AXIS_VERTICAL_SCROLL = wl_pointer_axis.WL_POINTER_AXIS_VERTICAL_SCROLL; 127 enum WL_POINTER_AXIS_HORIZONTAL_SCROLL = wl_pointer_axis.WL_POINTER_AXIS_HORIZONTAL_SCROLL; 128 129 enum wl_keyboard_keymap_format { 130 WL_KEYBOARD_KEYMAP_FORMAT_NO_KEYMAP = 0, 131 WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1 = 1, 132 } 133 enum WL_KEYBOARD_KEYMAP_FORMAT_NO_KEYMAP = wl_keyboard_keymap_format.WL_KEYBOARD_KEYMAP_FORMAT_NO_KEYMAP; 134 enum WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1 = wl_keyboard_keymap_format.WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1; 135 136 struct wl_message { 137 const(char)* name; 138 const(char)* signature; 139 const(wl_interface)** types; 140 } 141 142 struct wl_interface { 143 const char *name; 144 int version_; 145 int method_count; 146 const(wl_message)* methods; 147 int event_count; 148 const(wl_message)* events; 149 } 150 151 /* 152 wl_array_for_each(pos, array) 153 for (pos = (array)->data; 154 (const char *) pos < ((const char *) (array)->data + (array)->size); 155 (pos)++) 156 */ 157 158 struct wl_pointer_listener { 159 extern(C): @nogc: nothrow: 160 void function(void* data, wl_pointer* wl_pointer, uint serial, wl_surface* surface, wl_fixed_t surface_x, wl_fixed_t surface_y) enter; 161 void function(void* data, wl_pointer* wl_pointer, uint serial, wl_surface* surface) leave; 162 void function(void* data, wl_pointer* wl_pointer, uint time, wl_fixed_t surface_x, wl_fixed_t surface_y) motion; 163 void function(void* data, wl_pointer* wl_pointer, uint serial, uint time, uint button, uint state) button; 164 void function(void* data, wl_pointer* wl_pointer, uint time, uint axis, wl_fixed_t value) axis; 165 void function(void* data, wl_pointer* wl_pointer) frame; 166 void function(void* data, wl_pointer* wl_pointer, uint axis_source) axis_source; 167 void function(void* data, wl_pointer* wl_pointer, uint time, uint axis) axis_stop; 168 void function(void* data, wl_pointer* wl_pointer, uint axis, int discrete) axis_discrete; 169 } 170 171 struct wl_keyboard_listener { 172 extern(C): @nogc: nothrow: 173 void function(void* data, wl_keyboard* wl_keyboard, uint format, int fd, uint size) keymap; 174 void function(void* data, wl_keyboard* wl_keyboard, uint serial, wl_surface* surface, wl_array* keys) enter; 175 void function(void* data, wl_keyboard* wl_keyboard, uint serial, wl_surface* surface) leave; 176 void function(void* data, wl_keyboard* wl_keyboard, uint serial, uint time, uint key, uint state) key; 177 void function(void* data, wl_keyboard* wl_keyboard, uint serial, uint mods_depressed, uint mods_latched, uint mods_locked, uint group) modifiers; 178 void function(void* data, wl_keyboard* wl_keyboard, int rate, int delay) repeat_info; 179 } 180 181 struct wl_seat_listener { 182 extern(C): @nogc: nothrow: 183 void function(void* data, wl_seat* wl_seat, uint capabilities) capabilities; 184 void function(void* data, wl_seat* wl_seat, const(char)* name) name; 185 } 186 struct wl_data_offer_listener { 187 extern(C): @nogc: nothrow: 188 void function(void* data, wl_data_offer* wl_data_offer, const(char)* mime_type) offer; 189 void function(void* data, wl_data_offer* wl_data_offer, uint source_actions) source_actions; 190 void function(void* data, wl_data_offer* wl_data_offer, uint dnd_action) action; 191 } 192 193 struct wl_surface_listener { 194 extern(C): @nogc: nothrow: 195 void function(void* data, wl_surface* wl_surface, wl_output* output) enter; 196 void function(void* data, wl_surface* wl_surface, wl_output* output) leave; 197 } 198 199 struct wl_data_device_listener { 200 extern(C): @nogc: nothrow: 201 void function(void* data, wl_data_device* wl_data_device, wl_data_offer* id) data_offer; 202 void function(void* data, wl_data_device* wl_data_device, uint serial, wl_surface* surface, wl_fixed_t x, wl_fixed_t y, wl_data_offer* id) enter; 203 void function(void* data, wl_data_device* wl_data_device) leave; 204 void function(void* data, wl_data_device* wl_data_device, uint time, wl_fixed_t x, wl_fixed_t y) motion; 205 void function(void* data, wl_data_device* wl_data_device) drop; 206 void function(void* data, wl_data_device* wl_data_device, wl_data_offer* id) selection; 207 } 208 209 struct wl_registry_listener { 210 extern(C): @nogc: nothrow: 211 void function(void* data, wl_registry* wl_registry, uint name, const(char)* interface_, uint version_) global; 212 void function(void* data, wl_registry* wl_registry, uint name) global_remove; 213 } 214 215 struct wl_output_listener { 216 extern(C): @nogc: nothrow: 217 void function(void* data, wl_output* wl_output, int x, int y, int physical_width, int physical_height, int subpixel, const(char)* make, const(char)* model, int transform) geometry; 218 void function(void* data, wl_output* wl_output, uint flags, int width, int height, int refresh) mode; 219 void function(void* data, wl_output* wl_output) done; 220 void function(void* data, wl_output* wl_output, int factor) scale; 221 } 222 struct wl_data_source_listener { 223 extern(C): @nogc: nothrow: 224 void function(void* data, wl_data_source* wl_data_source, const(char)* mime_type) target; 225 void function(void* data, wl_data_source* wl_data_source, const(char)* mime_type, int fd) send; 226 void function(void* data, wl_data_source* wl_data_source) cancelled; 227 void function(void* data, wl_data_source* wl_data_source) dnd_drop_performed; 228 void function(void* data, wl_data_source* wl_data_source) dnd_finished; 229 void function(void* data, wl_data_source* wl_data_source, uint dnd_action) action; 230 } 231 232 // note: I have no idea where this is defined in C headers, but this is how it's used in GLFW 233 struct xdg_wm_base_listener { 234 extern(C): @nogc: nothrow: 235 void function(void* data, xdg_wm_base* wmBase, uint serial) ping; 236 } 237 238 struct wl_shell_surface_listener { 239 extern(C): @nogc: nothrow: 240 void function(void* data, wl_shell_surface* wl_shell_surface, uint serial) ping; 241 void function(void* data, wl_shell_surface* wl_shell_surface, uint edges, int width, int height) configure; 242 void function(void* data, wl_shell_surface* wl_shell_surface) popup_done; 243 } 244 245 pragma(inline, true) static void* wl_registry_bind(wl_registry* wl_registry, uint name, const(wl_interface)* interface_, uint version_) { 246 wl_proxy* id; 247 id = wl_proxy_marshal_constructor_versioned(cast(wl_proxy*) wl_registry, 248 WL_REGISTRY_BIND, interface_, version_, name, interface_.name, version_, null); 249 250 return cast(void*) id; 251 } 252 253 pragma(inline, true) static int wl_output_add_listener(wl_output* wl_output, const(wl_output_listener)* listener, void* data) { 254 return wl_proxy_add_listener(cast(wl_proxy*) wl_output, 255 cast(void function()) listener, data); 256 } 257 258 pragma(inline, true) static void wl_output_destroy(wl_output* wl_output) { 259 wl_proxy_destroy(cast(wl_proxy*) wl_output); 260 } 261 262 extern const wl_interface wl_display_interface; 263 extern const wl_interface wl_registry_interface; 264 extern const wl_interface wl_callback_interface; 265 extern const wl_interface wl_compositor_interface; 266 extern const wl_interface wl_shm_pool_interface; 267 extern const wl_interface wl_shm_interface; 268 extern const wl_interface wl_buffer_interface; 269 extern const wl_interface wl_data_offer_interface; 270 extern const wl_interface wl_data_source_interface; 271 extern const wl_interface wl_data_device_interface; 272 extern const wl_interface wl_data_device_manager_interface; 273 extern const wl_interface wl_shell_interface; 274 extern const wl_interface wl_shell_surface_interface; 275 extern const wl_interface wl_surface_interface; 276 extern const wl_interface wl_seat_interface; 277 extern const wl_interface wl_pointer_interface; 278 extern const wl_interface wl_keyboard_interface; 279 extern const wl_interface wl_touch_interface; 280 extern const wl_interface wl_output_interface; 281 extern const wl_interface wl_region_interface; 282 extern const wl_interface wl_subcompositor_interface; 283 extern const wl_interface wl_subsurface_interface; 284 285 enum /*wl_shell_surface_resize*/ { 286 WL_SHELL_SURFACE_RESIZE_NONE = 0, 287 WL_SHELL_SURFACE_RESIZE_TOP = 1, 288 WL_SHELL_SURFACE_RESIZE_BOTTOM = 2, 289 WL_SHELL_SURFACE_RESIZE_LEFT = 4, 290 WL_SHELL_SURFACE_RESIZE_TOP_LEFT = 5, 291 WL_SHELL_SURFACE_RESIZE_BOTTOM_LEFT = 6, 292 WL_SHELL_SURFACE_RESIZE_RIGHT = 8, 293 WL_SHELL_SURFACE_RESIZE_TOP_RIGHT = 9, 294 WL_SHELL_SURFACE_RESIZE_BOTTOM_RIGHT = 10, 295 } 296 297 // Bulk 298 enum wl_display_error { 299 WL_DISPLAY_ERROR_INVALID_OBJECT = 0, 300 WL_DISPLAY_ERROR_INVALID_METHOD = 1, 301 WL_DISPLAY_ERROR_NO_MEMORY = 2, 302 } 303 struct wl_display_listener { 304 void function(void* data, wl_display* wl_display, void* object_id, uint code, const(char)* message) error; 305 void function(void* data, wl_display* wl_display, uint id) delete_id; 306 } 307 pragma(inline, true) static int wl_display_add_listener(wl_display* wl_display, const(wl_display_listener)* listener, void* data) { 308 return wl_proxy_add_listener(cast(wl_proxy*) wl_display, 309 cast(void function()) listener, data); 310 } 311 enum WL_DISPLAY_SYNC = 0; 312 enum WL_DISPLAY_GET_REGISTRY = 1; 313 enum WL_DISPLAY_ERROR_SINCE_VERSION = 1; 314 enum WL_DISPLAY_DELETE_ID_SINCE_VERSION = 1; 315 enum WL_DISPLAY_SYNC_SINCE_VERSION = 1; 316 enum WL_DISPLAY_GET_REGISTRY_SINCE_VERSION = 1; 317 318 pragma(inline, true) static void wl_display_set_user_data(wl_display* wl_display, void* user_data) { 319 wl_proxy_set_user_data(cast(wl_proxy*) wl_display, user_data); 320 } 321 pragma(inline, true) static void* wl_display_get_user_data(wl_display* wl_display) { 322 return wl_proxy_get_user_data(cast(wl_proxy*) wl_display); 323 } 324 pragma(inline, true) static uint wl_display_get_version(wl_display* wl_display) { 325 return wl_proxy_get_version(cast(wl_proxy*) wl_display); 326 } 327 pragma(inline, true) static wl_callback* wl_display_sync(wl_display* wl_display) { 328 wl_proxy* callback; 329 callback = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_display, 330 WL_DISPLAY_SYNC, &wl_callback_interface, null); 331 return cast(wl_callback*) callback; 332 } 333 pragma(inline, true) static wl_registry* wl_display_get_registry(wl_display* wl_display) { 334 wl_proxy* registry; 335 registry = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_display, 336 WL_DISPLAY_GET_REGISTRY, &wl_registry_interface, null); 337 return cast(wl_registry*) registry; 338 } 339 pragma(inline, true) static int wl_registry_add_listener(wl_registry* wl_registry, const(wl_registry_listener)* listener, void* data) { 340 return wl_proxy_add_listener(cast(wl_proxy*) wl_registry, 341 cast(void function()) listener, data); 342 } 343 enum WL_REGISTRY_BIND = 0; 344 enum WL_REGISTRY_GLOBAL_SINCE_VERSION = 1; 345 enum WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION = 1; 346 enum WL_REGISTRY_BIND_SINCE_VERSION = 1; 347 348 pragma(inline, true) static void wl_registry_set_user_data(wl_registry* wl_registry, void* user_data) { 349 wl_proxy_set_user_data(cast(wl_proxy*) wl_registry, user_data); 350 } 351 pragma(inline, true) static void* wl_registry_get_user_data(wl_registry* wl_registry) { 352 return wl_proxy_get_user_data(cast(wl_proxy*) wl_registry); 353 } 354 pragma(inline, true) static uint wl_registry_get_version(wl_registry* wl_registry) { 355 return wl_proxy_get_version(cast(wl_proxy*) wl_registry); 356 } 357 358 pragma(inline, true) static void wl_registry_destroy(wl_registry* wl_registry) { 359 wl_proxy_destroy(cast(wl_proxy*) wl_registry); 360 } 361 struct wl_callback_listener { 362 void function(void* data, wl_callback* wl_callback, uint callback_data) done; 363 } 364 pragma(inline, true) static int wl_callback_add_listener(wl_callback* wl_callback, const(wl_callback_listener)* listener, void* data) { 365 return wl_proxy_add_listener(cast(wl_proxy*) wl_callback, 366 cast(void function()) listener, data); 367 } 368 enum WL_CALLBACK_DONE_SINCE_VERSION = 1; 369 370 pragma(inline, true) static void wl_callback_set_user_data(wl_callback* wl_callback, void* user_data) { 371 wl_proxy_set_user_data(cast(wl_proxy*) wl_callback, user_data); 372 } 373 pragma(inline, true) static void* wl_callback_get_user_data(wl_callback* wl_callback) { 374 return wl_proxy_get_user_data(cast(wl_proxy*) wl_callback); 375 } 376 pragma(inline, true) static uint wl_callback_get_version(wl_callback* wl_callback) { 377 return wl_proxy_get_version(cast(wl_proxy*) wl_callback); 378 } 379 pragma(inline, true) static void wl_callback_destroy(wl_callback* wl_callback) { 380 wl_proxy_destroy(cast(wl_proxy*) wl_callback); 381 } 382 enum WL_COMPOSITOR_CREATE_SURFACE = 0; 383 enum WL_COMPOSITOR_CREATE_REGION = 1; 384 enum WL_COMPOSITOR_CREATE_SURFACE_SINCE_VERSION = 1; 385 enum WL_COMPOSITOR_CREATE_REGION_SINCE_VERSION = 1; 386 387 pragma(inline, true) static void wl_compositor_set_user_data(wl_compositor* wl_compositor, void* user_data) { 388 wl_proxy_set_user_data(cast(wl_proxy*) wl_compositor, user_data); 389 } 390 pragma(inline, true) static void* wl_compositor_get_user_data(wl_compositor* wl_compositor) { 391 return wl_proxy_get_user_data(cast(wl_proxy*) wl_compositor); 392 } 393 pragma(inline, true) static uint wl_compositor_get_version(wl_compositor* wl_compositor) { 394 return wl_proxy_get_version(cast(wl_proxy*) wl_compositor); 395 } 396 pragma(inline, true) static void wl_compositor_destroy(wl_compositor* wl_compositor) { 397 wl_proxy_destroy(cast(wl_proxy*) wl_compositor); 398 } 399 pragma(inline, true) static wl_surface* wl_compositor_create_surface(wl_compositor* wl_compositor) { 400 wl_proxy* id; 401 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_compositor, 402 WL_COMPOSITOR_CREATE_SURFACE, &wl_surface_interface, null); 403 return cast(wl_surface*) id; 404 } 405 pragma(inline, true) static wl_region* wl_compositor_create_region(wl_compositor* wl_compositor) { 406 wl_proxy* id; 407 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_compositor, 408 WL_COMPOSITOR_CREATE_REGION, &wl_region_interface, null); 409 return cast(wl_region*) id; 410 } 411 enum WL_SHM_POOL_CREATE_BUFFER = 0; 412 enum WL_SHM_POOL_DESTROY = 1; 413 enum WL_SHM_POOL_RESIZE = 2; 414 enum WL_SHM_POOL_CREATE_BUFFER_SINCE_VERSION = 1; 415 enum WL_SHM_POOL_DESTROY_SINCE_VERSION = 1; 416 enum WL_SHM_POOL_RESIZE_SINCE_VERSION = 1; 417 418 pragma(inline, true) static void wl_shm_pool_set_user_data(wl_shm_pool* wl_shm_pool, void* user_data) { 419 wl_proxy_set_user_data(cast(wl_proxy*) wl_shm_pool, user_data); 420 } 421 pragma(inline, true) static void* wl_shm_pool_get_user_data(wl_shm_pool* wl_shm_pool) { 422 return wl_proxy_get_user_data(cast(wl_proxy*) wl_shm_pool); 423 } 424 pragma(inline, true) static uint wl_shm_pool_get_version(wl_shm_pool* wl_shm_pool) { 425 return wl_proxy_get_version(cast(wl_proxy*) wl_shm_pool); 426 } 427 pragma(inline, true) static wl_buffer* wl_shm_pool_create_buffer(wl_shm_pool* wl_shm_pool, int offset, int width, int height, int stride, uint format) { 428 wl_proxy* id; 429 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_shm_pool, 430 WL_SHM_POOL_CREATE_BUFFER, &wl_buffer_interface, null, offset, width, height, stride, format); 431 return cast(wl_buffer*) id; 432 } 433 pragma(inline, true) static void wl_shm_pool_destroy(wl_shm_pool* wl_shm_pool) { 434 wl_proxy_marshal(cast(wl_proxy*) wl_shm_pool, 435 WL_SHM_POOL_DESTROY); 436 wl_proxy_destroy(cast(wl_proxy*) wl_shm_pool); 437 } 438 pragma(inline, true) static void wl_shm_pool_resize(wl_shm_pool* wl_shm_pool, int size) { 439 wl_proxy_marshal(cast(wl_proxy*) wl_shm_pool, WL_SHM_POOL_RESIZE, size); 440 } 441 enum wl_shm_error { 442 WL_SHM_ERROR_INVALID_FORMAT = 0, 443 WL_SHM_ERROR_INVALID_STRIDE = 1, 444 WL_SHM_ERROR_INVALID_FD = 2, 445 } 446 enum wl_shm_format { 447 WL_SHM_FORMAT_ARGB8888 = 0, 448 WL_SHM_FORMAT_XRGB8888 = 1, 449 WL_SHM_FORMAT_C8 = 0x20203843, 450 WL_SHM_FORMAT_RGB332 = 0x38424752, 451 WL_SHM_FORMAT_BGR233 = 0x38524742, 452 WL_SHM_FORMAT_XRGB4444 = 0x32315258, 453 WL_SHM_FORMAT_XBGR4444 = 0x32314258, 454 WL_SHM_FORMAT_RGBX4444 = 0x32315852, 455 WL_SHM_FORMAT_BGRX4444 = 0x32315842, 456 WL_SHM_FORMAT_ARGB4444 = 0x32315241, 457 WL_SHM_FORMAT_ABGR4444 = 0x32314241, 458 WL_SHM_FORMAT_RGBA4444 = 0x32314152, 459 WL_SHM_FORMAT_BGRA4444 = 0x32314142, 460 WL_SHM_FORMAT_XRGB1555 = 0x35315258, 461 WL_SHM_FORMAT_XBGR1555 = 0x35314258, 462 WL_SHM_FORMAT_RGBX5551 = 0x35315852, 463 WL_SHM_FORMAT_BGRX5551 = 0x35315842, 464 WL_SHM_FORMAT_ARGB1555 = 0x35315241, 465 WL_SHM_FORMAT_ABGR1555 = 0x35314241, 466 WL_SHM_FORMAT_RGBA5551 = 0x35314152, 467 WL_SHM_FORMAT_BGRA5551 = 0x35314142, 468 WL_SHM_FORMAT_RGB565 = 0x36314752, 469 WL_SHM_FORMAT_BGR565 = 0x36314742, 470 WL_SHM_FORMAT_RGB888 = 0x34324752, 471 WL_SHM_FORMAT_BGR888 = 0x34324742, 472 WL_SHM_FORMAT_XBGR8888 = 0x34324258, 473 WL_SHM_FORMAT_RGBX8888 = 0x34325852, 474 WL_SHM_FORMAT_BGRX8888 = 0x34325842, 475 WL_SHM_FORMAT_ABGR8888 = 0x34324241, 476 WL_SHM_FORMAT_RGBA8888 = 0x34324152, 477 WL_SHM_FORMAT_BGRA8888 = 0x34324142, 478 WL_SHM_FORMAT_XRGB2101010 = 0x30335258, 479 WL_SHM_FORMAT_XBGR2101010 = 0x30334258, 480 WL_SHM_FORMAT_RGBX1010102 = 0x30335852, 481 WL_SHM_FORMAT_BGRX1010102 = 0x30335842, 482 WL_SHM_FORMAT_ARGB2101010 = 0x30335241, 483 WL_SHM_FORMAT_ABGR2101010 = 0x30334241, 484 WL_SHM_FORMAT_RGBA1010102 = 0x30334152, 485 WL_SHM_FORMAT_BGRA1010102 = 0x30334142, 486 WL_SHM_FORMAT_YUYV = 0x56595559, 487 WL_SHM_FORMAT_YVYU = 0x55595659, 488 WL_SHM_FORMAT_UYVY = 0x59565955, 489 WL_SHM_FORMAT_VYUY = 0x59555956, 490 WL_SHM_FORMAT_AYUV = 0x56555941, 491 WL_SHM_FORMAT_NV12 = 0x3231564e, 492 WL_SHM_FORMAT_NV21 = 0x3132564e, 493 WL_SHM_FORMAT_NV16 = 0x3631564e, 494 WL_SHM_FORMAT_NV61 = 0x3136564e, 495 WL_SHM_FORMAT_YUV410 = 0x39565559, 496 WL_SHM_FORMAT_YVU410 = 0x39555659, 497 WL_SHM_FORMAT_YUV411 = 0x31315559, 498 WL_SHM_FORMAT_YVU411 = 0x31315659, 499 WL_SHM_FORMAT_YUV420 = 0x32315559, 500 WL_SHM_FORMAT_YVU420 = 0x32315659, 501 WL_SHM_FORMAT_YUV422 = 0x36315559, 502 WL_SHM_FORMAT_YVU422 = 0x36315659, 503 WL_SHM_FORMAT_YUV444 = 0x34325559, 504 WL_SHM_FORMAT_YVU444 = 0x34325659, 505 } 506 struct wl_shm_listener { 507 void function(void* data, wl_shm* wl_shm, uint format) format; 508 }; 509 pragma(inline, true) static int wl_shm_add_listener(wl_shm* wl_shm, const(wl_shm_listener)* listener, void* data) { 510 return wl_proxy_add_listener(cast(wl_proxy*) wl_shm, cast(void function()) listener, data); 511 } 512 enum WL_SHM_CREATE_POOL = 0; 513 enum WL_SHM_FORMAT_SINCE_VERSION = 1; 514 enum WL_SHM_CREATE_POOL_SINCE_VERSION = 1; 515 516 pragma(inline, true) static void wl_shm_set_user_data(wl_shm* wl_shm, void* user_data) { 517 wl_proxy_set_user_data(cast(wl_proxy*) wl_shm, user_data); 518 } 519 pragma(inline, true) static void* wl_shm_get_user_data(wl_shm* wl_shm) { 520 return wl_proxy_get_user_data(cast(wl_proxy*) wl_shm); 521 } 522 pragma(inline, true) static uint wl_shm_get_version(wl_shm* wl_shm) { 523 return wl_proxy_get_version(cast(wl_proxy*) wl_shm); 524 } 525 pragma(inline, true) static void wl_shm_destroy(wl_shm* wl_shm) { 526 wl_proxy_destroy(cast(wl_proxy*) wl_shm); 527 } 528 pragma(inline, true) static wl_shm_pool* wl_shm_create_pool(wl_shm* wl_shm, int fd, int size) { 529 wl_proxy* id; 530 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_shm, 531 WL_SHM_CREATE_POOL, &wl_shm_pool_interface, null, fd, size); 532 return cast(wl_shm_pool*) id; 533 } 534 struct wl_buffer_listener { 535 void function(void* data, wl_buffer* wl_buffer) release; 536 }; 537 pragma(inline, true) static int wl_buffer_add_listener(wl_buffer* wl_buffer, const(wl_buffer_listener)* listener, void* data) { 538 return wl_proxy_add_listener(cast(wl_proxy*) wl_buffer, 539 cast(void function()) listener, data); 540 } 541 enum WL_BUFFER_DESTROY = 0; 542 enum WL_BUFFER_RELEASE_SINCE_VERSION = 1; 543 enum WL_BUFFER_DESTROY_SINCE_VERSION = 1; 544 pragma(inline, true) static void wl_buffer_set_user_data(wl_buffer* wl_buffer, void* user_data) { 545 wl_proxy_set_user_data(cast(wl_proxy*) wl_buffer, user_data); 546 } 547 pragma(inline, true) static void* wl_buffer_get_user_data(wl_buffer* wl_buffer) { 548 return wl_proxy_get_user_data(cast(wl_proxy*) wl_buffer); 549 } 550 pragma(inline, true) static uint wl_buffer_get_version(wl_buffer* wl_buffer) { 551 return wl_proxy_get_version(cast(wl_proxy*) wl_buffer); 552 } 553 pragma(inline, true) static void wl_buffer_destroy(wl_buffer* wl_buffer) { 554 wl_proxy_marshal(cast(wl_proxy*) wl_buffer, 555 WL_BUFFER_DESTROY); 556 wl_proxy_destroy(cast(wl_proxy*) wl_buffer); 557 } 558 enum wl_data_offer_error { 559 WL_DATA_OFFER_ERROR_INVALID_FINISH = 0, 560 WL_DATA_OFFER_ERROR_INVALID_ACTION_MASK = 1, 561 WL_DATA_OFFER_ERROR_INVALID_ACTION = 2, 562 WL_DATA_OFFER_ERROR_INVALID_OFFER = 3, 563 } 564 pragma(inline, true) static int wl_data_offer_add_listener(wl_data_offer* wl_data_offer, const(wl_data_offer_listener)* listener, void* data) { 565 return wl_proxy_add_listener(cast(wl_proxy*) wl_data_offer, 566 cast(void function()) listener, data); 567 } 568 enum WL_DATA_OFFER_ACCEPT = 0; 569 enum WL_DATA_OFFER_RECEIVE = 1; 570 enum WL_DATA_OFFER_DESTROY = 2; 571 enum WL_DATA_OFFER_FINISH = 3; 572 enum WL_DATA_OFFER_SET_ACTIONS = 4; 573 enum WL_DATA_OFFER_OFFER_SINCE_VERSION = 1; 574 enum WL_DATA_OFFER_SOURCE_ACTIONS_SINCE_VERSION = 3; 575 enum WL_DATA_OFFER_ACTION_SINCE_VERSION = 3; 576 enum WL_DATA_OFFER_ACCEPT_SINCE_VERSION = 1; 577 enum WL_DATA_OFFER_RECEIVE_SINCE_VERSION = 1; 578 enum WL_DATA_OFFER_DESTROY_SINCE_VERSION = 1; 579 enum WL_DATA_OFFER_FINISH_SINCE_VERSION = 3; 580 enum WL_DATA_OFFER_SET_ACTIONS_SINCE_VERSION = 3; 581 pragma(inline, true) static void wl_data_offer_set_user_data(wl_data_offer* wl_data_offer, void* user_data) { 582 wl_proxy_set_user_data(cast(wl_proxy*) wl_data_offer, user_data); 583 } 584 pragma(inline, true) static void* wl_data_offer_get_user_data(wl_data_offer* wl_data_offer) { 585 return wl_proxy_get_user_data(cast(wl_proxy*) wl_data_offer); 586 } 587 pragma(inline, true) static uint wl_data_offer_get_version(wl_data_offer* wl_data_offer) { 588 return wl_proxy_get_version(cast(wl_proxy*) wl_data_offer); 589 } 590 pragma(inline, true) static void wl_data_offer_accept(wl_data_offer* wl_data_offer, uint serial, const(char)* mime_type) { 591 wl_proxy_marshal(cast(wl_proxy*) wl_data_offer, 592 WL_DATA_OFFER_ACCEPT, serial, mime_type); 593 } 594 pragma(inline, true) static void wl_data_offer_receive(wl_data_offer* wl_data_offer, const(char)* mime_type, int fd) { 595 wl_proxy_marshal(cast(wl_proxy*) wl_data_offer, 596 WL_DATA_OFFER_RECEIVE, mime_type, fd); 597 } 598 pragma(inline, true) static void wl_data_offer_destroy(wl_data_offer* wl_data_offer) { 599 wl_proxy_marshal(cast(wl_proxy*) wl_data_offer, 600 WL_DATA_OFFER_DESTROY); 601 wl_proxy_destroy(cast(wl_proxy*) wl_data_offer); 602 } 603 pragma(inline, true) static void wl_data_offer_finish(wl_data_offer* wl_data_offer) { 604 wl_proxy_marshal(cast(wl_proxy*) wl_data_offer, 605 WL_DATA_OFFER_FINISH); 606 } 607 pragma(inline, true) static void wl_data_offer_set_actions(wl_data_offer* wl_data_offer, uint dnd_actions, uint preferred_action) { 608 wl_proxy_marshal(cast(wl_proxy*) wl_data_offer, 609 WL_DATA_OFFER_SET_ACTIONS, dnd_actions, preferred_action); 610 } 611 enum wl_data_source_error { 612 WL_DATA_SOURCE_ERROR_INVALID_ACTION_MASK = 0, 613 WL_DATA_SOURCE_ERROR_INVALID_SOURCE = 1, 614 } 615 pragma(inline, true) static int wl_data_source_add_listener(wl_data_source* wl_data_source, const(wl_data_source_listener)* listener, void* data) { 616 return wl_proxy_add_listener(cast(wl_proxy*) wl_data_source, 617 cast(void function()) listener, data); 618 } 619 enum WL_DATA_SOURCE_OFFER = 0; 620 enum WL_DATA_SOURCE_DESTROY = 1; 621 enum WL_DATA_SOURCE_SET_ACTIONS = 2; 622 enum WL_DATA_SOURCE_TARGET_SINCE_VERSION = 1; 623 enum WL_DATA_SOURCE_SEND_SINCE_VERSION = 1; 624 enum WL_DATA_SOURCE_CANCELLED_SINCE_VERSION = 1; 625 enum WL_DATA_SOURCE_DND_DROP_PERFORMED_SINCE_VERSION = 3; 626 enum WL_DATA_SOURCE_DND_FINISHED_SINCE_VERSION = 3; 627 enum WL_DATA_SOURCE_ACTION_SINCE_VERSION = 3; 628 enum WL_DATA_SOURCE_OFFER_SINCE_VERSION = 1; 629 enum WL_DATA_SOURCE_DESTROY_SINCE_VERSION = 1; 630 enum WL_DATA_SOURCE_SET_ACTIONS_SINCE_VERSION = 3; 631 pragma(inline, true) static void wl_data_source_set_user_data(wl_data_source* wl_data_source, void* user_data) { 632 wl_proxy_set_user_data(cast(wl_proxy*) wl_data_source, user_data); 633 } 634 pragma(inline, true) static void* wl_data_source_get_user_data(wl_data_source* wl_data_source) { 635 return wl_proxy_get_user_data(cast(wl_proxy*) wl_data_source); 636 } 637 pragma(inline, true) static uint wl_data_source_get_version(wl_data_source* wl_data_source) { 638 return wl_proxy_get_version(cast(wl_proxy*) wl_data_source); 639 } 640 pragma(inline, true) static void wl_data_source_offer(wl_data_source* wl_data_source, const(char)* mime_type) { 641 wl_proxy_marshal(cast(wl_proxy*) wl_data_source, 642 WL_DATA_SOURCE_OFFER, mime_type); 643 } 644 pragma(inline, true) static void wl_data_source_destroy(wl_data_source* wl_data_source) { 645 wl_proxy_marshal(cast(wl_proxy*) wl_data_source, 646 WL_DATA_SOURCE_DESTROY); 647 wl_proxy_destroy(cast(wl_proxy*) wl_data_source); 648 } 649 pragma(inline, true) static void wl_data_source_set_actions(wl_data_source* wl_data_source, uint dnd_actions) { 650 wl_proxy_marshal(cast(wl_proxy*) wl_data_source, 651 WL_DATA_SOURCE_SET_ACTIONS, dnd_actions); 652 } 653 enum wl_data_device_error { 654 WL_DATA_DEVICE_ERROR_ROLE = 0, 655 } 656 pragma(inline, true) static int wl_data_device_add_listener(wl_data_device* wl_data_device, const(wl_data_device_listener)* listener, void* data) { 657 return wl_proxy_add_listener(cast(wl_proxy*) wl_data_device, 658 cast(void function()) listener, data); 659 } 660 enum WL_DATA_DEVICE_START_DRAG = 0; 661 enum WL_DATA_DEVICE_SET_SELECTION = 1; 662 enum WL_DATA_DEVICE_RELEASE = 2; 663 enum WL_DATA_DEVICE_DATA_OFFER_SINCE_VERSION = 1; 664 enum WL_DATA_DEVICE_ENTER_SINCE_VERSION = 1; 665 enum WL_DATA_DEVICE_LEAVE_SINCE_VERSION = 1; 666 enum WL_DATA_DEVICE_MOTION_SINCE_VERSION = 1; 667 enum WL_DATA_DEVICE_DROP_SINCE_VERSION = 1; 668 enum WL_DATA_DEVICE_SELECTION_SINCE_VERSION = 1; 669 enum WL_DATA_DEVICE_START_DRAG_SINCE_VERSION = 1; 670 enum WL_DATA_DEVICE_SET_SELECTION_SINCE_VERSION = 1; 671 enum WL_DATA_DEVICE_RELEASE_SINCE_VERSION = 2; 672 pragma(inline, true) static void wl_data_device_set_user_data(wl_data_device* wl_data_device, void* user_data) { 673 wl_proxy_set_user_data(cast(wl_proxy*) wl_data_device, user_data); 674 } 675 pragma(inline, true) static void* wl_data_device_get_user_data(wl_data_device* wl_data_device) { 676 return wl_proxy_get_user_data(cast(wl_proxy*) wl_data_device); 677 } 678 pragma(inline, true) static uint wl_data_device_get_version(wl_data_device* wl_data_device) { 679 return wl_proxy_get_version(cast(wl_proxy*) wl_data_device); 680 } 681 pragma(inline, true) static void wl_data_device_destroy(wl_data_device* wl_data_device) { 682 wl_proxy_destroy(cast(wl_proxy*) wl_data_device); 683 } 684 pragma(inline, true) static void wl_data_device_start_drag(wl_data_device* wl_data_device, wl_data_source* source, wl_surface* origin, wl_surface* icon, uint serial) { 685 wl_proxy_marshal(cast(wl_proxy*) wl_data_device, 686 WL_DATA_DEVICE_START_DRAG, source, origin, icon, serial); 687 } 688 pragma(inline, true) static void wl_data_device_set_selection(wl_data_device* wl_data_device, wl_data_source* source, uint serial) { 689 wl_proxy_marshal(cast(wl_proxy*) wl_data_device, 690 WL_DATA_DEVICE_SET_SELECTION, source, serial); 691 } 692 pragma(inline, true) static void wl_data_device_release(wl_data_device* wl_data_device) { 693 wl_proxy_marshal(cast(wl_proxy*) wl_data_device, 694 WL_DATA_DEVICE_RELEASE); 695 wl_proxy_destroy(cast(wl_proxy*) wl_data_device); 696 } 697 enum wl_data_device_manager_dnd_action { 698 WL_DATA_DEVICE_MANAGER_DND_ACTION_NONE = 0, 699 WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY = 1, 700 WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE = 2, 701 WL_DATA_DEVICE_MANAGER_DND_ACTION_ASK = 4, 702 } 703 enum WL_DATA_DEVICE_MANAGER_CREATE_DATA_SOURCE = 0; 704 enum WL_DATA_DEVICE_MANAGER_GET_DATA_DEVICE = 1; 705 enum WL_DATA_DEVICE_MANAGER_CREATE_DATA_SOURCE_SINCE_VERSION = 1; 706 enum WL_DATA_DEVICE_MANAGER_GET_DATA_DEVICE_SINCE_VERSION = 1; 707 pragma(inline, true) static void wl_data_device_manager_set_user_data(wl_data_device_manager* wl_data_device_manager, void* user_data) { 708 wl_proxy_set_user_data(cast(wl_proxy*) wl_data_device_manager, user_data); 709 } 710 pragma(inline, true) static void* wl_data_device_manager_get_user_data(wl_data_device_manager* wl_data_device_manager) { 711 return wl_proxy_get_user_data(cast(wl_proxy*) wl_data_device_manager); 712 } 713 pragma(inline, true) static uint wl_data_device_manager_get_version(wl_data_device_manager* wl_data_device_manager) { 714 return wl_proxy_get_version(cast(wl_proxy*) wl_data_device_manager); 715 } 716 pragma(inline, true) static void wl_data_device_manager_destroy(wl_data_device_manager* wl_data_device_manager) { 717 wl_proxy_destroy(cast(wl_proxy*) wl_data_device_manager); 718 } 719 pragma(inline, true) static wl_data_source* wl_data_device_manager_create_data_source(wl_data_device_manager* wl_data_device_manager) { 720 wl_proxy* id; 721 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_data_device_manager, 722 WL_DATA_DEVICE_MANAGER_CREATE_DATA_SOURCE, &wl_data_source_interface, null); 723 return cast(wl_data_source*) id; 724 } 725 pragma(inline, true) static wl_data_device* wl_data_device_manager_get_data_device(wl_data_device_manager* wl_data_device_manager, wl_seat* seat) { 726 wl_proxy* id; 727 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_data_device_manager, 728 WL_DATA_DEVICE_MANAGER_GET_DATA_DEVICE, &wl_data_device_interface, null, seat); 729 return cast(wl_data_device*) id; 730 } 731 enum wl_shell_error { 732 WL_SHELL_ERROR_ROLE = 0, 733 } 734 enum WL_SHELL_GET_SHELL_SURFACE = 0; 735 enum WL_SHELL_GET_SHELL_SURFACE_SINCE_VERSION = 1; 736 pragma(inline, true) static void wl_shell_set_user_data(wl_shell* wl_shell, void* user_data) { 737 wl_proxy_set_user_data(cast(wl_proxy*) wl_shell, user_data); 738 } 739 pragma(inline, true) static void* wl_shell_get_user_data(wl_shell* wl_shell) { 740 return wl_proxy_get_user_data(cast(wl_proxy*) wl_shell); 741 } 742 pragma(inline, true) static uint wl_shell_get_version(wl_shell* wl_shell) { 743 return wl_proxy_get_version(cast(wl_proxy*) wl_shell); 744 } 745 pragma(inline, true) static void wl_shell_destroy(wl_shell* wl_shell) { 746 wl_proxy_destroy(cast(wl_proxy*) wl_shell); 747 } 748 pragma(inline, true) static wl_shell_surface* wl_shell_get_shell_surface(wl_shell* wl_shell, wl_surface* surface) { 749 wl_proxy* id; 750 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_shell, 751 WL_SHELL_GET_SHELL_SURFACE, &wl_shell_surface_interface, null, surface); 752 return cast(wl_shell_surface*) id; 753 } 754 enum /*wl_shell_surface_transient*/ { 755 WL_SHELL_SURFACE_TRANSIENT_INACTIVE = 0x1, 756 } 757 enum wl_shell_surface_fullscreen_method { 758 WL_SHELL_SURFACE_FULLSCREEN_METHOD_DEFAULT = 0, 759 WL_SHELL_SURFACE_FULLSCREEN_METHOD_SCALE = 1, 760 WL_SHELL_SURFACE_FULLSCREEN_METHOD_DRIVER = 2, 761 WL_SHELL_SURFACE_FULLSCREEN_METHOD_FILL = 3, 762 } 763 pragma(inline, true) static int wl_shell_surface_add_listener(wl_shell_surface* wl_shell_surface, const(wl_shell_surface_listener)* listener, void* data) { 764 return wl_proxy_add_listener(cast(wl_proxy*) wl_shell_surface, cast(void function()) listener, data); 765 } 766 enum WL_SHELL_SURFACE_PONG = 0; 767 enum WL_SHELL_SURFACE_MOVE = 1; 768 enum WL_SHELL_SURFACE_RESIZE = 2; 769 enum WL_SHELL_SURFACE_SET_TOPLEVEL = 3; 770 enum WL_SHELL_SURFACE_SET_TRANSIENT = 4; 771 enum WL_SHELL_SURFACE_SET_FULLSCREEN = 5; 772 enum WL_SHELL_SURFACE_SET_POPUP = 6; 773 enum WL_SHELL_SURFACE_SET_MAXIMIZED = 7; 774 enum WL_SHELL_SURFACE_SET_TITLE = 8; 775 enum WL_SHELL_SURFACE_SET_CLASS = 9; 776 enum WL_SHELL_SURFACE_PING_SINCE_VERSION = 1; 777 enum WL_SHELL_SURFACE_CONFIGURE_SINCE_VERSION = 1; 778 enum WL_SHELL_SURFACE_POPUP_DONE_SINCE_VERSION = 1; 779 enum WL_SHELL_SURFACE_PONG_SINCE_VERSION = 1; 780 enum WL_SHELL_SURFACE_MOVE_SINCE_VERSION = 1; 781 enum WL_SHELL_SURFACE_RESIZE_SINCE_VERSION = 1; 782 enum WL_SHELL_SURFACE_SET_TOPLEVEL_SINCE_VERSION = 1; 783 enum WL_SHELL_SURFACE_SET_TRANSIENT_SINCE_VERSION = 1; 784 enum WL_SHELL_SURFACE_SET_FULLSCREEN_SINCE_VERSION = 1; 785 enum WL_SHELL_SURFACE_SET_POPUP_SINCE_VERSION = 1; 786 enum WL_SHELL_SURFACE_SET_MAXIMIZED_SINCE_VERSION = 1; 787 enum WL_SHELL_SURFACE_SET_TITLE_SINCE_VERSION = 1; 788 enum WL_SHELL_SURFACE_SET_CLASS_SINCE_VERSION = 1; 789 790 pragma(inline, true) static void wl_shell_surface_set_user_data(wl_shell_surface* wl_shell_surface, void* user_data) { 791 wl_proxy_set_user_data(cast(wl_proxy*) wl_shell_surface, user_data); 792 } 793 pragma(inline, true) static void* wl_shell_surface_get_user_data(wl_shell_surface* wl_shell_surface) { 794 return wl_proxy_get_user_data(cast(wl_proxy*) wl_shell_surface); 795 } 796 pragma(inline, true) static uint wl_shell_surface_get_version(wl_shell_surface* wl_shell_surface) { 797 return wl_proxy_get_version(cast(wl_proxy*) wl_shell_surface); 798 } 799 pragma(inline, true) static void wl_shell_surface_destroy(wl_shell_surface* wl_shell_surface) { 800 wl_proxy_destroy(cast(wl_proxy*) wl_shell_surface); 801 } 802 pragma(inline, true) static void wl_shell_surface_pong(wl_shell_surface* wl_shell_surface, uint serial) { 803 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 804 WL_SHELL_SURFACE_PONG, serial); 805 } 806 pragma(inline, true) static void wl_shell_surface_move(wl_shell_surface* wl_shell_surface, wl_seat* seat, uint serial) { 807 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 808 WL_SHELL_SURFACE_MOVE, seat, serial); 809 } 810 pragma(inline, true) static void wl_shell_surface_resize(wl_shell_surface* wl_shell_surface, wl_seat* seat, uint serial, uint edges) { 811 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 812 WL_SHELL_SURFACE_RESIZE, seat, serial, edges); 813 } 814 pragma(inline, true) static void wl_shell_surface_set_toplevel(wl_shell_surface* wl_shell_surface) { 815 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, WL_SHELL_SURFACE_SET_TOPLEVEL); 816 } 817 pragma(inline, true) static void wl_shell_surface_set_transient(wl_shell_surface* wl_shell_surface, wl_surface* parent, int x, int y, uint flags) { 818 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 819 WL_SHELL_SURFACE_SET_TRANSIENT, parent, x, y, flags); 820 } 821 pragma(inline, true) static void wl_shell_surface_set_fullscreen(wl_shell_surface* wl_shell_surface, uint method, uint framerate, wl_output* output) { 822 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 823 WL_SHELL_SURFACE_SET_FULLSCREEN, method, framerate, output); 824 } 825 pragma(inline, true) static void wl_shell_surface_set_popup(wl_shell_surface* wl_shell_surface, wl_seat* seat, uint serial, wl_surface* parent, int x, int y, uint flags) { 826 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 827 WL_SHELL_SURFACE_SET_POPUP, seat, serial, parent, x, y, flags); 828 } 829 pragma(inline, true) static void wl_shell_surface_set_maximized(wl_shell_surface* wl_shell_surface, wl_output* output) { 830 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, WL_SHELL_SURFACE_SET_MAXIMIZED, output); 831 } 832 pragma(inline, true) static void wl_shell_surface_set_title(wl_shell_surface* wl_shell_surface, const(char)* title) { 833 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, WL_SHELL_SURFACE_SET_TITLE, title); 834 } 835 pragma(inline, true) static void wl_shell_surface_set_class(wl_shell_surface* wl_shell_surface, const(char)* class_) { 836 wl_proxy_marshal(cast(wl_proxy*) wl_shell_surface, 837 WL_SHELL_SURFACE_SET_CLASS, class_); 838 } 839 enum wl_surface_error { 840 WL_SURFACE_ERROR_INVALID_SCALE = 0, 841 WL_SURFACE_ERROR_INVALID_TRANSFORM = 1, 842 } 843 pragma(inline, true) static int wl_surface_add_listener(wl_surface* wl_surface, const(wl_surface_listener)* listener, void* data) { 844 return wl_proxy_add_listener(cast(wl_proxy*) wl_surface, cast(void function()) listener, data); 845 } 846 enum WL_SURFACE_DESTROY = 0; 847 enum WL_SURFACE_ATTACH = 1; 848 enum WL_SURFACE_DAMAGE = 2; 849 enum WL_SURFACE_FRAME = 3; 850 enum WL_SURFACE_SET_OPAQUE_REGION = 4; 851 enum WL_SURFACE_SET_INPUT_REGION = 5; 852 enum WL_SURFACE_COMMIT = 6; 853 enum WL_SURFACE_SET_BUFFER_TRANSFORM = 7; 854 enum WL_SURFACE_SET_BUFFER_SCALE = 8; 855 enum WL_SURFACE_DAMAGE_BUFFER = 9; 856 enum WL_SURFACE_ENTER_SINCE_VERSION = 1; 857 enum WL_SURFACE_LEAVE_SINCE_VERSION = 1; 858 enum WL_SURFACE_DESTROY_SINCE_VERSION = 1; 859 enum WL_SURFACE_ATTACH_SINCE_VERSION = 1; 860 enum WL_SURFACE_DAMAGE_SINCE_VERSION = 1; 861 enum WL_SURFACE_FRAME_SINCE_VERSION = 1; 862 enum WL_SURFACE_SET_OPAQUE_REGION_SINCE_VERSION = 1; 863 enum WL_SURFACE_SET_INPUT_REGION_SINCE_VERSION = 1; 864 enum WL_SURFACE_COMMIT_SINCE_VERSION = 1; 865 enum WL_SURFACE_SET_BUFFER_TRANSFORM_SINCE_VERSION = 2; 866 enum WL_SURFACE_SET_BUFFER_SCALE_SINCE_VERSION = 3; 867 enum WL_SURFACE_DAMAGE_BUFFER_SINCE_VERSION = 4; 868 869 pragma(inline, true) static void wl_surface_set_user_data(wl_surface* wl_surface, void* user_data) { 870 wl_proxy_set_user_data(cast(wl_proxy*) wl_surface, user_data); 871 } 872 pragma(inline, true) static void* wl_surface_get_user_data(wl_surface* wl_surface) { 873 return wl_proxy_get_user_data(cast(wl_proxy*) wl_surface); 874 } 875 pragma(inline, true) static uint wl_surface_get_version(wl_surface* wl_surface) { 876 return wl_proxy_get_version(cast(wl_proxy*) wl_surface); 877 } 878 pragma(inline, true) static void wl_surface_destroy(wl_surface* wl_surface) { 879 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 880 WL_SURFACE_DESTROY); 881 wl_proxy_destroy(cast(wl_proxy*) wl_surface); 882 } 883 pragma(inline, true) static void wl_surface_attach(wl_surface* wl_surface, wl_buffer* buffer, int x, int y) { 884 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 885 WL_SURFACE_ATTACH, buffer, x, y); 886 } 887 pragma(inline, true) static void wl_surface_damage(wl_surface* wl_surface, int x, int y, int width, int height) { 888 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 889 WL_SURFACE_DAMAGE, x, y, width, height); 890 } 891 pragma(inline, true) static wl_callback* wl_surface_frame(wl_surface* wl_surface) { 892 wl_proxy* callback; 893 callback = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_surface, 894 WL_SURFACE_FRAME, &wl_callback_interface, null); 895 return cast(wl_callback*) callback; 896 } 897 pragma(inline, true) static void wl_surface_set_opaque_region(wl_surface* wl_surface, wl_region* region) { 898 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 899 WL_SURFACE_SET_OPAQUE_REGION, region); 900 } 901 pragma(inline, true) static void wl_surface_set_input_region(wl_surface* wl_surface, wl_region* region) { 902 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 903 WL_SURFACE_SET_INPUT_REGION, region); 904 } 905 pragma(inline, true) static void wl_surface_commit(wl_surface* wl_surface) { 906 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 907 WL_SURFACE_COMMIT); 908 } 909 pragma(inline, true) static void wl_surface_set_buffer_transform(wl_surface* wl_surface, int transform) { 910 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 911 WL_SURFACE_SET_BUFFER_TRANSFORM, transform); 912 } 913 pragma(inline, true) static void wl_surface_set_buffer_scale(wl_surface* wl_surface, int scale) { 914 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 915 WL_SURFACE_SET_BUFFER_SCALE, scale); 916 } 917 pragma(inline, true) static void wl_surface_damage_buffer(wl_surface* wl_surface, int x, int y, int width, int height) { 918 wl_proxy_marshal(cast(wl_proxy*) wl_surface, 919 WL_SURFACE_DAMAGE_BUFFER, x, y, width, height); 920 } 921 pragma(inline, true) static int wl_seat_add_listener(wl_seat* wl_seat, const(wl_seat_listener)* listener, void* data) { 922 return wl_proxy_add_listener(cast(wl_proxy*) wl_seat, 923 cast(void function()) listener, data); 924 } 925 enum WL_SEAT_GET_POINTER = 0; 926 enum WL_SEAT_GET_KEYBOARD = 1; 927 enum WL_SEAT_GET_TOUCH = 2; 928 enum WL_SEAT_RELEASE = 3; 929 enum WL_SEAT_CAPABILITIES_SINCE_VERSION = 1; 930 enum WL_SEAT_NAME_SINCE_VERSION = 2; 931 enum WL_SEAT_GET_POINTER_SINCE_VERSION = 1; 932 enum WL_SEAT_GET_KEYBOARD_SINCE_VERSION = 1; 933 enum WL_SEAT_GET_TOUCH_SINCE_VERSION = 1; 934 enum WL_SEAT_RELEASE_SINCE_VERSION = 5; 935 936 pragma(inline, true) static void wl_seat_set_user_data(wl_seat* wl_seat, void* user_data) { 937 wl_proxy_set_user_data(cast(wl_proxy*) wl_seat, user_data); 938 } 939 pragma(inline, true) static void* wl_seat_get_user_data(wl_seat* wl_seat) { 940 return wl_proxy_get_user_data(cast(wl_proxy*) wl_seat); 941 } 942 pragma(inline, true) static uint wl_seat_get_version(wl_seat* wl_seat) { 943 return wl_proxy_get_version(cast(wl_proxy*) wl_seat); 944 } 945 946 pragma(inline, true) static void wl_seat_destroy(wl_seat* wl_seat) { 947 wl_proxy_destroy(cast(wl_proxy*) wl_seat); 948 } 949 pragma(inline, true) static wl_pointer* wl_seat_get_pointer(wl_seat* wl_seat) { 950 wl_proxy* id; 951 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_seat, 952 WL_SEAT_GET_POINTER, &wl_pointer_interface, null); 953 return cast(wl_pointer*) id; 954 } 955 pragma(inline, true) static wl_keyboard* wl_seat_get_keyboard(wl_seat* wl_seat) { 956 wl_proxy* id; 957 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_seat, 958 WL_SEAT_GET_KEYBOARD, &wl_keyboard_interface, null); 959 return cast(wl_keyboard*) id; 960 } 961 pragma(inline, true) static wl_touch* wl_seat_get_touch(wl_seat* wl_seat) { 962 wl_proxy* id; 963 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_seat, WL_SEAT_GET_TOUCH, &wl_touch_interface, null); 964 return cast(wl_touch*) id; 965 } 966 pragma(inline, true) static void wl_seat_release(wl_seat* wl_seat) { 967 wl_proxy_marshal(cast(wl_proxy*) wl_seat, WL_SEAT_RELEASE); 968 wl_proxy_destroy(cast(wl_proxy*) wl_seat); 969 } 970 enum wl_pointer_error { 971 WL_POINTER_ERROR_ROLE = 0, 972 } 973 enum wl_pointer_axis_source { 974 WL_POINTER_AXIS_SOURCE_WHEEL = 0, 975 WL_POINTER_AXIS_SOURCE_FINGER = 1, 976 WL_POINTER_AXIS_SOURCE_CONTINUOUS = 2, 977 } 978 pragma(inline, true) static int wl_pointer_add_listener(wl_pointer* wl_pointer, const(wl_pointer_listener)* listener, void* data) { 979 return wl_proxy_add_listener(cast(wl_proxy*) wl_pointer, cast(void function()) listener, data); 980 } 981 enum WL_POINTER_SET_CURSOR = 0; 982 enum WL_POINTER_RELEASE = 1; 983 enum WL_POINTER_ENTER_SINCE_VERSION = 1; 984 enum WL_POINTER_LEAVE_SINCE_VERSION = 1; 985 enum WL_POINTER_MOTION_SINCE_VERSION = 1; 986 enum WL_POINTER_BUTTON_SINCE_VERSION = 1; 987 enum WL_POINTER_AXIS_SINCE_VERSION = 1; 988 enum WL_POINTER_FRAME_SINCE_VERSION = 5; 989 enum WL_POINTER_AXIS_SOURCE_SINCE_VERSION = 5; 990 enum WL_POINTER_AXIS_STOP_SINCE_VERSION = 5; 991 enum WL_POINTER_AXIS_DISCRETE_SINCE_VERSION = 5; 992 enum WL_POINTER_SET_CURSOR_SINCE_VERSION = 1; 993 enum WL_POINTER_RELEASE_SINCE_VERSION = 3; 994 995 pragma(inline, true) static void wl_pointer_set_user_data(wl_pointer* wl_pointer, void* user_data) { 996 wl_proxy_set_user_data(cast(wl_proxy*) wl_pointer, user_data); 997 } 998 pragma(inline, true) static void* wl_pointer_get_user_data(wl_pointer* wl_pointer) { 999 return wl_proxy_get_user_data(cast(wl_proxy*) wl_pointer); 1000 } 1001 pragma(inline, true) static uint wl_pointer_get_version(wl_pointer* wl_pointer) { 1002 return wl_proxy_get_version(cast(wl_proxy*) wl_pointer); 1003 } 1004 pragma(inline, true) static void wl_pointer_destroy(wl_pointer* wl_pointer) { 1005 wl_proxy_destroy(cast(wl_proxy*) wl_pointer); 1006 } 1007 pragma(inline, true) static void wl_pointer_set_cursor(wl_pointer* wl_pointer, uint serial, wl_surface* surface, int hotspot_x, int hotspot_y) { 1008 wl_proxy_marshal(cast(wl_proxy*) wl_pointer, 1009 WL_POINTER_SET_CURSOR, serial, surface, hotspot_x, hotspot_y); 1010 } 1011 pragma(inline, true) static void wl_pointer_release(wl_pointer* wl_pointer) { 1012 wl_proxy_marshal(cast(wl_proxy*) wl_pointer, 1013 WL_POINTER_RELEASE); 1014 wl_proxy_destroy(cast(wl_proxy*) wl_pointer); 1015 } 1016 pragma(inline, true) static int wl_keyboard_add_listener(wl_keyboard* wl_keyboard, const(wl_keyboard_listener)* listener, void* data) { 1017 return wl_proxy_add_listener(cast(wl_proxy*) wl_keyboard, 1018 cast(void function()) listener, data); 1019 } 1020 enum WL_KEYBOARD_RELEASE = 0; 1021 enum WL_KEYBOARD_KEYMAP_SINCE_VERSION = 1; 1022 enum WL_KEYBOARD_ENTER_SINCE_VERSION = 1; 1023 enum WL_KEYBOARD_LEAVE_SINCE_VERSION = 1; 1024 enum WL_KEYBOARD_KEY_SINCE_VERSION = 1; 1025 enum WL_KEYBOARD_MODIFIERS_SINCE_VERSION = 1; 1026 enum WL_KEYBOARD_REPEAT_INFO_SINCE_VERSION = 4; 1027 enum WL_KEYBOARD_RELEASE_SINCE_VERSION = 3; 1028 1029 pragma(inline, true) static void wl_keyboard_set_user_data(wl_keyboard* wl_keyboard, void* user_data) { 1030 wl_proxy_set_user_data(cast(wl_proxy*) wl_keyboard, user_data); 1031 } 1032 1033 pragma(inline, true) static void* wl_keyboard_get_user_data(wl_keyboard* wl_keyboard) { 1034 return wl_proxy_get_user_data(cast(wl_proxy*) wl_keyboard); 1035 } 1036 pragma(inline, true) static uint wl_keyboard_get_version(wl_keyboard* wl_keyboard) { 1037 return wl_proxy_get_version(cast(wl_proxy*) wl_keyboard); 1038 } 1039 1040 pragma(inline, true) static void wl_keyboard_destroy(wl_keyboard* wl_keyboard) { 1041 wl_proxy_destroy(cast(wl_proxy*) wl_keyboard); 1042 } 1043 pragma(inline, true) static void wl_keyboard_release(wl_keyboard* wl_keyboard) { 1044 wl_proxy_marshal(cast(wl_proxy*) wl_keyboard, 1045 WL_KEYBOARD_RELEASE); 1046 wl_proxy_destroy(cast(wl_proxy*) wl_keyboard); 1047 } 1048 struct wl_touch_listener { 1049 void function(void* data, wl_touch* wl_touch, uint serial, uint time, wl_surface* surface, int id, wl_fixed_t x, wl_fixed_t y) down; 1050 void function(void* data, wl_touch* wl_touch, uint serial, uint time, int id) up; 1051 void function(void* data, wl_touch* wl_touch, uint time, int id, wl_fixed_t x, wl_fixed_t y) motion; 1052 void function(void* data, wl_touch* wl_touch) frame; 1053 void function(void* data, wl_touch* wl_touch) cancel; 1054 }; 1055 pragma(inline, true) static int wl_touch_add_listener(wl_touch* wl_touch, const(wl_touch_listener)* listener, void* data) { 1056 return wl_proxy_add_listener(cast(wl_proxy*) wl_touch, cast(void function()) listener, data); 1057 } 1058 enum WL_TOUCH_RELEASE = 0; 1059 enum WL_TOUCH_DOWN_SINCE_VERSION = 1; 1060 enum WL_TOUCH_UP_SINCE_VERSION = 1; 1061 enum WL_TOUCH_MOTION_SINCE_VERSION = 1; 1062 enum WL_TOUCH_FRAME_SINCE_VERSION = 1; 1063 enum WL_TOUCH_CANCEL_SINCE_VERSION = 1; 1064 enum WL_TOUCH_RELEASE_SINCE_VERSION = 3; 1065 1066 pragma(inline, true) static void wl_touch_set_user_data(wl_touch* wl_touch, void* user_data) { 1067 wl_proxy_set_user_data(cast(wl_proxy*) wl_touch, user_data); 1068 } 1069 1070 pragma(inline, true) static void* wl_touch_get_user_data(wl_touch* wl_touch) { 1071 return wl_proxy_get_user_data(cast(wl_proxy*) wl_touch); 1072 } 1073 pragma(inline, true) static uint wl_touch_get_version(wl_touch* wl_touch) { 1074 return wl_proxy_get_version(cast(wl_proxy*) wl_touch); 1075 } 1076 1077 pragma(inline, true) static void wl_touch_destroy(wl_touch* wl_touch) { 1078 wl_proxy_destroy(cast(wl_proxy*) wl_touch); 1079 } 1080 pragma(inline, true) static void wl_touch_release(wl_touch* wl_touch) { 1081 wl_proxy_marshal(cast(wl_proxy*) wl_touch, WL_TOUCH_RELEASE); 1082 wl_proxy_destroy(cast(wl_proxy*) wl_touch); 1083 } 1084 enum wl_output_subpixel { 1085 WL_OUTPUT_SUBPIXEL_UNKNOWN = 0, 1086 WL_OUTPUT_SUBPIXEL_NONE = 1, 1087 WL_OUTPUT_SUBPIXEL_HORIZONTAL_RGB = 2, 1088 WL_OUTPUT_SUBPIXEL_HORIZONTAL_BGR = 3, 1089 WL_OUTPUT_SUBPIXEL_VERTICAL_RGB = 4, 1090 WL_OUTPUT_SUBPIXEL_VERTICAL_BGR = 5, 1091 } 1092 enum wl_output_transform { 1093 WL_OUTPUT_TRANSFORM_NORMAL = 0, 1094 WL_OUTPUT_TRANSFORM_90 = 1, 1095 WL_OUTPUT_TRANSFORM_180 = 2, 1096 WL_OUTPUT_TRANSFORM_270 = 3, 1097 WL_OUTPUT_TRANSFORM_FLIPPED = 4, 1098 WL_OUTPUT_TRANSFORM_FLIPPED_90 = 5, 1099 WL_OUTPUT_TRANSFORM_FLIPPED_180 = 6, 1100 WL_OUTPUT_TRANSFORM_FLIPPED_270 = 7, 1101 } 1102 enum WL_OUTPUT_RELEASE = 0; 1103 enum WL_OUTPUT_GEOMETRY_SINCE_VERSION = 1; 1104 enum WL_OUTPUT_MODE_SINCE_VERSION = 1; 1105 enum WL_OUTPUT_DONE_SINCE_VERSION = 2; 1106 enum WL_OUTPUT_SCALE_SINCE_VERSION = 2; 1107 enum WL_OUTPUT_RELEASE_SINCE_VERSION = 3; 1108 1109 pragma(inline, true) static void wl_output_set_user_data(wl_output* wl_output, void* user_data) { 1110 wl_proxy_set_user_data(cast(wl_proxy*) wl_output, user_data); 1111 } 1112 pragma(inline, true) static void* wl_output_get_user_data(wl_output* wl_output) { 1113 return wl_proxy_get_user_data(cast(wl_proxy*) wl_output); 1114 } 1115 pragma(inline, true) static uint wl_output_get_version(wl_output* wl_output) { 1116 return wl_proxy_get_version(cast(wl_proxy*) wl_output); 1117 } 1118 pragma(inline, true) static void wl_output_release(wl_output* wl_output) { 1119 wl_proxy_marshal(cast(wl_proxy*) wl_output, WL_OUTPUT_RELEASE); 1120 wl_proxy_destroy(cast(wl_proxy*) wl_output); 1121 } 1122 enum WL_REGION_DESTROY = 0; 1123 enum WL_REGION_ADD = 1; 1124 enum WL_REGION_SUBTRACT = 2; 1125 enum WL_REGION_DESTROY_SINCE_VERSION = 1; 1126 enum WL_REGION_ADD_SINCE_VERSION = 1; 1127 enum WL_REGION_SUBTRACT_SINCE_VERSION = 1; 1128 1129 pragma(inline, true) static void wl_region_set_user_data(wl_region* wl_region, void* user_data) { 1130 wl_proxy_set_user_data(cast(wl_proxy*) wl_region, user_data); 1131 } 1132 1133 pragma(inline, true) static void* wl_region_get_user_data(wl_region* wl_region) { 1134 return wl_proxy_get_user_data(cast(wl_proxy*) wl_region); 1135 } 1136 pragma(inline, true) static uint wl_region_get_version(wl_region* wl_region) { 1137 return wl_proxy_get_version(cast(wl_proxy*) wl_region); 1138 } 1139 pragma(inline, true) static void wl_region_destroy(wl_region* wl_region) { 1140 wl_proxy_marshal(cast(wl_proxy*) wl_region, 1141 WL_REGION_DESTROY); 1142 wl_proxy_destroy(cast(wl_proxy*) wl_region); 1143 } 1144 pragma(inline, true) static void wl_region_add(wl_region* wl_region, int x, int y, int width, int height) { 1145 wl_proxy_marshal(cast(wl_proxy*) wl_region, 1146 WL_REGION_ADD, x, y, width, height); 1147 } 1148 pragma(inline, true) static void wl_region_subtract(wl_region* wl_region, int x, int y, int width, int height) { 1149 wl_proxy_marshal(cast(wl_proxy*) wl_region, 1150 WL_REGION_SUBTRACT, x, y, width, height); 1151 } 1152 enum wl_subcompositor_error { 1153 WL_SUBCOMPOSITOR_ERROR_BAD_SURFACE = 0, 1154 } 1155 enum WL_SUBCOMPOSITOR_DESTROY = 0; 1156 enum WL_SUBCOMPOSITOR_GET_SUBSURFACE = 1; 1157 enum WL_SUBCOMPOSITOR_DESTROY_SINCE_VERSION = 1; 1158 enum WL_SUBCOMPOSITOR_GET_SUBSURFACE_SINCE_VERSION = 1; 1159 1160 1161 pragma(inline, true) static void wl_subcompositor_set_user_data(wl_subcompositor* wl_subcompositor, void* user_data) { 1162 wl_proxy_set_user_data(cast(wl_proxy*) wl_subcompositor, user_data); 1163 } 1164 1165 1166 pragma(inline, true) static void* wl_subcompositor_get_user_data(wl_subcompositor* wl_subcompositor) { 1167 return wl_proxy_get_user_data(cast(wl_proxy*) wl_subcompositor); 1168 } 1169 pragma(inline, true) static uint wl_subcompositor_get_version(wl_subcompositor* wl_subcompositor) { 1170 return wl_proxy_get_version(cast(wl_proxy*) wl_subcompositor); 1171 } 1172 pragma(inline, true) static void wl_subcompositor_destroy(wl_subcompositor* wl_subcompositor) { 1173 wl_proxy_marshal(cast(wl_proxy*) wl_subcompositor, 1174 WL_SUBCOMPOSITOR_DESTROY); 1175 wl_proxy_destroy(cast(wl_proxy*) wl_subcompositor); 1176 } 1177 pragma(inline, true) static wl_subsurface* wl_subcompositor_get_subsurface(wl_subcompositor* wl_subcompositor, wl_surface* surface, wl_surface* parent) { 1178 wl_proxy* id; 1179 id = wl_proxy_marshal_constructor(cast(wl_proxy*) wl_subcompositor, 1180 WL_SUBCOMPOSITOR_GET_SUBSURFACE, &wl_subsurface_interface, null, surface, parent); 1181 return cast(wl_subsurface*) id; 1182 } 1183 enum wl_subsurface_error { 1184 WL_SUBSURFACE_ERROR_BAD_SURFACE = 0, 1185 } 1186 enum WL_SUBSURFACE_DESTROY = 0; 1187 enum WL_SUBSURFACE_SET_POSITION = 1; 1188 enum WL_SUBSURFACE_PLACE_ABOVE = 2; 1189 enum WL_SUBSURFACE_PLACE_BELOW = 3; 1190 enum WL_SUBSURFACE_SET_SYNC = 4; 1191 enum WL_SUBSURFACE_SET_DESYNC = 5; 1192 enum WL_SUBSURFACE_DESTROY_SINCE_VERSION = 1; 1193 enum WL_SUBSURFACE_SET_POSITION_SINCE_VERSION = 1; 1194 enum WL_SUBSURFACE_PLACE_ABOVE_SINCE_VERSION = 1; 1195 enum WL_SUBSURFACE_PLACE_BELOW_SINCE_VERSION = 1; 1196 enum WL_SUBSURFACE_SET_SYNC_SINCE_VERSION = 1; 1197 enum WL_SUBSURFACE_SET_DESYNC_SINCE_VERSION = 1; 1198 1199 pragma(inline, true) static void wl_subsurface_set_user_data(wl_subsurface* wl_subsurface, void* user_data) { 1200 wl_proxy_set_user_data(cast(wl_proxy*) wl_subsurface, user_data); 1201 } 1202 pragma(inline, true) static void* wl_subsurface_get_user_data(wl_subsurface* wl_subsurface) { 1203 return wl_proxy_get_user_data(cast(wl_proxy*) wl_subsurface); 1204 } 1205 pragma(inline, true) static uint wl_subsurface_get_version(wl_subsurface* wl_subsurface) { 1206 return wl_proxy_get_version(cast(wl_proxy*) wl_subsurface); 1207 } 1208 pragma(inline, true) static void wl_subsurface_destroy(wl_subsurface* wl_subsurface) { 1209 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, WL_SUBSURFACE_DESTROY); 1210 wl_proxy_destroy(cast(wl_proxy*) wl_subsurface); 1211 } 1212 pragma(inline, true) static void wl_subsurface_set_position(wl_subsurface* wl_subsurface, int x, int y) { 1213 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, 1214 WL_SUBSURFACE_SET_POSITION, x, y); 1215 } 1216 pragma(inline, true) static void wl_subsurface_place_above(wl_subsurface* wl_subsurface, wl_surface* sibling) { 1217 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, 1218 WL_SUBSURFACE_PLACE_ABOVE, sibling); 1219 } 1220 pragma(inline, true) static void wl_subsurface_place_below(wl_subsurface* wl_subsurface, wl_surface* sibling) { 1221 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, 1222 WL_SUBSURFACE_PLACE_BELOW, sibling); 1223 } 1224 pragma(inline, true) static void wl_subsurface_set_sync(wl_subsurface* wl_subsurface) { 1225 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, 1226 WL_SUBSURFACE_SET_SYNC); 1227 } 1228 pragma(inline, true) static void wl_subsurface_set_desync(wl_subsurface* wl_subsurface) { 1229 wl_proxy_marshal(cast(wl_proxy*) wl_subsurface, 1230 WL_SUBSURFACE_SET_DESYNC); 1231 }