attached is a patch to support DirectFB in include/SDL_syswm.h. It
defines SDL_SYSWM_DIRECTFB as a subsystem. This allows developers to e.g. access DirectFB's video and picture providers. Kind regards, André
This commit is contained in:
parent
e2b5e8275b
commit
8e2a972b50
1 changed files with 27 additions and 1 deletions
|
@ -55,6 +55,7 @@ struct SDL_SysWMinfo;
|
|||
#else
|
||||
|
||||
/* This is the structure for custom window manager events */
|
||||
#if defined(SDL_VIDEO_DRIVER_X11) || defined(SDL_VIDEO_DRIVER_DIRECTFB)
|
||||
#if defined(SDL_VIDEO_DRIVER_X11)
|
||||
#if defined(__APPLE__) && defined(__MACH__)
|
||||
/* conflicts with Quickdraw.h */
|
||||
|
@ -69,12 +70,22 @@ struct SDL_SysWMinfo;
|
|||
#undef Cursor
|
||||
#endif
|
||||
|
||||
#endif /* defined(SDL_VIDEO_DRIVER_X11) */
|
||||
|
||||
#if defined(SDL_VIDEO_DRIVER_DIRECTFB)
|
||||
#include <directfb/directfb.h>
|
||||
#endif
|
||||
/**
|
||||
* These are the various supported subsystems under UNIX.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
SDL_SYSWM_X11
|
||||
#if defined(SDL_VIDEO_DRIVER_X11)
|
||||
SDL_SYSWM_X11,
|
||||
#endif
|
||||
#if defined(SDL_VIDEO_DRIVER_DIRECTFB)
|
||||
SDL_SYSWM_DIRECTFB,
|
||||
#endif
|
||||
} SDL_SYSWM_TYPE;
|
||||
|
||||
/**
|
||||
|
@ -86,7 +97,12 @@ struct SDL_SysWMmsg
|
|||
SDL_SYSWM_TYPE subsystem;
|
||||
union
|
||||
{
|
||||
#if defined(SDL_VIDEO_DRIVER_X11)
|
||||
XEvent xevent;
|
||||
#endif
|
||||
#if defined(SDL_VIDEO_DRIVER_DIRECTFB)
|
||||
DFBEvent dfb_event;
|
||||
#endif
|
||||
} event;
|
||||
};
|
||||
|
||||
|
@ -102,11 +118,21 @@ struct SDL_SysWMinfo
|
|||
SDL_SYSWM_TYPE subsystem;
|
||||
union
|
||||
{
|
||||
#if defined(SDL_VIDEO_DRIVER_X11)
|
||||
struct
|
||||
{
|
||||
Display *display; /**< The X11 display */
|
||||
Window window; /**< The X11 display window */
|
||||
} x11;
|
||||
#endif
|
||||
#if defined(SDL_VIDEO_DRIVER_DIRECTFB)
|
||||
struct
|
||||
{
|
||||
IDirectFB *dfb; /**< The directfb main interface */
|
||||
IDirectFBWindow *window; /**< The directfb window handle */
|
||||
IDirectFBSurface *surface; /**< The directfb client surface */
|
||||
} directfb;
|
||||
#endif
|
||||
} info;
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue