comparison src/video/directfb/SDL_DirectFB_video.h @ 2721:e82a0e3e9b0e

Date: Sun, 20 Jul 2008 22:34:37 +0200 From: Couriersud Subject: Updated DirectFB driver for SDL1.3 please find attached a patch for an updated directfb driver for SDL1.3. It does now - properly supported the new input api. - send unicode text events - support directfb windows - support multiple screens - support hardware YUV scaling for the first YUV texture created. - support hardware scaling for textures. - properly interpret streaming access - support software opengl if one manages to install the mesa directfb driver (broken/not broken in mesa svn) Within bugzilla (http://bugzilla.libsdl.org/show_bug.cgi?id=603) there is another patch which fixes a crash due to GL context creation. Kind regards, couriersud
author Sam Lantinga <slouken@libsdl.org>
date Tue, 26 Aug 2008 02:32:45 +0000
parents 0e70b4b8cf84
children 140a7edcf2bd
comparison
equal deleted inserted replaced
2720:4eb759edddf5 2721:e82a0e3e9b0e
112 112
113 struct _DFB_DisplayData 113 struct _DFB_DisplayData
114 { 114 {
115 IDirectFBDisplayLayer *layer; 115 IDirectFBDisplayLayer *layer;
116 DFBSurfacePixelFormat pixelformat; 116 DFBSurfacePixelFormat pixelformat;
117 //FIXME: support for multiple layer ...
117 DFBDisplayLayerID vidID; 118 DFBDisplayLayerID vidID;
119
120 int vidIDinuse;
118 121
119 int cw; 122 int cw;
120 int ch; 123 int ch;
121 124
122 int nummodes; 125 int nummodes;
137 IDirectFBPalette *palette; 140 IDirectFBPalette *palette;
138 IDirectFBWindow *window; 141 IDirectFBWindow *window;
139 IDirectFBGL *gl_context; 142 IDirectFBGL *gl_context;
140 IDirectFBEventBuffer *eventbuffer; 143 IDirectFBEventBuffer *eventbuffer;
141 DFBWindowID windowID; 144 DFBWindowID windowID;
142 int id; // SDL window id 145 int id; /* SDL window id */
143 DFB_WindowData *next; 146 DFB_WindowData *next;
144 u8 opacity; 147 Uint8 opacity;
145 }; 148 };
146 149
147 typedef struct _DFB_DeviceData DFB_DeviceData; 150 typedef struct _DFB_DeviceData DFB_DeviceData;
148 struct _DFB_DeviceData 151 struct _DFB_DeviceData
149 { 152 {
150 int initialized; 153 int initialized;
151 154
152 IDirectFB *dfb; 155 IDirectFB *dfb;
153 int mouse; 156 int mouse;
154 int keyboard; 157 int keyboard;
158 int kbdgeneric;
155 DFB_WindowData *firstwin; 159 DFB_WindowData *firstwin;
156 160
157 int numscreens; 161 int numscreens;
158 DFBScreenID screenid[DFB_MAX_SCREENS]; 162 DFBScreenID screenid[DFB_MAX_SCREENS];
159 DFBDisplayLayerID gralayer[DFB_MAX_SCREENS]; 163 DFBDisplayLayerID gralayer[DFB_MAX_SCREENS];
160 DFBDisplayLayerID vidlayer[DFB_MAX_SCREENS]; 164 DFBDisplayLayerID vidlayer[DFB_MAX_SCREENS];
161 165
162 // auxiliary integer for callbacks 166 int aux; /* auxiliary integer for callbacks */
163 int aux;
164 167
165 // OpenGL 168 /* OpenGL */
166 void (*glFinish) (void); 169 void (*glFinish) (void);
167 void (*glFlush) (void); 170 void (*glFlush) (void);
168 }; 171 };
169 172
170 struct SDL_GLDriverData 173 struct SDL_GLDriverData