X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=freeglut-1.3%2Ffreeglut_misc.c;fp=freeglut-1.3%2Ffreeglut_misc.c;h=0000000000000000000000000000000000000000;hb=0f383e3d13b0f62aa4a8e34c2ad5a3a2c8aabd71;hp=496ca4550e36cfd95f3f8aba5039673ba5471ccd;hpb=9b5ed2940eac112c894bb43f802fbda5b1c8b27a;p=freeglut diff --git a/freeglut-1.3/freeglut_misc.c b/freeglut-1.3/freeglut_misc.c deleted file mode 100644 index 496ca45..0000000 --- a/freeglut-1.3/freeglut_misc.c +++ /dev/null @@ -1,244 +0,0 @@ -/* - * freeglut_misc.c - * - * Functions that didn't fit anywhere else... - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * 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. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#define G_LOG_DOMAIN "freeglut-misc" - -#include "../include/GL/freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * glutSetColor() -- - * glutGetColor() -- - * glutCopyColormap() -- - * glutSetKeyRepeat() -- this is evil and should be removed from API - */ - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * This functions checks if an OpenGL extension is supported or not - */ -int FGAPIENTRY glutExtensionSupported( const char* extension ) -{ - const char *extensions; - const char *ptr; - int len = strlen ( extension ) ; - - /* - * Make sure there is a current window, and thus -- a current context available - */ - freeglut_assert_ready; - freeglut_return_val_if_fail( fgStructure.Window != NULL, 0 ); - - /* - * Note it is safe to query the extensions - */ - extensions = glGetString(GL_EXTENSIONS); - - freeglut_return_val_if_fail( extensions != NULL, 0 ); - - /* - * Check if the extension itself looks valid - */ - if ( strchr ( extension, ' ' ) != NULL ) - return( 0 ); - - /* - * Look for our extension - */ - for (ptr = extensions; *ptr;) - { - /* - * Is it the current extension? - */ - if ( strncmp ( extension, extensions, len ) == 0 ) - return 1 ; - - /* - * No, go find the next extension. They are separated from each other by one or more blank spaces. - */ - ptr = strchr ( ptr + len, ' ' ) ; - - /* - * If we ran off the end of the "extensions" character string, we didn't find it. Return failure. - */ - if ( !ptr ) return 0 ; - - while ( *ptr == ' ' ) - ptr++ ; - } - - return 0 ; -} - -/* - * This function reports all the OpenGL errors that happened till now - */ -void FGAPIENTRY glutReportErrors( void ) -{ - GLenum error = glGetError(); - - /* - * Keep reporting errors as long as there are any... - */ - while( error != GL_NO_ERROR ) - { - /* - * Print the current error - */ -# undef G_LOG_DOMAIN -# define G_LOG_DOMAIN ((gchar *) 0) - - fgWarning( "GL error: %s", gluErrorString( error ) ); - -# undef G_LOG_DOMAIN -# define G_LOG_DOMAIN "freeglut_misc.c" - - /* - * Grab the next error value - */ - error = glGetError(); - }; -} - -/* - * Turns the ignore key auto repeat feature on and off - */ -void FGAPIENTRY glutIgnoreKeyRepeat( int ignore ) /* DEPRECATED 11/4/02 - Do not use */ -{ - /* - * This is simple and not damaging... - */ - fgState.IgnoreKeyRepeat = ignore ? TRUE : FALSE; -} - -/* - * Hints the window system whether to generate key auto repeat, or not. This is evil. - */ -void FGAPIENTRY glutSetKeyRepeat( int repeatMode ) -{ -#if TARGET_HOST_UNIX_X11 - - freeglut_assert_ready; - - /* - * This is really evil, but let's have this done. - */ - switch( repeatMode ) - { - case GLUT_KEY_REPEAT_OFF: XAutoRepeatOff( fgDisplay.Display ); break; - case GLUT_KEY_REPEAT_ON: XAutoRepeatOn( fgDisplay.Display ); break; - case GLUT_KEY_REPEAT_DEFAULT: - { - XKeyboardState keyboardState; - - /* - * Query the current keyboard state - */ - XGetKeyboardControl( fgDisplay.Display, &keyboardState ); - - /* - * Set the auto key repeat basing on the global settings - */ - glutSetKeyRepeat( - keyboardState.global_auto_repeat == AutoRepeatModeOn ? - GLUT_KEY_REPEAT_ON : GLUT_KEY_REPEAT_OFF - ); - } - break; - - default: - /* - * Whoops, this was not expected at all - */ - break; - } - -#endif -} - -/* - * Forces the joystick callback to be executed - */ -void FGAPIENTRY glutForceJoystickFunc( void ) -{ - freeglut_assert_ready; - - /* - * Is there a current window selected? - */ - freeglut_return_if_fail( fgStructure.Window != NULL ); - - /* - * Check if there is a joystick callback hooked to the current window - */ - freeglut_return_if_fail( fgStructure.Window->Callbacks.Joystick != NULL ); - - /* - * Poll the joystick now, using the current window's joystick callback - */ - fgJoystickPollWindow( fgStructure.Window ); -} - -/* - * - */ -void FGAPIENTRY glutSetColor( int nColor, GLfloat red, GLfloat green, GLfloat blue ) -{ - /* - * - */ -} - -/* - * - */ -GLfloat FGAPIENTRY glutGetColor( int color, int component ) -{ - /* - * - */ - return( 0.0f ); -} - -/* - * - */ -void FGAPIENTRY glutCopyColormap( int window ) -{ - /* - * - */ -} - -/*** END OF FILE ***/