Moving the source code files from 'src' to 'src/Common' as a first step towards separ...
[freeglut] / src / freeglut_ext.c
diff --git a/src/freeglut_ext.c b/src/freeglut_ext.c
deleted file mode 100644 (file)
index d8aca45..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * freeglut_ext.c
- *
- * Functions related to OpenGL extensions.
- *
- * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved.
- * Written by Pawel W. Olszta, <olszta@sourceforge.net>
- * Creation date: Thu Dec 9 1999
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
- * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-#define GLX_GLXEXT_PROTOTYPES
-#include <GL/freeglut.h>
-#include "freeglut_internal.h"
-
-static GLUTproc fghGetGLUTProcAddress( const char* procName )
-{
-    /* optimization: quick initial check */
-    if( strncmp( procName, "glut", 4 ) != 0 )
-        return NULL;
-
-#define CHECK_NAME(x) if( strcmp( procName, #x ) == 0) return (GLUTproc)x;
-    CHECK_NAME(glutInit);
-    CHECK_NAME(glutInitDisplayMode);
-    CHECK_NAME(glutInitDisplayString);
-    CHECK_NAME(glutInitWindowPosition);
-    CHECK_NAME(glutInitWindowSize);
-    CHECK_NAME(glutMainLoop);
-    CHECK_NAME(glutExit);
-    CHECK_NAME(glutCreateWindow);
-    CHECK_NAME(glutCreateSubWindow);
-    CHECK_NAME(glutDestroyWindow);
-    CHECK_NAME(glutPostRedisplay);
-    CHECK_NAME(glutPostWindowRedisplay);
-    CHECK_NAME(glutSwapBuffers);
-    CHECK_NAME(glutGetWindow);
-    CHECK_NAME(glutSetWindow);
-    CHECK_NAME(glutSetWindowTitle);
-    CHECK_NAME(glutSetIconTitle);
-    CHECK_NAME(glutPositionWindow);
-    CHECK_NAME(glutReshapeWindow);
-    CHECK_NAME(glutPopWindow);
-    CHECK_NAME(glutPushWindow);
-    CHECK_NAME(glutIconifyWindow);
-    CHECK_NAME(glutShowWindow);
-    CHECK_NAME(glutHideWindow);
-    CHECK_NAME(glutFullScreen);
-    CHECK_NAME(glutSetCursor);
-    CHECK_NAME(glutWarpPointer);
-    CHECK_NAME(glutEstablishOverlay);
-    CHECK_NAME(glutRemoveOverlay);
-    CHECK_NAME(glutUseLayer);
-    CHECK_NAME(glutPostOverlayRedisplay);
-    CHECK_NAME(glutPostWindowOverlayRedisplay);
-    CHECK_NAME(glutShowOverlay);
-    CHECK_NAME(glutHideOverlay);
-    CHECK_NAME(glutCreateMenu);
-    CHECK_NAME(glutDestroyMenu);
-    CHECK_NAME(glutGetMenu);
-    CHECK_NAME(glutSetMenu);
-    CHECK_NAME(glutAddMenuEntry);
-    CHECK_NAME(glutAddSubMenu);
-    CHECK_NAME(glutChangeToMenuEntry);
-    CHECK_NAME(glutChangeToSubMenu);
-    CHECK_NAME(glutRemoveMenuItem);
-    CHECK_NAME(glutAttachMenu);
-    CHECK_NAME(glutDetachMenu);
-    CHECK_NAME(glutDisplayFunc);
-    CHECK_NAME(glutReshapeFunc);
-    CHECK_NAME(glutKeyboardFunc);
-    CHECK_NAME(glutMouseFunc);
-    CHECK_NAME(glutMultiEntryFunc);
-    CHECK_NAME(glutMultiMotionFunc);
-    CHECK_NAME(glutMultiButtonFunc);
-    CHECK_NAME(glutMultiPassiveFunc);
-    CHECK_NAME(glutMotionFunc);
-    CHECK_NAME(glutPassiveMotionFunc);
-    CHECK_NAME(glutEntryFunc);
-    CHECK_NAME(glutVisibilityFunc);
-    CHECK_NAME(glutIdleFunc);
-    CHECK_NAME(glutTimerFunc);
-    CHECK_NAME(glutMenuStateFunc);
-    CHECK_NAME(glutSpecialFunc);
-    CHECK_NAME(glutSpaceballMotionFunc);
-    CHECK_NAME(glutSpaceballRotateFunc);
-    CHECK_NAME(glutSpaceballButtonFunc);
-    CHECK_NAME(glutButtonBoxFunc);
-    CHECK_NAME(glutDialsFunc);
-    CHECK_NAME(glutTabletMotionFunc);
-    CHECK_NAME(glutTabletButtonFunc);
-    CHECK_NAME(glutMenuStatusFunc);
-    CHECK_NAME(glutOverlayDisplayFunc);
-    CHECK_NAME(glutWindowStatusFunc);
-    CHECK_NAME(glutKeyboardUpFunc);
-    CHECK_NAME(glutSpecialUpFunc);
-#if !defined(_WIN32_WCE)
-    CHECK_NAME(glutJoystickFunc);
-#endif /* !defined(_WIN32_WCE) */
-    CHECK_NAME(glutSetColor);
-    CHECK_NAME(glutGetColor);
-    CHECK_NAME(glutCopyColormap);
-    CHECK_NAME(glutGet);
-    CHECK_NAME(glutDeviceGet);
-    CHECK_NAME(glutExtensionSupported);
-    CHECK_NAME(glutGetModifiers);
-    CHECK_NAME(glutLayerGet);
-    CHECK_NAME(glutBitmapCharacter);
-    CHECK_NAME(glutBitmapWidth);
-    CHECK_NAME(glutStrokeCharacter);
-    CHECK_NAME(glutStrokeWidth);
-    CHECK_NAME(glutBitmapLength);
-    CHECK_NAME(glutStrokeLength);
-    CHECK_NAME(glutWireSphere);
-    CHECK_NAME(glutSolidSphere);
-    CHECK_NAME(glutWireCone);
-    CHECK_NAME(glutSolidCone);
-    CHECK_NAME(glutWireCube);
-    CHECK_NAME(glutSolidCube);
-    CHECK_NAME(glutWireTorus);
-    CHECK_NAME(glutSolidTorus);
-    CHECK_NAME(glutWireDodecahedron);
-    CHECK_NAME(glutSolidDodecahedron);
-    CHECK_NAME(glutWireTeapot);
-    CHECK_NAME(glutSolidTeapot);
-    CHECK_NAME(glutWireOctahedron);
-    CHECK_NAME(glutSolidOctahedron);
-    CHECK_NAME(glutWireTetrahedron);
-    CHECK_NAME(glutSolidTetrahedron);
-    CHECK_NAME(glutWireIcosahedron);
-    CHECK_NAME(glutSolidIcosahedron);
-    CHECK_NAME(glutVideoResizeGet);
-    CHECK_NAME(glutSetupVideoResizing);
-    CHECK_NAME(glutStopVideoResizing);
-    CHECK_NAME(glutVideoResize);
-    CHECK_NAME(glutVideoPan);
-    CHECK_NAME(glutReportErrors);
-    CHECK_NAME(glutIgnoreKeyRepeat);
-    CHECK_NAME(glutSetKeyRepeat);
-#if !defined(_WIN32_WCE)
-    CHECK_NAME(glutForceJoystickFunc);
-    CHECK_NAME(glutGameModeString);
-    CHECK_NAME(glutEnterGameMode);
-    CHECK_NAME(glutLeaveGameMode);
-    CHECK_NAME(glutGameModeGet);
-#endif /* !defined(_WIN32_WCE) */
-    /* freeglut extensions */
-    CHECK_NAME(glutMainLoopEvent);
-    CHECK_NAME(glutLeaveMainLoop);
-    CHECK_NAME(glutCloseFunc);
-    CHECK_NAME(glutWMCloseFunc);
-    CHECK_NAME(glutMenuDestroyFunc);
-    CHECK_NAME(glutFullScreenToggle);
-    CHECK_NAME(glutLeaveFullScreen);
-    CHECK_NAME(glutSetOption);
-    CHECK_NAME(glutGetModeValues);
-    CHECK_NAME(glutSetWindowData);
-    CHECK_NAME(glutGetWindowData);
-    CHECK_NAME(glutSetMenuData);
-    CHECK_NAME(glutGetMenuData);
-    CHECK_NAME(glutBitmapHeight);
-    CHECK_NAME(glutStrokeHeight);
-    CHECK_NAME(glutBitmapString);
-    CHECK_NAME(glutStrokeString);
-    CHECK_NAME(glutWireRhombicDodecahedron);
-    CHECK_NAME(glutSolidRhombicDodecahedron);
-    CHECK_NAME(glutWireSierpinskiSponge);
-    CHECK_NAME(glutSolidSierpinskiSponge);
-    CHECK_NAME(glutWireCylinder);
-    CHECK_NAME(glutSolidCylinder);
-    CHECK_NAME(glutGetProcAddress);
-    CHECK_NAME(glutMouseWheelFunc);
-    CHECK_NAME(glutJoystickGetNumAxes);
-    CHECK_NAME(glutJoystickGetNumButtons);
-    CHECK_NAME(glutJoystickNotWorking);
-    CHECK_NAME(glutJoystickGetDeadBand);
-    CHECK_NAME(glutJoystickSetDeadBand);
-    CHECK_NAME(glutJoystickGetSaturation);
-    CHECK_NAME(glutJoystickSetSaturation);
-    CHECK_NAME(glutJoystickSetMinRange);
-    CHECK_NAME(glutJoystickSetMaxRange);
-    CHECK_NAME(glutJoystickSetCenter);
-    CHECK_NAME(glutJoystickGetMinRange);
-    CHECK_NAME(glutJoystickGetMaxRange);
-    CHECK_NAME(glutJoystickGetCenter);
-    CHECK_NAME(glutInitContextVersion);
-    CHECK_NAME(glutInitContextFlags);
-    CHECK_NAME(glutInitContextProfile);
-    CHECK_NAME(glutInitErrorFunc);
-    CHECK_NAME(glutInitWarningFunc);
-#undef CHECK_NAME
-
-    return NULL;
-}
-
-
-SFG_Proc fghGetProcAddress( const char *procName )
-{
-#if TARGET_HOST_MS_WINDOWS
-    return (SFG_Proc)wglGetProcAddress( ( LPCSTR )procName );
-#elif TARGET_HOST_POSIX_X11 && defined( GLX_ARB_get_proc_address )
-    return (SFG_Proc)glXGetProcAddressARB( ( const GLubyte * )procName );
-#else
-    return NULL;
-#endif
-}
-
-
-GLUTproc FGAPIENTRY
-glutGetProcAddress( const char *procName )
-{
-    GLUTproc p;
-    FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetProcAddress" );
-
-    /* Try GLUT functions first, then core GL functions */
-    p = fghGetGLUTProcAddress( procName );
-    return ( p != NULL ) ? p : fghGetProcAddress( procName );
-}