Alexandre, please do NOT commit this...
The separation of GL calls from DDraw will be part of the D3D core work and not via the usage of funtion pointers. Basically, we will have a d3dcore library linked to OpenGL and if DDraw fails to load it (for example if GL is not present on the system), DDraw will not support D3D.
Mike, next time ask on IRC before doing a big patch like this on DDraw / D3D (or ask on the wine-d3d mailing list, it will add to its activity :-) ).
Lionel