comparison src/video/SDL_sysvideo.h @ 5169:4d39eeaad00b

Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface. The software renderer has been re-routed to use the framebuffer interface, which makes it possible to have software rendering available even on simple ports.
author Sam Lantinga <slouken@libsdl.org>
date Thu, 03 Feb 2011 15:49:37 -0800
parents 2b1989f59674
children b9cf75615028
comparison
equal deleted inserted replaced
5168:2b1989f59674 5169:4d39eeaad00b
78 78
79 SDL_VideoDisplay *display; 79 SDL_VideoDisplay *display;
80 80
81 SDL_DisplayMode fullscreen_mode; 81 SDL_DisplayMode fullscreen_mode;
82 82
83 SDL_Surface *surface;
84
83 SDL_WindowShaper *shaper; 85 SDL_WindowShaper *shaper;
84 86
85 SDL_WindowUserData *data; 87 SDL_WindowUserData *data;
86 88
87 void *driverdata; 89 void *driverdata;
188 void (*MaximizeWindow) (_THIS, SDL_Window * window); 190 void (*MaximizeWindow) (_THIS, SDL_Window * window);
189 void (*MinimizeWindow) (_THIS, SDL_Window * window); 191 void (*MinimizeWindow) (_THIS, SDL_Window * window);
190 void (*RestoreWindow) (_THIS, SDL_Window * window); 192 void (*RestoreWindow) (_THIS, SDL_Window * window);
191 void (*SetWindowGrab) (_THIS, SDL_Window * window); 193 void (*SetWindowGrab) (_THIS, SDL_Window * window);
192 void (*DestroyWindow) (_THIS, SDL_Window * window); 194 void (*DestroyWindow) (_THIS, SDL_Window * window);
193 195 int (*CreateWindowFramebuffer) (_THIS, SDL_Window * window, Uint32 * format, void ** pixels, int *pitch);
196 int (*UpdateWindowFramebuffer) (_THIS, SDL_Window * window, int numrects, SDL_Rect * rects);
197 void (*DestroyWindowFramebuffer) (_THIS, SDL_Window * window);
198
194 /* * * */ 199 /* * * */
195 /* 200 /*
196 * Shaped-window functions 201 * Shaped-window functions
197 */ 202 */
198 SDL_ShapeDriver shape_driver; 203 SDL_ShapeDriver shape_driver;
342 347
343 extern int SDL_RecreateWindow(SDL_Window * window, Uint32 flags); 348 extern int SDL_RecreateWindow(SDL_Window * window, Uint32 flags);
344 349
345 extern void SDL_OnWindowShown(SDL_Window * window); 350 extern void SDL_OnWindowShown(SDL_Window * window);
346 extern void SDL_OnWindowHidden(SDL_Window * window); 351 extern void SDL_OnWindowHidden(SDL_Window * window);
352 extern void SDL_OnWindowResized(SDL_Window * window);
347 extern void SDL_OnWindowMinimized(SDL_Window * window); 353 extern void SDL_OnWindowMinimized(SDL_Window * window);
348 extern void SDL_OnWindowRestored(SDL_Window * window); 354 extern void SDL_OnWindowRestored(SDL_Window * window);
349 extern void SDL_OnWindowFocusGained(SDL_Window * window); 355 extern void SDL_OnWindowFocusGained(SDL_Window * window);
350 extern void SDL_OnWindowFocusLost(SDL_Window * window); 356 extern void SDL_OnWindowFocusLost(SDL_Window * window);
351 extern SDL_Window * SDL_GetFocusWindow(void); 357 extern SDL_Window * SDL_GetFocusWindow(void);