- add wglUseFontOutlines, wglUseFontBitmaps

- code ported (rearranged, simplified, fixed memory leaks, removed unneeded variables) from Mesa3D glDirect driver (c) SciTech Software, Inc
- more work needed but 3D text screen saver finally renders at least something

svn path=/trunk/; revision=43232
This commit is contained in:
Kamil Hornicek 2009-09-30 12:12:56 +00:00
parent 4127b55a9e
commit 6f17454af4
4 changed files with 1218 additions and 15 deletions

File diff suppressed because it is too large Load diff

View file

@ -40,6 +40,7 @@ extern "C" {
#include <ndk/ntndk.h>
#include <GL/gl.h>
#include <GL/glu.h>
/* gl function list */
#include "glfuncs.h"
@ -190,6 +191,14 @@ extern GLPROCESSDATA OPENGL32_processdata;
GLDRIVERDATA *OPENGL32_LoadICD( LPCWSTR driver );
BOOL OPENGL32_UnloadICD( GLDRIVERDATA *icd );
BOOL APIENTRY rosglMakeCurrent( HDC hdc, HGLRC hglrc );
BOOL APIENTRY IntUseFontBitmapsA( HDC hDC, DWORD first, DWORD count, DWORD listBase );
BOOL APIENTRY IntUseFontBitmapsW( HDC hDC, DWORD first, DWORD count, DWORD listBase );
BOOL APIENTRY IntUseFontOutlinesA( HDC hDC, DWORD first, DWORD count, DWORD listBase,
FLOAT chordalDeviation, FLOAT extrusion, INT format,
GLYPHMETRICSFLOAT *glyphMetricsFloatArray );
BOOL APIENTRY IntUseFontOutlinesW( HDC hDC, DWORD first, DWORD count, DWORD listBase,
FLOAT chordalDeviation, FLOAT extrusion, INT format,
GLYPHMETRICSFLOAT *glyphMetricsFloatArray );
/* empty gl functions from gl.c */
int WINAPI glEmptyFunc0( void );

View file

@ -5,7 +5,9 @@
<library>gdi32</library>
<library>user32</library>
<library>advapi32</library>
<library>glu32</library>
<pch>opengl32.h</pch>
<file>font.c</file>
<file>gl.c</file>
<file>opengl32.c</file>
<file>wgl.c</file>

View file

@ -1209,33 +1209,26 @@ rosglSwapLayerBuffers( HDC hdc, UINT fuPlanes )
BOOL
APIENTRY
rosglUseFontBitmapsA( HDC hdc, DWORD first, DWORD count, DWORD listBase )
rosglUseFontBitmapsA( HDC hdc, DWORD first, DWORD count, DWORD listBase )
{
UNIMPLEMENTED;
SetLastError( ERROR_CALL_NOT_IMPLEMENTED );
return FALSE;
return IntUseFontBitmapsA(hdc, first, count, listBase);
}
BOOL
APIENTRY
rosglUseFontBitmapsW( HDC hdc, DWORD first, DWORD count, DWORD listBase )
rosglUseFontBitmapsW( HDC hdc, DWORD first, DWORD count, DWORD listBase )
{
UNIMPLEMENTED;
SetLastError( ERROR_CALL_NOT_IMPLEMENTED );
return FALSE;
return IntUseFontBitmapsW(hdc, first, count, listBase);
}
BOOL
APIENTRY
rosglUseFontOutlinesA( HDC hdc, DWORD first, DWORD count, DWORD listBase,
FLOAT deviation, FLOAT extrusion, int format,
GLYPHMETRICSFLOAT *pgmf )
{
UNIMPLEMENTED;
SetLastError( ERROR_CALL_NOT_IMPLEMENTED );
return FALSE;
return IntUseFontOutlinesA(hdc, first, count, listBase, deviation, extrusion, format, pgmf);
}
@ -1245,9 +1238,7 @@ rosglUseFontOutlinesW( HDC hdc, DWORD first, DWORD count, DWORD listBase,
FLOAT deviation, FLOAT extrusion, int format,
GLYPHMETRICSFLOAT *pgmf )
{
UNIMPLEMENTED;
SetLastError( ERROR_CALL_NOT_IMPLEMENTED );
return FALSE;
return IntUseFontOutlinesW(hdc, first, count, listBase, deviation, extrusion, format, pgmf);
}
#ifdef __cplusplus