Updating the ChangeLog and TODO files in preparation for the upcoming release
[freeglut] / ChangeLog
index 667de55..d4eab77 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -670,7 +670,7 @@ packaged with distributions
 
 
 ***************************************************************************
-* Changes on Februrary 5, 2004.
+* Changes on February 5, 2004.
 ***************************************************************************
 
 (182) With permission from Steve Baker, John Fay imported the latest joystick
@@ -680,7 +680,7 @@ compiling, and likely will require some debugging.
 
        
 ***************************************************************************
-* Changes on Februrary 7, 2004.
+* Changes on February 7, 2004.
 ***************************************************************************
 
 (183) Richard Rauch added experimental support for a new feature:
@@ -690,26 +690,176 @@ and then open a "window" much as you would a regular top-level window.
 Only UNIX_X11 is supprted at this point, for lack of knowledge.
 
 *********************************
+* March 8, 2004.
+*********************************
+
+(184) Made the include path for "freeglut.h" global (in "<>") rather
+than local (in quotes).
+
+*********************************
+* March 14, 2004.
+*********************************
+
+(185) Stripped out tab characters and end-of-line whitespace.
+
+*********************************
 * Ides of March, 2004.
 *********************************
 
-(184) Per demands of project owner, offscreen rendering is now removed
+(186) Per demands of project owner, offscreen rendering is now removed
 from freeglut.
 
+(187) Added support for Windows CE.
+
+*********************************
+* March 17, 2004.
+*********************************
+
+(188) Fixed an array-bounds error in X11 key-repeat detection
+
+*********************************
+* May 12, 2004.
+*********************************
+
+(189) Fixed a bug in direct/indirect rendering context and generally made
+it rational.
+
+(190) Created "GLUT_XLIB_IMPLEMENTATION" defined constant
+
+(191) Removed a false deprecation message of "glutSetKeyRepeat" function
+
+(192) Implemented the upper-end ASCII characters and allowed for rotation
+of bitmapped text.
+
+(193) Removed some obsolete defined constants.
+
+(194) Fixed a bug in the "behaviour on window close" code.
+
+(195) Added some comments about Windows window events.
+
+(196) Implemented the GLUT teapot in Windows CE.
+
+*********************************
+* June 29, 2004.
+*********************************
+
+(197) Gave menu windows the name "freeglut menu" instead of NULL
+
+*********************************
+* August 4, 2004.
+*********************************
+
+(198) Fixed a bug in "glutBitmapString" so that it handles end-of-line
+characters correctly.
+
+*********************************
+* August 5, 2004.
+*********************************
+
+(199) Suppressed warnings about indirect rendering contexts for BSD per
+request from Richard Rauch.
+
+*********************************
+* August 11, 2004.
+*********************************
+
+(200) Fixed a very nasty game mode bug that was causing crashes with the
+screen in a changed (low) resolution.
+
+*********************************
+* September 10, 2004.
+*********************************
+
+(201) Modified the joystick initialization so that it only happens if the
+application defines a joystick callback.
+
+(202) Changed many three-line comments to single-line comments.
+
+*********************************
+* September 13, 2004.
+*********************************
+
+(203) Removed redundant end-of-line characters from error and warning
+messages.
+
+(204) Renamed "fgGetCursorError" and made it and some other functions static.
+
+(205) Added a warning message to game mode get function.
+
+*********************************
+* September 15, 2004.
+*********************************
+
+(206) Fixed a bug in the command line argument compaction code.
+
+*********************************
+* September 23, 2004.
+*********************************
+
+(207) Changed "fgError" calls in the font routines to "fgWarning" so that
+execution can continue even if text does not get printed.
+
+(208) Made the geometry functions more robust in case the application calls
+them with bad inputs (like zero layers in a cone).
+
+(209) Unified the tetrahedron and Sierpinski sponge code.
+
+(210) Made the Key Repeat default behaviour consistent between initialization
+and reinitialization.
+
+(211) Removed duplicate nested parentheses.
+
+(212) Changed some "window by handle" internal functions to receive the window
+pointer instead of looking up the window pointer right away.
+
+(213) Removed some redundant window resize code.
+
+*********************************
+* October 5, 2004.
+*********************************
+
+(214) Added British spellings to the display mode string processing.
+
+(215) Modified the mouse behaviour in Windows to match the X11 behaviour.  It's
+not perfect but it is much improved.  The question of multiple button presses
+at once remains.
+
+*********************************
+* October 6, 2004.
+*********************************
+
+(216) Moved the joystick initialization code to one function.
+
+(217) Added some functions to get joystick parameters (number of buttons, axes).
+It is not clear whether these should go into the API or not.
+
+*********************************
+* December 17, 2004.
+*********************************
+
+(218) Changed the "freeglut_assert_window" to "fgError" and had it print out
+the name of the function whose call created the error condition.
+
+(219) Changed the "freeglut_assert_ready" to "fgError" when it is invoked in
+an API function and had it print out the name of the function whose call
+created the error condition.  Removed some other "freeglut_assert_ready"
+invocations from functions which are only called from other functions which
+already check for initialization.
+
 ***************************************************************************
 * Changes on December 31, 2004.
 ***************************************************************************
 
-(185) Fixed bug #1079530 (glutGetProcAddress and geometric objects).
+(220) Fixed bug #1079530 (glutGetProcAddress and geometric objects).
 
-(186) Fixed bug #1087642 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT)
+(221) Fixed bug #1087642 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT)
 unimplemented).
 
-(187) Fixed bug #1045054 (KeyReleaseMask typo).
+(222) Fixed bug #1045054 (KeyReleaseMask typo).
 
-(188) Fixed bug #1040435 (glutBitmapString() bug).
+(223) Fixed bug #1040435 (glutBitmapString() bug).
 
-(189) Fixed first bug of #1064195 (two things when using signals):
+(224) Fixed first bug of #1064195 (two things when using signals):
 Don't issue a warning about select when a non-blocked signal was
 caught. This makes sense and is more compatible with GLUT.
 
@@ -717,16 +867,126 @@ caught. This makes sense and is more compatible with GLUT.
 * Changes on January 1, 2005.
 ***************************************************************************
 
-(190) Added eMbedded Visual Tools project/workspace files to
+(225) Added eMbedded Visual Tools project/workspace files to
 distribution.
 
-(191) Renamed "configure.in" to the officially preferred
+(226) Renamed "configure.in" to the officially preferred
 "configure.ac".
 
-(192) Make "gcc -Wall -pedantic -Werror" happy.
+(227) Make "gcc -Wall -pedantic -Werror" happy.
 
-(193) Modernized configure.ac a bit and added a rule to Makefile.am to
+(228) Modernized configure.ac a bit and added a rule to Makefile.am to
 update libtool. Note that all gcc compiler warnings are now on by
 default.
 
-(194) Added missing files from "src" subdirectory to dist.
+(229) Added missing files from "src" subdirectory to dist.
+
+***************************************************************************
+* Changes on January 3, 2005.
+***************************************************************************
+
+(230) Removed acconfig.h, it is deprecated and we don't need it.
+
+(231) Cleaned up and autoconf'd the header inclusion story a bit.
+
+(232) Improved error message a bit when no suitable visual could be found
+(X11 only).
+
+(233) Fixed part of bug #926883 (Video mode matching code, memory leaks,
+fullscreen), i.e. memory leak caused by not freeing the mode lines returned
+by XF86VidModeGetAllModeLines
+
+(234) Fixed part of bug #926883 (Video mode matching code, memory leaks,
+fullscreen): Now we first try to get an exact mode match, ignoring the
+refresh rate if none could be found. This way the X11 part and the WinDoze
+behave similarly. NOTE: We still don't behave like GLUT, because it has a
+wider notion of "best" match. We have to refactor and extend freeglut quite
+a bit to do that.
+
+(235) Fixed part of bug #926883 (Video mode matching code, memory leaks,
+fullscreen), i.e. issue warnings when XF86VidModeFOO fails.
+
+(236) Reworked the X11 part of glutSetCursor, fixing bug #764187 (Variable
+mouse pointers don't work) on the way:
+   * Use slightly more compatible cursor shapes for GLUT_CURSOR_RIGHT_ARROW
+     and GLUT_CURSOR_LEFT_ARROW.
+   * Refactored and fixed the erroneous code for GLUT_CURSOR_NONE.
+   * Removed the incorrect use of XFreeCursor and use a cache of cursors
+     instead. Cursors are never freed now, we could do this e.g. via
+     reference countig if this is really needed.
+   * Fixed error handling.
+   * Unknown cursor types are an error now.
+   * Now the window state always corresponds to the wanted cursorID, even in
+     the case of GLUT_CURSOR_FULL_CROSSHAIR.
+
+**************************************************************************
+* Changes between January 3 and April 15, 2005.
+**************************************************************************
+(237) Moved the "#include "config.h"" statement to the header file
+
+(238) Changed the "assert" checks to more dignified statements that print
+      useful error messages before exiting.  Also added initialization
+      checking to all GLUT interface functions.
+
+(239) Changed some menu code around to remove duplicate code.
+
+(240) Implemented the ability to attach a menu to multiple windows.
+
+(241) Implemented the "GLUT_AUXn" color buffers for X11 and Windows
+
+(242) Improved the cursor handling marginally; also removed some duplicate
+      cursor code
+
+**************************************************************************
+* Changes on April 15, 2005.
+**************************************************************************
+(243) Changed some comments in "freeglut_internal.h" as a test for the new
+      pCVSc project.
+
+(244) Changed the names of the "fgStructure.Window" and ".Menu" variables
+      to ".CurrentWindow" and ".CurrentMenu" to make maintenance easier.
+
+(245) Tried implementing Yuri D'Elia's game mode changes.
+
+**************************************************************************
+* Changes in late April 2005
+**************************************************************************
+(246) Added French version of README (called LISEZ-MOI") and a Windows-specific
+      version of README describing how to operate under MSVC
+
+(247) Changed definitions of "FETCH_WCB" and "INVOKE_WCB" to allow compilation
+      with GCC 4.0
+
+(248) Changed the Makefile path to the "include" directory to allow for
+      off-directory compilation
+
+(249) Added some initializations and changed a hard-coded number of mouse
+      buttons to a defined constant
+
+(250) Added code to the Windows timing to allow for millisecond granularity
+      in the execution time
+
+(251) Fixed a reported bug in the fullscreen mode
+
+(252) Added window exit event handling to the Windows code; also put in a note
+      about adding window entry event handling
+
+**************************************************************************
+* Changes in early May 2005 -- in the run-up to 2.4.0
+**************************************************************************
+(253) Added handling for negative position specifications for subwindows
+
+(254) Made the display string handling in "freeglut_init.c" ever so slightly
+      more general
+
+(255) Changed the key repeat flag initialization from "GL_TRUE" to
+      "GLUT_KEY_REPEAT_ON" to make it consistent with its use elsewhere.
+
+(256) Removed the unused joystick function "fghJoystickParseElement"
+
+(257) Added a comment to "glutCreateWindow" about why "freeglut" does not
+      match GLUT when "glutInit" is not called.
+
+
+
+