1 | /* |
2 | Copyright (C) 1997-2021 Sam Lantinga <slouken@libsdl.org> |
3 | |
4 | This software is provided 'as-is', without any express or implied |
5 | warranty. In no event will the authors be held liable for any damages |
6 | arising from the use of this software. |
7 | |
8 | Permission is granted to anyone to use this software for any purpose, |
9 | including commercial applications, and to alter it and redistribute it |
10 | freely. |
11 | */ |
12 | |
13 | /* Definitions for platform dependent windowing functions to test SDL |
14 | integration with native windows |
15 | */ |
16 | |
17 | #include "SDL.h" |
18 | |
19 | /* This header includes all the necessary system headers for native windows */ |
20 | #include "SDL_syswm.h" |
21 | |
22 | typedef struct |
23 | { |
24 | const char *tag; |
25 | void *(*CreateNativeWindow) (int w, int h); |
26 | void (*DestroyNativeWindow) (void *window); |
27 | } NativeWindowFactory; |
28 | |
29 | #ifdef SDL_VIDEO_DRIVER_WINDOWS |
30 | #define TEST_NATIVE_WINDOWS |
31 | extern NativeWindowFactory WindowsWindowFactory; |
32 | #endif |
33 | |
34 | #ifdef SDL_VIDEO_DRIVER_X11 |
35 | #define TEST_NATIVE_X11 |
36 | extern NativeWindowFactory X11WindowFactory; |
37 | #endif |
38 | |
39 | #ifdef SDL_VIDEO_DRIVER_COCOA |
40 | /* Actually, we don't really do this, since it involves adding Objective C |
41 | support to the build system, which is a little tricky. You can uncomment |
42 | it manually though and link testnativecocoa.m into the test application. |
43 | */ |
44 | #define TEST_NATIVE_COCOA |
45 | extern NativeWindowFactory CocoaWindowFactory; |
46 | #endif |
47 | |
48 | #ifdef SDL_VIDEO_DRIVER_OS2 |
49 | #define TEST_NATIVE_OS2 |
50 | extern NativeWindowFactory OS2WindowFactory; |
51 | #endif |
52 | |