Mercurial > sdl-ios-xcode
diff src/video/directfb/SDL_DirectFB_window.h @ 5202:164f20ba08eb
Updated the DirectFB support, from Couriersud
attached is a working directfb driver diff which works with the current
changes. There are a number of changes around it as well, e.g.
configure.in.
The directfb renderdriver right now still depends on a some "includes"
from src/video/directfb. That's why it is not yet moved to the new
render folder.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 05 Feb 2011 16:07:10 -0800 |
parents | b196d2758026 |
children | b530ef003506 |
line wrap: on
line diff
--- a/src/video/directfb/SDL_DirectFB_window.h Sat Feb 05 16:02:30 2011 -0800 +++ b/src/video/directfb/SDL_DirectFB_window.h Sat Feb 05 16:07:10 2011 -0800 @@ -18,12 +18,15 @@ Sam Lantinga slouken@libsdl.org + + SDL1.3 DirectFB driver by couriersud@arcor.de + */ -#include "SDL_config.h" #ifndef _SDL_directfb_window_h #define _SDL_directfb_window_h +#include "SDL_DirectFB_video.h" #include "SDL_DirectFB_WM.h" #define SDL_DFB_WINDOWDATA(win) DFB_WindowData *windata = ((win) ? (DFB_WindowData *) ((win)->driverdata) : NULL) @@ -31,22 +34,28 @@ typedef struct _DFB_WindowData DFB_WindowData; struct _DFB_WindowData { - IDirectFBSurface *surface; - IDirectFBSurface *window_surface; /* only used with has_own_wm */ - IDirectFBWindow *window; - IDirectFBEventBuffer *eventbuffer; - SDL_Window *sdl_window; - DFB_WindowData *next; - Uint8 opacity; - DFBRectangle client; - DFBDimension size; + IDirectFBSurface *window_surface; /* window surface */ + IDirectFBSurface *surface; /* client drawing surface */ + IDirectFBWindow *dfbwin; + IDirectFBEventBuffer *eventbuffer; + //SDL_Window *sdlwin; + SDL_Window *next; + Uint8 opacity; + DFBRectangle client; + DFBDimension size; + DFBRectangle restore; + /* WM extras */ - DFBRectangle restore; - int is_managed; - int wm_needs_redraw; - IDirectFBSurface *icon; - IDirectFBFont *font; - DFB_Theme theme; + int is_managed; + int wm_needs_redraw; + IDirectFBSurface *icon; + IDirectFBFont *font; + DFB_Theme theme; + + /* WM moving and sizing */ + int wm_grab; + int wm_lastx; + int wm_lasty; }; extern int DirectFB_CreateWindow(_THIS, SDL_Window * window); @@ -69,7 +78,7 @@ extern SDL_bool DirectFB_GetWindowWMInfo(_THIS, SDL_Window * window, struct SDL_SysWMinfo *info); -//extern void DirectFB_AdjustWindowSurface(_THIS, SDL_Window * window); +extern void DirectFB_AdjustWindowSurface(SDL_Window * window); #endif /* _SDL_directfb_window_h */