comparison src/video/win32/SDL_win32shape.h @ 4813:5b4c7d7d8953

Wrote out the system for breaking shape-masks into quad-trees of rectangles, and added code to conglomerate those quad-trees of rectangles into regions for setting shapes under Win32.
author Eli Gottlieb <eligottlieb@gmail.com>
date Wed, 28 Jul 2010 23:35:24 -0400
parents 329708ffe2a7
children 0b918c186938
comparison
equal deleted inserted replaced
4812:06a03d08cefb 4813:5b4c7d7d8953
26 #define _SDL_win32shape_h 26 #define _SDL_win32shape_h
27 27
28 #include "SDL_video.h" 28 #include "SDL_video.h"
29 #include "SDL_shape.h" 29 #include "SDL_shape.h"
30 #include "../SDL_sysvideo.h" 30 #include "../SDL_sysvideo.h"
31 #include "../SDL_shape_internals.h"
31 32
32 typedef struct { 33 typedef struct {
33 void* shapebuffer; 34 SDL_ShapeTree *mask_tree;
34 Uint32 buffersize;
35 } SDL_ShapeData; 35 } SDL_ShapeData;
36 36
37 extern SDL_Window* Win32_CreateShapedWindow(const char *title,unsigned int x,unsigned int y,unsigned int w,unsigned int h,Uint32 flags);
38 extern SDL_WindowShaper* Win32_CreateShaper(SDL_Window * window); 37 extern SDL_WindowShaper* Win32_CreateShaper(SDL_Window * window);
39 extern int Win32_SetWindowShape(SDL_WindowShaper *shaper,SDL_Surface *shape,SDL_WindowShapeMode *shapeMode); 38 extern int Win32_SetWindowShape(SDL_WindowShaper *shaper,SDL_Surface *shape,SDL_WindowShapeMode *shapeMode);
40 extern int Win32_ResizeWindowShape(SDL_Window *window); 39 extern int Win32_ResizeWindowShape(SDL_Window *window);
41 40
42 #endif /* _SDL_win32shape_h */ 41 #endif /* _SDL_win32shape_h */