diff --git a/include/Mw/OpenGL.h b/include/Mw/OpenGL.h index 64270f1..3b5a652 100644 --- a/include/Mw/OpenGL.h +++ b/include/Mw/OpenGL.h @@ -24,6 +24,14 @@ MWDECL MwClass MwOpenGLClass; */ MWDECL void MwOpenGLMakeCurrent(MwWidget handle); +/*! + * %brief Get a procedure from OpenGL + * %param handle Widget + * %param name Name + * %return Procedure + */ +MWDECL void* MwOpenGLGetProcAddress(MwWidget handle, const char* name); + /*! * %brief Swaps the buffer of OpenGL context * %param handle Widget diff --git a/src/opengl.c b/src/opengl.c index b63c3b3..1976bc8 100644 --- a/src/opengl.c +++ b/src/opengl.c @@ -99,3 +99,15 @@ void MwOpenGLSwapBuffer(MwWidget handle) { glXSwapBuffers(handle->lowlevel->display, handle->lowlevel->window); #endif } + +void* MwOpenGLGetProcAddress(MwWidget handle, const char* name) { +#ifdef _WIN32 + (void)handle; + + return wglGetProcAddress(name); +#else + (void)handle; + + return glXGetProcAddress((const GLubyte*)name); +#endif +}