1 2009-03-30 Sven Panne <sven.panne@aedion.de>
3 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make the example fully
6 2009-03-27 Sven Panne <sven.panne@aedion.de>
8 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make Visual C happy by
9 including stddef.h and explicitly marking some literals as float.
11 2009-03-26 Sven Panne <sven.panne@aedion.de>
13 * src/freeglut_init.c,src/freeglut_input_devices.c: Unbreak the build:
14 C++ style comments are not allowed in ISO C90
16 2009-03-19 John F. Fay <john.fay.ctr@eglin.af.mil>
18 * src/freeglut_input_devices.c: Fixing "freeglut_input_devices.c" for
19 MSVS2005 and later per e-mail from Diederick Niehorster dated Thu
22 2009-03-17 John F. Fay <john.fay.ctr@eglin.af.mil>
24 * src/freeglut_init.c, src/freeglut_input_devices.c: Removing some build
25 warnings from deprecated functions for VS2008 per e-mail from
26 Diederick Niehorster dated Tue 3/10/2009
27 * freeglut_static_vs2008.vcproj, freeglut_vs2008.sln,
28 freeglut_vs2008.vcproj,
29 progs/demos/CallbackMaker/CallbackMakerStatic_vs2008.vcproj,
30 progs/demos/CallbackMaker/CallbackMaker_vs2008.vcproj,
31 progs/demos/Fractals/FractalsStatic_vs2008.vcproj,
32 progs/demos/Fractals/Fractals_vs2008.vcproj,
33 progs/demos/Fractals_random/Fractals_randomStatic_vs2008.vcproj,
34 progs/demos/Fractals_random/Fractals_random_vs2008.vcproj,
35 progs/demos/Lorenz/lorenzStatic_vs2008.vcproj,
36 progs/demos/Lorenz/lorenz_vs2008.vcproj,
37 progs/demos/One/oneStatic_vs2008.vcproj,
38 progs/demos/One/one_vs2008.vcproj, progs/demos/demos_vs2008.sln,
39 progs/demos/shapes/shapesStatic_vs2008.vcproj,
40 progs/demos/shapes/shapes_vs2008.vcproj,
41 progs/demos/smooth_opengl3/smooth_opengl3Static_vs2008.vcproj,
42 progs/demos/smooth_opengl3/smooth_opengl3_vs2008.vcproj: Adding Visual
43 Studio 2008 solution and project files
45 2009-03-16 Sven Panne <sven.panne@aedion.de>
47 * src/freeglut_init.c,src/freeglut_window.c: Set the default number of
48 samples per pixel to 4 and actually use the value set with
49 glutSetOption(GLUT_MULTISAMPLE,...) in Windows code. Previously the
50 Windows code used a hardwired value of 4 and the GLX code had a
51 default of 0, neither made much sense. Similarly, set the default
52 number of auxiliary buffers to 1 and use that value when GLUT_AUX is
53 used. Note: There latter token has the same value as GLUT_AUX1, and
54 for historical reasons we seem to have 2 APIs to set the number of
55 auxiliary buffers: Explicitly using GLUT_AUX1 ... GLUT_AUX4, and using
56 a combination of GLUT_AUX with glutSetOption. The default of 1 ensures
57 consistent behaviour in both cases.
58 * src/freeglut_state.c: Added GLUT_AUX and GLUT_MULTISAMPLE as possible
59 parameters for glutGet, making things more symmetric with
61 * src/freeglutdll.def: Added missing API entries.
63 2009-03-10 John F. Fay <john.fay.ctr@eglin.af.mil>
65 * progs/demos/demos.dsw: Adding the "smooth_opengl3" demo
67 2009-03-09 John F. Fay <john.fay.ctr@eglin.af.mil>
69 * include/GL/freeglut_std.h: Making the definition of
70 "WIN32_LEAN_AND_MEAN" conditional to enhance compatibility with GLEW
71 per suggestion by Diederick C. Niehorster in e-mail dated Mon 3/9/2009
73 * progs/demos/Fractals/fractals.c: Setting the "fractals" demo initial
74 number of levels to 4 per suggestion from Diederick C. Niehorster
75 [diederick@niehorster.eu] in e-mail dated Mon 3/9/2009 5:29 AM
77 2009-03-01 John F. Fay <john.fay.ctr@eglin.af.mil>
79 * progs/demos/CallbackMaker/CallbackMaker.c,
80 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Fixing
81 Microsoft compatibility with the new "vsnprintf" by putting an
82 underscore in front of it if WIN32 is defined but __CYGWIN__ is not
84 2009-03-01 Sven Panne <sven.panne@aedion.de>
86 * configure.ac: We do not depend on GLU anymore
87 * README.win32: Added notes for building under Cygwin
88 * src/Makefile.am: To build shared libraries on Windows, one has to
89 declare explicitly that there are no undefined symbols during linking.
90 No idea why, but this seems to be the only way to enable this on
91 Cygwin via -mno-cygwin. Hopefully this won't cause problems on other
92 platforms (which has to be tested).
93 * progs/demos/smooth_opengl3/smooth_opengl3.c: Windows fun again: Use
94 the correct calling convention for OpenGL extension entries.
96 2009-02-28 Sven Panne <sven.panne@aedion.de>
98 * progs/demos/smooth_opengl3/smooth_opengl3.c: When -mno-cygwin is used,
99 we get ancient GL headers, so be a bit more conservative.
100 * progs/demos/Fractals_random/fractals_random.c,
101 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c:
102 _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin
103 doesn't provide them.
104 * src/freeglut_window.c: Do not try to destroy a GLX context when there
105 is none, e.g. when glXCreateContextAttribsARB is not there.
106 * src/freeglut_joystick.c: Use snprintf or _snprintf instead of the
107 potentially dangerous sprintf to avoid warnings.
109 NOTE: Due to excessive use of #ifdefs, the joystick code is on the
110 border of being unmaintainable! I could only check that it compiles
111 cleanly on my Linux box. Others should test this on their platforms
112 (Windows, Mac OS X, *BSD) to make sure that nothing has been broken.
113 * progs/demos/CallbackMaker/CallbackMaker.c,
114 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Use
115 vsnprintf instead of the potentially dangerous sprintf to avoid
116 warnings. Using snprintf directly would be a little bit more tricky,
117 because once again Microsoft decided to avoid followind standards and
118 provide _snprintf instead. We could use this, too, but this would
119 require an additional autoconf check, which I'd like to avoid, if
122 Note: If VS *still* issues warnings, but this time about vsnprintf,
123 somebody should add some pragmas or whatever is needed to shut up that
124 warning, it would be silly.
125 * progs/demos/Lorenz/lorenz.c: Position the distance message closer to
126 the middle of the window, it has been far, far off to the upper right.
127 * src/freeglut_internal.h: Synched version number with configure.ac. We
128 should better remove this redundancy and calculate this from
129 configure.ac directly.
131 2009-02-19 John F. Fay <john.fay.ctr@eglin.af.mil>
133 * progs/demos/smooth_opengl3/smooth_opengl3.dsp,
134 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Fixing the
135 DOS/Linux line ending problems in the progs/demos/smooth_opengl3
138 2009-02-18 John F. Fay <john.fay.ctr@eglin.af.mil>
140 * src/freeglut_window.c: Fixing a build error caused by a variable
141 declaration being out of place
143 2009-02-15 Sven Panne <sven.panne@aedion.de>
145 * progs/demos/smooth_opengl3/smooth_opengl3.c: Final changes to make the
146 example fully OpenGL-3.0-compliant:
148 * Use vertex attribute arrays.
150 * Use our own projection matrix.
152 * Do not use deprecated vertex/fragment shader variables.
153 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use GLSL shaders (still
154 1.20, though). Dump GL info.
155 * progs/demos/smooth_opengl3/smooth_opengl3.c: Added a commandline
156 option for 'classic' contexts. Aesthetic changes.
157 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use VBOs in new example.
158 Added a few comments.
160 2009-02-14 Sven Panne <sven.panne@aedion.de>
162 * configure.ac, progs/demos/Makefile.am, progs/demos/smooth_opengl3,
163 progs/demos/smooth_opengl3/Makefile.am,
164 progs/demos/smooth_opengl3/smooth_opengl3.c,
165 progs/demos/smooth_opengl3/smooth_opengl3.dsp,
166 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Initial version
167 of a fully OpenGL-3.0-compliant of the famous smooth.c from the Red
168 Book. What has been done already:
170 * Explicitly request a forward-compatible 3.0 context
172 * Report GL errors, if any, at a few crucial places
174 * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf
176 What remains to be done:
178 * Use vertex shaders and fragment shaders
180 * Use vertex buffer objects
182 2009-02-13 Sven Panne <sven.panne@aedion.de>
184 * README: Mention autogen.sh
185 * src/freeglut_window.c: Synchronized WGL behavior with GLX
186 implementation: Do not call the new context creation API when it is
187 not required. Fixing a bug in a previous commit on the way... :-}
188 * src/freeglut_internal.h, src/freeglut_window.c: More refactorings:
189 Removed useless return value. Simplified control structures even more.
190 * src/freeglut_window.c: Refactoring only (replace nested conditionals
191 with guard clauses), making the normal path of execution much clearer.
192 * configure.ac: We have added some API entries, so we have to update
193 library version information conforming to
194 http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
195 * autogen.sh, configure.ac: Avoid CR\LF vs. LF troubles when using
196 TortoiseSVN plus Cygwin.
197 * .: Ignore config.lt, too. It seems to be generated by recent
200 2009-02-13 John F. Fay <john.fay.ctr@eglin.af.mil>
202 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
203 Adding OpenGL 3.0 context detection for Windows per e-mail from Paul
204 Martz dated Thu 2/12/2009 9:03 AM (more or less)
206 2009-02-03 John F. Fay <john.fay.ctr@eglin.af.mil>
208 * README: Adding some instructions about building on a *nix platform to
210 * include/GL/freeglut_ext.h, src/freeglut_main.c: Removing some errant
211 tabs, fixing ticket #2137721, and adding special-key capability to
212 recognizing the NumLock, Delete, and keypad '5' keys
213 * src/freeglut_joystick.c, src/freeglut_main.c: A further response to
214 bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment
215 by Nigel Stewart on that bug report
217 2009-02-02 John F. Fay <john.fay.ctr@eglin.af.mil>
219 * src/freeglut_internal.h, src/freeglut_joystick.c: Fixing bug [ 1804696
220 ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel
223 2008-11-20 Sven Panne <sven.panne@aedion.de>
225 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Yet
226 another try to make the font definitions compile on all platforms.
228 2008-11-17 John F. Fay <john.fay.ctr@eglin.af.mil>
230 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Allowing
231 "freeglut" to compile without errors under *nix. Before this, there
232 were problems with conflicting definitions of the GLUT font
235 2008-11-06 Sven Panne <sven.panne@aedion.de>
237 * src/freeglut_main.c: Ooops, forgot one file in the previous commit
238 (fix for "--without-x").
239 * configure.ac: Use autoconf to detect gettimeofday instead of broken
242 Note: freeglut compiles under Cygwin now, even when "--without-x" is
243 used for configuration.
244 * configure.ac: We need to link against winmm under Cygwin when
245 --without-x is used to get timeBeginPeriod, timeEndPeriod, joyGetPosEx
247 * src/freeglut_window.c: Fixed first parameter of CreateWindow call,
248 used for multisampling on Windows. It compiles, but it is otherwise
251 2008-11-05 Sven Panne <sven.panne@aedion.de>
253 * src/freeglut_misc.c: Be conservative about the presence of
255 * src/freeglut_glutfont_definitions.c, src/freeglut_stroke_mono_roman.c,
256 src/freeglut_stroke_roman.c: freeglut_internal.h needs some GL types,
257 but it is not self-contained. TODO: Move freeglut.h #include into
258 freeglut_internal.h itself?
259 * src/freeglut_window.c: Removed the annoying "Unable to create direct
260 context rendering..." warning, it served no real purpose, and on some
261 platforms there simply is no such thing as a direct context.
262 * progs/demos/CallbackMaker, progs/demos/Fractals,
263 progs/demos/Fractals_random, progs/demos/Lorenz, progs/demos/One,
264 progs/demos/shapes: Ignore *.exe
265 * src/freeglut_ext.c: Handle new glutInitContext* API entries in
267 * src/freeglut_internal.h: Make freeglut compile under Cygwin, which has
268 an ancient GLX header
270 2008-11-02 Sven Panne <sven.panne@aedion.de>
272 * include/GL/freeglut_ext.h, src/freeglut_init.c,
273 src/freeglut_internal.h, src/freeglut_state.c, src/freeglut_window.c:
274 Added OpenGL 3.0 context creation API entries
276 glutInitContextVersion, glutInitContextFlags
278 and their related constants
280 GLUT_INIT_MAJOR_VERSION GLUT_INIT_MINOR_VERSION GLUT_INIT_FLAGS
282 GLUT_DEBUG GLUT_FORWARD_COMPATIBLE
284 Note that this works with GLX only currently, the glutInitContext* API
285 entries have no effect for WGL yet.
287 TODO: Centralize the context creation code for WGL (the harder part)
288 and use the new wglCreateContextAttribsARB API entry (the easy part,
289 re-use most of the GLX code).
290 * src/freeglut_window.c: Refactored GLX context creation into a single
291 function, centralizing things to be changed for OpenGL 3.0 context
292 creation and removing some cut-n-paste.
293 * src/freeglut_ext.c, src/freeglut_internal.h: Make a
294 wgl/glXGetProcAddress abstraction available internally. We will need
295 this to get the new context creation function.
296 * src/freeglut_misc.c: Do not depend on GLU, it will vanish in the
297 future, at least in its current form.
298 * src/freeglut_internal.h: Removed superfluous #includes.
299 * configure.ac: Fix for bug #1709675 ("probably not be so
300 ISO-conformant"): The C compiler flag -Werror is not used by default
301 anymore, a separate configure flag --enable-warnings-as-errors has
302 been introduced for this purpose, which is off by default.
303 * configure.ac: Added AM_PROG_CC_C_O to configure.ac, removing a warning
304 during autogen.sh. This flag seems to be necessary for per-target
305 flags (used in demo programs) nowadays.
307 2008-07-21 John F. Fay <john.fay.ctr@eglin.af.mil>
309 * configure.ac, src/Makefile.am: Implementing a patch from Jocelyn
310 Frechot (thank you, Jocelyn) that "should enable the XInput extension
311 management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
313 2008-07-10 John F. Fay <john.fay.ctr@eglin.af.mil>
315 * src/freeglut_ext.c: Adding "glutExit" to the functions in
316 "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot
317 dated Tue 7/8/2008 12:26 PM
319 2008-04-05 John F. Fay <john.fay.ctr@eglin.af.mil>
321 * src/freeglut_main.c: Adding "SC_MONITORPOWER" and other new options to
322 the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
324 2007-12-02 John F. Fay <john.fay.ctr@eglin.af.mil>
326 * include/GL/freeglut_ext.h, src/freeglut_display.c, src/freeglut_ext.c,
327 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
328 src/freeglut_state.c, src/freeglut_window.c: Adding
329 "glutFullScreenToggle" for X11 -- still needs implementation in
330 Windows (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
332 2007-12-01 John F. Fay <john.fay.ctr@eglin.af.mil>
334 * src/freeglut_window.c: Fixing the window position for asynchronous X11
335 implementations (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
337 2007-11-26 John F. Fay <john.fay.ctr@eglin.af.mil>
339 * progs/demos/Fractals/fractals.c: Making a demo program that uses
342 2007-11-12 John F. Fay <john.fay.ctr@eglin.af.mil>
344 * include/GL/freeglut_ext.h, src/freeglut_ext.c, src/freeglut_init.c,
345 src/freeglut_internal.h, src/freeglut_state.c,
346 src/freeglut_structure.c, src/freeglut_window.c: Implementing Jocelyn
347 Frechot's changes -- see e-mail of Thursday, 11/8/2007 9:12 AM.
349 2007-10-02 John F. Fay <john.fay.ctr@eglin.af.mil>
351 * src/freeglut_joystick.c: Removing more Win64 build warnings from
354 2007-09-30 John F. Fay <john.fay.ctr@eglin.af.mil>
356 * src/freeglut_main.c: Removing the final compiler warning when building
357 on Win75 -- thank you, Antonio Mattos.
359 2007-09-29 John F. Fay <john.fay.ctr@eglin.af.mil>
361 * src/freeglut_cursor.c: Removing the remaining compiler warnings from
362 the cursor code, thanks to Antonio Mattos of Brazil. The double
363 type-casting is needed because of a bug in the new MSVC; there is a
364 discussion on the web on this subject.
366 2007-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
368 * src/freeglut_cursor.c: Changing the cursor definition macro for newer
369 versions of MSVC -- thanks to "Mattos" of Brazil
370 * src/freeglut_window.c: More changes for Jocelyn Frechot's
371 multisampling changes. The library builds now. It still needs some
372 testing with sample cases under X11.
374 2007-09-23 John F. Fay <john.fay.ctr@eglin.af.mil>
376 * src/freeglut_window.c: Fixing a remaining bug in the multisampling
377 change ... there may be more ...
379 2007-09-22 John F. Fay <john.fay.ctr@eglin.af.mil>
381 * src/freeglut_internal.h, src/freeglut_state.c,
382 src/freeglut_structure.c, src/freeglut_window.c: Putting in Jocelyn
383 Frechot's X11 visual context changes. THIS WILL BREAK THE BUILD as I
384 am unable to test it on a Linux machine here. Somebody please test it
387 2007-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
389 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c:
390 Removing compiler warnings in MSVC 2005 build
391 * include/GL/freeglut_ext.h, src/freeglut_init.c: Implementing Larry
392 Ramey's "glutExit" feature (see e-mails from him on 11/9/05, 6/28/06)
394 2007-09-19 John F. Fay <john.fay.ctr@eglin.af.mil>
396 * include/GL/freeglut_std.h, src/freeglut_window.c: Implementing first
397 part of Windows version of "GLUT_CAPTIONLESS" and "GLUT_BORDERLESS"
398 per feature request "[ 1197016 ] need GLUT_CAPTIONLESS window option".
399 Needs more work; menus are slightly mispositioned, X11 version does
400 not support it, banner appears at beginning but disappears on window
401 resize. But this is a start.
402 * src/freeglut_main.c: Fixing Linux key-repeat mode bug reported in "[
403 1796845 ] Keyboard events are lost when key repeat is enabled."
404 * src/freeglut_joystick.c: Fixing a build error on SuSE described in bug
405 report "[ 1792047 ] freeglut_joystick.c error"
407 2007-09-18 John F. Fay <john.fay.ctr@eglin.af.mil>
409 * src/freeglut_window.c: Implementing feature request "[ 947118 ] Popup
410 menu is hidden under the TOPMOST window"
411 * src/freeglut_menu.c: Adding Takeshi Nishimura's Feature Request "[
412 1045202 ] Cope with a menu with many items" -- sorry it took so long.
413 * src/freeglut_window.c: Addressing Feature Request #1307049 that
414 "freeglut" should return 0 if "glutGetWindow" is called without a
415 prior call to "glutInit", rather than terminating on error.
416 * freeglut.dep, freeglut.mak, freeglut_static.dep, freeglut_static.mak:
417 Added Windows "nmake" Makefiles and dependency files for the two
418 "freeglut" projects in accordance with Feature Request #1454543
420 2007-09-16 John F. Fay <john.fay.ctr@eglin.af.mil>
422 * src/freeglut_window.c: Fixing bug #1688954, submitted in Marcy '07. I
423 changed "FREEGLUT" to _T("FREEGLUT") and nothing changed on my Windows
424 XP system. If this will allow it to work on Vista, then in it goes.
425 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
426 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
427 Fixing bug report #1052151 from October 2004.
429 2006-11-28 John F. Fay <john.fay.ctr@eglin.af.mil>
431 * FrequentlyAskedQuestions: Adding a Frequently Asked Questions file
433 2006-09-28 Joe Krahn <krahn@niehs.nih.gov>
435 * src/freeglut_state.c, src/freeglut_window.c: Removed incorrect comment
436 about internal WGL/ARB definitions. I actually had put those comments
437 in because I had meant to go back and re-check the WGL extension. But,
438 maybe locally defined extensions should be kept in a separate include
441 2006-09-27 Joe Krahn <krahn@niehs.nih.gov>
443 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
444 progs/demos/CallbackMaker/CallbackMaker.dsp,
445 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
446 progs/demos/Fractals/Fractals.dsp,
447 progs/demos/Fractals/FractalsStatic.dsp,
448 progs/demos/Fractals_random/Fractals_random.dsp,
449 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
450 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
451 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
452 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
453 progs/demos/shapes/shapesStatic.dsp: Undo svn:eol-style=CR/LF for MSVC
456 2006-09-26 Joe Krahn <krahn@niehs.nih.gov>
458 * include/GL/freeglut_std.h, src/freeglut_joystick.c,
459 src/freeglut_state.c, src/freeglut_window.c: Added
460 FREEGLUT_LIB_PRAGMAS to control MS library pragmas, and fixed NOMINMAX
462 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
463 progs/demos/CallbackMaker/CallbackMaker.dsp,
464 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
465 progs/demos/Fractals/Fractals.dsp,
466 progs/demos/Fractals/FractalsStatic.dsp,
467 progs/demos/Fractals_random/Fractals_random.dsp,
468 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
469 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
470 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
471 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
472 progs/demos/shapes/shapesStatic.dsp: Added svn:eol-style=CRLF property
473 to MSVC project/workspace files.
475 2006-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
477 * src/freeglut_window.c: Fixing a typo bug in the display mode checking
478 (removing multisampling if it is not supported)
480 2006-09-25 Joe Krahn <krahn@niehs.nih.gov>
482 * src/freeglut_state.c: Fixed a small mistake in the previous commit for
484 * src/freeglut_state.c: Added proper support for number of mouse buttons
485 in X11, and a keyboard in Windows CE. Also, several glutGet results
486 returning TRUE/FALSE were changed to 1/0, because the actual return
487 type is int (although they are technically the same in practice).
489 2006-09-24 Joe Krahn <krahn@niehs.nih.gov>
491 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
492 Converted Time counter to a uniform unsigned long it value. The
493 initialized flag was redundant with the main Initialized flag, and
494 conversion of timeval to milliseconds in POSIX makes the code cleaner.
495 Timeval has a longer range, but the time value is already limited by
498 2006-09-23 Joe Krahn <krahn@niehs.nih.gov>
500 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
501 Removed WindowState.IsGameMode; it is redundant with
502 Structure.GameModeWindow
504 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
506 * src/freeglut_state.c, src/freeglut_window.c: Adding support for the
507 multisampling query per bug report 1274193
508 * ChangeLog, src/freeglut_main.c: Fixing Bug #1398196 - Windows message
511 2006-09-21 Joe Krahn <krahn@niehs.nih.gov>
513 * src/freeglut_cursor.c: test (comment edited)
515 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
517 * ChangeLog, src/freeglut_init.c: Adding temporary fix to
518 "glutInitDisplayString" to ignore numerical assignments
519 * ChangeLog, src/freeglut_window.c: Adding multisampling to *nix and
520 Windows; also some other pixel format enhancements to Windows
521 * ChangeLog, progs/demos/CallbackMaker/CallbackMaker.c: Enhancing the
523 * ChangeLog, src/freeglut_cursor.c, src/freeglut_display.c,
524 src/freeglut_ext.c, src/freeglut_gamemode.c,
525 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
526 src/freeglut_input_devices.c, src/freeglut_internal.h,
527 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
528 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_teapot.c,
529 src/freeglut_teapot_data.h, src/freeglut_window.c: Joe Krahn's changes
530 to "TARGET_HOST" defined constants
531 * ChangeLog, src/freeglut_internal.h, src/freeglut_joystick.c,
532 src/freeglut_main.c, src/freeglut_window.c: Fixing two minor bugs,
534 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
535 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
536 Changing "GameMode" to "GameModeWindow ... and testing whether I can
539 2006-08-05 Sven Panne <sven.panne@aedion.de>
541 * ChangeLog, progs/demos/Fractals/fractals.c,
542 progs/demos/Fractals_random/fractals_random.c,
543 progs/demos/Lorenz/lorenz.c: Check fgets for return value to avoid
545 * freeglut.spec: Fixed typo in date
546 * freeglut.spec: Updated build requirements for SuSE 10.1
548 2005-10-12 Sven Panne <sven.panne@aedion.de>
550 * ., .cvsignore: Ooops, forgot to ingore INSTALL and install-sh in
552 * ChangeLog, include/GL/freeglut_ext.h, include/GL/freeglut_std.h: Moved
553 GLUT_INIT_STATE to <GL/freeglut_ext.h>, it is not part of the original
555 * ., .cvsignore, ChangeLog, INSTALL, autogen.sh, install-sh,
556 mkinstalldirs: Simply use autoreconf in autogen.sh, it is much simpler
557 and the recommended way in the autotools documentation. Removed
558 INSTALL, install-sh and mkinstalldirs, they are either unused or
559 automatically generated by autogen.sh.
561 2005-10-06 John F. Fay <john.fay.ctr@eglin.af.mil>
563 * include/GL/freeglut_ext.h: Allowing compilation of Windows version by
564 removing DLL decorations from deprecated joystick interface extensions
565 * src/freeglut_window.c: Implementing Stereo in Windows
567 2005-09-07 Sven Panne <sven.panne@aedion.de>
569 * ChangeLog, src/Makefile.am: Use target-specific *_CPPFLAGS, not the
571 * ChangeLog, autogen.sh: Use -Wall for automake to catch some buglets,
572 deprecated stuff, etc.
574 2005-09-04 Sven Panne <sven.panne@aedion.de>
576 * ChangeLog, autogen.sh: Silenced autogen.sh
578 2005-08-31 John F. Fay <john.fay.ctr@eglin.af.mil>
580 * freeglut.rc, freeglut.tgt, freeglut.wpj, freeglut_static.tgt:
581 Necessary files for Open Watcom support
582 * src/freeglut_internal.h: Adding Open Watcom support
583 * ChangeLog, README.win32: Documenting support for Open Watcom
584 * include/GL/freeglut_std.h: Implementing WATCOM support
586 2005-07-14 Sven Panne <sven.panne@aedion.de>
588 * src/freeglut_input_devices.c: Nuked useless bit-fiddling, pointed out
589 by John. I was a bit too quick to cut-n-paste the cfmakeraw()
590 definition into our code... :-]
591 * ChangeLog, src/freeglutdll.def: Synched the DLL definitions with
593 * ChangeLog, src/freeglut_cursor.c: Fixed the GLUT_CURSOR_INHERIT logic
596 Note that this commit is untested, but at least it looks better than
597 before. We really a need a cursor test program.
599 2005-07-13 John F. Fay <john.fay.ctr@eglin.af.mil>
601 * src/freeglut_cursor.c: Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
603 2005-07-13 Sven Panne <sven.panne@aedion.de>
605 * ChangeLog, configure.ac: Improve autoconf magic: To detect headers
606 like GL/gl.h, it might be necessary to temporarily use the X11 flags
607 found by AC_PATH_XTRA.
608 * ChangeLog, src/freeglut_joystick.c: Avoid gcc warnings for some
609 joystick code (e.g. on Solaris).
610 * src/freeglut_input_devices.c: Tiny cleanup only...
611 * ChangeLog, src/freeglut_input_devices.c: Solaris doesn't have
612 cfmakeraw, but it is only a convenience function for some
613 bit-fiddling, anyway.
615 2005-07-08 Sven Panne <sven.panne@aedion.de>
617 * ChangeLog, include/GL/freeglut_ext.h, src/freeglut_ext.c,
618 src/freeglut_internal.h: Made all the "glutJoystickXXX" functions part
619 of the freeglut extensions. If this is not what we want, we can easily
620 #ifdef this away again...
621 * ChangeLog, src/freeglut_geometry.c: Made a few global arrays "static",
622 avoiding namespace pollution. The only externally visible symbols
623 should either be from the GLUT API ("glutXXX") or internal freeglut
624 entities ("fgYYY"). Reformatted things a bit on the way.
626 2005-07-06 Sven Panne <sven.panne@aedion.de>
628 * ChangeLog, src/freeglut_main.c: We only have pending redisplay
629 callbacks when the window wants to be redisplayed *and* it is visible.
630 Otherwise we won't redraw, anyway, and immediately discover that
631 there's still something to do, etc. etc., leading to 100% CPU load.
632 * ChangeLog, src/freeglut_main.c: Removed redundant code.
633 * ChangeLog, src/freeglut_init.c: X11 only: Destroy the global menu
634 rendering context when deinitializing. The visual/context handling for
635 menus is still rather obscure, though...
636 * progs/demos/Lorenz/lorenz.c: Reverting previous commit: %lf is a valid
637 format specifier for the scanf familiy of functions only, not for the
640 2005-07-05 John F. Fay <john.fay.ctr@eglin.af.mil>
642 * src/freeglut_main.c: Implementing the new menu context variable names
644 * src/freeglut_internal.h: Changing a comment ... nothing big.
645 * progs/demos/Lorenz/lorenz.c: Fixing output formats ... nothing big
647 2005-07-05 Sven Panne <sven.panne@aedion.de>
649 * ChangeLog, src/freeglut_state.c, src/freeglut_window.c: X11 only: Free
650 XVisualInfo structures when they are not needed anymore, fixing a
651 space leak. Not perfect for menus yet...
652 * src/freeglut_internal.h, src/freeglut_window.c: Tiny change to make
653 grep's life easier: Rename the fields of the menu context. Not really
654 worth a ChangeLog entry...
656 IMHO it looks like we could kill the whole MenuContext stuff, it is of
657 no use currently and some things look strange, like e.g. having a
658 context per menu. The latter is not OK when a menu is attached to
661 2005-07-02 Sven Panne <sven.panne@aedion.de>
663 * ChangeLog, src/freeglut_init.c, src/freeglut_internal.h,
664 src/freeglut_main.c, src/freeglut_state.c: Handle modifiers in
665 MotionNotify events, too. This fixes bug #1227920 (glutGetModifiers
666 not set/allowed in mouse callbacks). In addition, some related cleanup
668 * ChangeLog, src/freeglut_joystick.c: Partial fixes for bug #1218900
669 (freeglut-2.4.0 on FreeBSD).
670 * ChangeLog, Makefile.am: Remove wrong "execute" bits when creating a
671 distribution. This fixes bug #961938 (Executable bit set on non exe
673 * configure.ac: Tiny cosmetic change, not worth a ChangeLog entry.
674 * ChangeLog: Added John's missing ChangeLog entry.
676 2005-07-01 John F. Fay <john.fay.ctr@eglin.af.mil>
678 * freeglut.dsp, freeglut_static.dsp: Adding the
679 \"freeglut_input_devices.c\" file to the Windows project files
681 2005-07-01 Sven Panne <sven.panne@aedion.de>
683 * ChangeLog, configure.ac, src/Makefile.am: Some steps toward
684 compilation under MinGW. Note that there are still linking troubles
686 * src/freeglut_internal.h: Fixed #ifdef for ChangeDisplaySettingsEx
688 * ChangeLog, src/freeglut_input_devices.c: Silenced a signed/unsigned
689 mismatched via a cast.
690 * ChangeLog, src/freeglut_internal.h: MinGW is lacking a prototype for
691 ChangeDisplaySettingsEx, so supply one in this case. Note that this
692 should better be handled via autoconf than via cpp.
693 * ChangeLog, Makefile.am: Removed redundant files from EXTRA_DIST.
695 2005-06-30 Sven Panne <sven.panne@aedion.de>
697 * src/freeglut_main.c: Ooops, forgot to set the current window in the
698 last commit. I'll have to test better before comitting... :-]
699 * ChangeLog, src/freeglut_main.c: When a window is iconified, only an
700 UnmapNotify is sent, not a VisibilityNotify, so we have to handle the
701 window status callback in the former case, too. This fixes bug #763442
702 (Call the visibility callback when minimizing a window).
703 * ChangeLog, src/freeglut_main.c: Cleaned up
704 CreateNotify/ConfigureNotify handling.
705 * src/freeglut_main.c: Ooops, forgot to dump a few fields in some
707 * ChangeLog, configure.ac, src/freeglut_main.c: Added --enable-debug
708 configure flag. Currently it only turns on X11 event tracing, but in
709 the future we could add more.
711 Note: freeglut_main.c could benefit from some restructuring to clean
712 up the #ifdefs and cut down the sizes of some extremely long
714 * ., .cvsignore: Ignore files generated during RPM build.
716 2005-06-23 John F. Fay <john.fay.ctr@eglin.af.mil>
718 * doc/freeglut_user_interface.html: Fixing the documentation regarding
719 callbacks and geometry shape additions
720 * progs/demos/Fractals/Fractals.dsp,
721 progs/demos/Fractals/FractalsStatic.dsp,
722 progs/demos/Fractals_random/Fractals_random.dsp,
723 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
724 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
725 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
726 progs/demos/shapes/shapes.dsp, progs/demos/shapes/shapesStatic.dsp:
727 Adding separate static library and DLL demonstration program projects
728 * progs/demos/CallbackMaker/CallbackMaker.dsp,
729 progs/demos/CallbackMaker/CallbackMakerStatic.dsp: Adding separate
730 demo program projects for static library and DLL versions
731 * progs/demos/demos.dsw: Adding support for separate static library demo
733 * ChangeLog: Keeping current ...
734 * src/freeglut_input_devices.c: New file for Joe Krahn\'s dials input
737 2005-06-22 John F. Fay <john.fay.ctr@eglin.af.mil>
739 * src/freeglut_geometry.c: Fixing a bug in the Sierpinski sponge code
740 that made the application crash if called with number of levels < 0
741 * src/Makefile.am, src/freeglut_init.c, src/freeglut_internal.h,
742 src/freeglut_joystick.c, src/freeglut_state.c: Joe Krahn\'s input
743 (dials) device implementation.
745 2005-06-14 Sven Panne <sven.panne@aedion.de>
747 * ChangeLog, freeglut.spec: Added an RPM spec file based on the one
748 shipped with SuSE 9.3.
750 2005-06-10 James Jones <puggles@users.sourceforge.net>
752 * ChangeLog, configure.ac: Release of 2.4.0
754 2005-06-02 James Jones <puggles@users.sourceforge.net>
756 * ChangeLog, configure.ac, src/freeglut_internal.h: 2.4.0 Release
759 2005-05-26 John F. Fay <john.fay.ctr@eglin.af.mil>
761 * src/freeglut_main.c: Takeshi Nishimura\'s changes to make the Windows
762 mouse wheel/button mapping match that of X11; also fixing a typo in
763 the associated mouse callback argument list
765 2005-05-26 James Jones <puggles@users.sourceforge.net>
767 * ChangeLog, configure.ac: 2.4.0 RC4 updates
768 * src/freeglut_main.c: Fix joysticks so they are polled by their timer
769 correctly. (Dan Torop)
771 2005-05-24 Sven Panne <sven.panne@aedion.de>
773 * ChangeLog, src/freeglut_gamemode.c: The original glutEnterGameMode()
774 returns the window id of the game mode window, not TRUE/FALSE, we
775 should better follow that. Note that most man pages claim that this
776 function returns void, but this is definitely wrong.
777 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_main.c: When
778 switching to game mode under X11, no ConfigureNotify event will happen
779 and consequently no reshape callback will ever be called via the
780 normal mechanism. To fix this, note that the game mode window needs to
781 be resized and handle this before redraw.
783 2005-05-22 Sven Panne <sven.panne@aedion.de>
785 * ChangeLog, src/freeglut_ext.c: Guarantee consistency of
786 names/addresses in glutGetProcAddress by using a macro. In addition,
787 this avoids any non-constant initializer issues which might be raised
788 when using WinDoze GCCs. The additional code overhead is negligible,
789 at least for x86 (a few instructions per name).
790 * ChangeLog, configure.ac: Lowering minimum autoconf version required.
792 2005-05-20 James Jones <puggles@users.sourceforge.net>
794 * ChangeLog: Tag for 2.4.0 RC3
797 2005-05-19 Sven Panne <sven.panne@aedion.de>
799 * src/freeglut_gamemode.c: Fixed SF bug #1204256: Off-by-one error in
800 X11 mode switching. The code which changes the X11 video mode has an
801 off-by-one error, resulting in a wrong mode or segfault. I've
802 refactored the code slighty to make it hopefully clearer what's going
803 on and corrected some #ifdefs on the way. Now at least the "One" demo
805 * src/freeglut_window.c: Fixed SF bug #1204261: Mini space leak when
806 creating an X11 window (X11 text property values have to be freed
809 2005-05-18 John F. Fay <john.fay.ctr@eglin.af.mil>
811 * src/freeglut_gamemode.c: Removing a C++ comment and simplifying the
814 2005-05-17 John F. Fay <john.fay.ctr@eglin.af.mil>
816 * src/freeglut_gamemode.c: Misiek\'s changes to fix Game Mode--getting
817 display settings under Windows and setting the window size correctly
818 on all operating systems.
820 2005-05-16 James Jones <puggles@users.sourceforge.net>
822 * ChangeLog: Mark for 2.4 RC 2
824 2005-05-13 John F. Fay <john.fay.ctr@eglin.af.mil>
826 * src/freeglut_menu.c: Removing two unused variables so this will
827 compile on Linux with -Wall
829 2005-05-12 John F. Fay <john.fay.ctr@eglin.af.mil>
831 * ChangeLog: Updating the ChangeLog ...
832 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c:
833 Takeshi Nishimura\'s menu changes--menus should now work properly. Use
834 the GLUT \"GLUTmech\" and \"walker\" demos to test them.
835 * src/freeglut_main.c: Takeshi Nishimura\'s menu fixes
837 2005-05-09 James Jones <puggles@users.sourceforge.net>
839 * ChangeLog, Makefile.am, configure.ac: Freeglut 2.4.0 Release Candidate
842 2005-05-06 Sven Panne <sven.panne@aedion.de>
844 * ChangeLog, progs/demos/shapes/shapes.c: Fixed a cuboctahedron vertex,
845 implemented wire mode for that shape.
846 * ChangeLog, progs/demos/shapes/shapes.c, src/freeglut_internal.h,
847 src/freeglut_main.c: Necessary compilation fixes for newer GCCs (e.g.
848 3.3.5, 4.0). Side effect: The shapes demo has a new 'i' key now.
850 2005-05-05 John F. Fay <john.fay.ctr@eglin.af.mil>
852 * ChangeLog: Updated the ChangeLog again ...
854 2005-05-04 John F. Fay <john.fay.ctr@eglin.af.mil>
856 * progs/demos/shapes/shapes.c: Replacing the original \"freeglut\"
857 \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many
858 thanks to the OpenGLUT community for writing it. The copyright notice
859 stays in the program.
860 * src/freeglut_main.c: Changing hard-coded constant (number of mouse
861 buttons = 3) to a \"glutDeviceGet\" call in two places under X11
862 * src/freeglutdll.def: Changing the version number from 2.0 to 2.4.0 ...
863 do we need to add any new interface functions?
864 * src/freeglut_internal.h: Removing an unused variable
865 * src/freeglut_window.c: Adding a comment on why \"freeglut\" differs
866 from GLUT in a particular way
867 * src/freeglut_joystick.c: Removing an unused function
868 * src/freeglut_init.c: Making the \"key repeat\" initialization
869 consistent with the rest of its usage; also making the
870 \"initDisplayString\" ever-so-slightly mroe general
871 * ChangeLog, TODO, src/freeglut_window.c: Updating the ChangeLog and
872 TODO files in preparation for the upcoming release
874 2005-04-29 John F. Fay <john.fay.ctr@eglin.af.mil>
876 * src/freeglut_joystick.c: Adding a \"TODO\" comment about dynamically
877 allocating joystick buttonj and axis arrays
878 * ChangeLog: Updationg the ChangeLog ...
880 2005-04-28 John F. Fay <john.fay.ctr@eglin.af.mil>
882 * README.win32: Adding a \"README.Win32\" file with instructions on how
883 to install \"freeglut\" under Windows.
884 * src/freeglut_main.c: Adding Window Exit event handling to the Windows
885 code; also adding a note that eventually it would be good to handle
886 the Window Entry event
888 2005-04-27 John F. Fay <john.fay.ctr@eglin.af.mil>
890 * src/freeglut_window.c: Fixing bug [ 1111218 ] fullscreen not working
891 Better late than never.
892 * src/freeglut_init.c: Fixing Bug Report [ 1160442 ]
893 glutGet(GLUT_ELAPSED_TIME) is too granular
895 2005-04-26 John F. Fay <john.fay.ctr@eglin.af.mil>
897 * src/freeglut_internal.h, src/freeglut_structure.c: Fixing the
898 typecasts on the callback fetches and invocations to allow
899 \"freeglut\" to compile with GCC 4.0
900 * src/freeglut_menu.c: Fixing erroneous implementation of Takeshi\'s fix
901 * src/Makefile.am: Changing include path from relative to absolute to
902 support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
903 * LISEZ_MOI: Adding \"LISEZ-MOI\", the French version of \"README\"
905 2005-04-25 John F. Fay <john.fay.ctr@eglin.af.mil>
907 * ChangeLog: Updating the ChangeLog ... it seems to be something of a
908 stepchild if we\'re not careful.
910 2005-04-22 John F. Fay <john.fay.ctr@eglin.af.mil>
912 * src/freeglut_menu.c: Yuri D\'Elia\'s changes to get the virtual
913 maximum screen extent instead of the actual screen size.
914 * src/freeglut_gamemode.c: Yuri D\'Elia\'s changes to the game mode
916 * src/freeglut_structure.c: Change a hard-coded number to a defined
917 constant and add some initializations
918 * src/freeglut_cursor.c: Removing duplicate cursor code. This and the
919 previous change (in freeglut_main.c) apparently got combined.
920 * ChangeLog: Updating the ChangeLog to reflect activity over the past
922 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
923 src/freeglut_display.c, src/freeglut_gamemode.c,
924 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
925 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
926 src/freeglut_window.c: Trying again to change \"fgStructure.Window\"
927 to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to
928 \"fgStructure.CurrentMenu\" for easier maintenance.
930 2005-04-15 John F. Fay <john.fay.ctr@eglin.af.mil>
932 * ChangeLog: Updating the ChangeLog as a means of testing pCVSc
933 * src/freeglut_internal.h: Testing!
935 2005-03-23 Brian Paul
937 * include/GL/freeglut_ext.h: added comment about AUX flags
939 2005-02-16 Brian Paul
941 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
942 src/freeglut_structure.c, src/freeglut_window.c: fixes for menus being
943 attached to multiple buttons/windows (John Fay)
944 * src/freeglut_callbacks.c: added error check (John Fay)
946 2005-02-15 Brian Paul
948 * src/freeglut_init.c, src/freeglut_window.c: AUX buffers for Windows
951 2005-02-11 Brian Paul
953 * include/GL/freeglut_ext.h, src/freeglut_init.c, src/freeglut_window.c:
954 Aux color buffer support. Pass one of GLUT_AUX[1234] to
955 glutInitDisplayMode. Only implemented/tested on GLX, not Windows.
956 * include/GL/freeglut_ext.h, src/freeglut_ext.c,
957 src/freeglut_internal.h: Fix object/function pointer inconsistencies
958 which are a problem for gcc 3.4.2. Added GLUTproc type, returned by
959 glutGetProcAddress().
961 2005-01-23 Sven Panne <sven.panne@aedion.de>
963 * configure.ac: autoconf 2.58 is enough
964 * src/freeglut_callbacks.c, src/freeglut_internal.h: Stylistic change
965 only (added "do { ... } while( 0 )" around multi-statement macros)
966 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: Testing
967 for errno.h is overkill. :-)
968 * src/freeglut_cursor.c, src/freeglut_main.c: Windows platforms only:
969 Merged some cursor-related code from John Fay (with minor changes)
971 2005-01-05 Sven Panne <sven.panne@aedion.de>
973 * src/freeglut_ext.c, src/freeglut_font.c, src/freeglut_main.c,
974 src/freeglut_state.c, src/freeglut_window.c: Hopefully removed all
975 damage done by commits without merge
976 * ChangeLog, src/freeglut_cursor.c: Reworked the X11 part of
977 glutSetCursor, fixing bug #764187 (Variable mouse pointers don't work)
978 on the way: * Use slightly more compatible cursor shapes for
979 GLUT_CURSOR_RIGHT_ARROW and GLUT_CURSOR_LEFT_ARROW. * Refactored and
980 fixed the erroneous code for GLUT_CURSOR_NONE. * Removed the incorrect
981 use of XFreeCursor and use a cache of cursors instead. Cursors are
982 never freed now, we could do this e.g. via reference countig if this
983 is really needed. * Fixed error handling. * Unknown cursor types are
984 an error now. * Now the window state always corresponds to the wanted
985 cursorID, even in the case of GLUT_CURSOR_FULL_CROSSHAIR.
987 NOTE: I am not sure where the cursor cache should really reside,
988 currently it is simply a file-local variable.
990 2005-01-03 Sven Panne <sven.panne@aedion.de>
992 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
993 mode matching code, memory leaks, fullscreen), i.e. issue warnings
994 when XF86VidModeFOO fails.
995 * ChangeLog, src/freeglut_gamemode.c: (234) Fixed part of bug #926883
996 (Video mode matching code, memory leaks, fullscreen): Now we first try
997 to get an exact mode match, ignoring the refresh rate if none could be
998 found. This way the X11 part and the WinDoze behave similarly. NOTE:
999 We still don't behave like GLUT, because it has a wider notion of
1000 "best" match. We have to refactor and extend freeglut quite a bit to
1002 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1003 mode matching code, memory leaks, fullscreen), i.e. memory leak caused
1004 by not freeing the mode lines returned by XF86VidModeGetAllModeLines
1005 * ChangeLog, src/freeglut_window.c: Improved error message a bit when no
1006 suitable visual could be found (X11 only).
1007 * configure.ac, src/freeglut_internal.h, src/freeglut_main.c: autoconf'd
1009 * src/freeglut_joystick.c: Removed redundant #include
1010 * ChangeLog, configure.ac, src/freeglut_joystick.c, src/freeglut_main.c:
1011 autoconf'd <errno.h> handling and removed an unused '#include
1013 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: autoconf'd
1014 <limits.h> and <sys/param.h> handling, removing MIN/MAX macros on the
1016 * src/freeglut_internal.h: Cosmetics.
1017 * configure.ac, src/freeglut_joystick.c: autoconf'd <fcntl.h> and
1018 <sys/ioctl.h> handling
1019 * src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c:
1020 Improved <sys/typed.h> / <unistd.h> handling as suggested by the
1022 * configure.ac, progs/demos/Lorenz/lorenz.c, src/freeglut_internal.h,
1023 src/freeglut_main.c: Fixed <sys/time.h> / <time.h> handling as
1024 suggested by the autoconf docs.
1025 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1026 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1027 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1028 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1029 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1030 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
1031 src/freeglut_structure.c, src/freeglut_teapot.c,
1032 src/freeglut_videoresize.c, src/freeglut_window.c: Moved '#include
1033 "config.h"' to freeglut_internal.h, we will need it there soon and it
1034 makes everything a bit shorter.
1035 * ChangeLog: Resurrected my recent additions which were nuked by the
1036 previous commit, adding the latest change on the way. :-(
1037 * acconfig.h: Removed acconfig.h, it is deprecated and we don't need it.
1038 * src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1039 src/freeglut_structure.c: Make it compile again with "-Wall -pedantic
1040 -Werror", redoing quite a few things I've fixed already a few days
1041 ago. Have today's commits been done by copying instead of merging? :-(
1043 2005-01-03 James Jones <puggles@users.sourceforge.net>
1045 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1046 src/freeglut_window.c: Changes remove duplicate menu code from
1047 "freeglut_window.c" and put it into one place in "freeglut_menu.c"
1048 where it belongs. - John Fay
1049 * ChangeLog: General ChangeLog Updates
1050 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1051 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1052 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1053 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1054 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1055 src/freeglut_structure.c, src/freeglut_teapot.c,
1056 src/freeglut_teapot_data.h, src/freeglut_window.c: Adding
1057 initialization checking to all GLUT interface functions and removing
1058 asserts from the rest of the code - John Fay
1060 2005-01-01 Sven Panne <sven.panne@aedion.de>
1062 * ChangeLog, src/Makefile.am: Added missing files from "src"
1063 subdirectory to dist.
1064 * AUTHORS: Synched with project member list on SourceForge
1065 * ChangeLog, Makefile.am, configure.ac: Modernized configure.ac a bit
1066 and added a rule to Makefile.am to update libtool. Note that all gcc
1067 compiler warnings are now on by default.
1068 * ChangeLog, include/GL/freeglut_std.h,
1069 progs/demos/CallbackMaker/CallbackMaker.c,
1070 progs/demos/Fractals_random/fractals_random.c,
1071 progs/demos/Lorenz/lorenz.c, progs/demos/One/one.c,
1072 src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1073 src/freeglut_teapot_data.h: Make "gcc -Wall -pedantic -Werror" happy.
1074 * ., .cvsignore: Ignore files generated by autoscan.
1075 * ChangeLog, INSTALL, configure.ac, configure.in: Renamed "configure.in"
1076 to the officially preferred "configure.ac".
1077 * stamp-h, stamp-h.in: Removed unused stamp-h* files, configure
1078 generates them (a single stamp-h1, to be exact).
1079 * ChangeLog, Makefile.am: Added eMbedded Visual Tools project/workspace
1080 files to distribution.
1081 * ., .cvsignore: Ignore distribution tar files
1083 2004-12-31 Sven Panne <sven.panne@aedion.de>
1085 * ChangeLog, src/freeglut_main.c: Fixed first bug of #1064195 (two
1086 things when using signals): Don't issue a warning about select when a
1087 non-blocked signal was caught. This makes sense and is more compatible
1089 * ChangeLog, src/freeglut_font.c: Fixed bug #1040435 (glutBitmapString()
1091 * ChangeLog: Alas, the ChangeLog has not the usual ChangeLog format, so
1092 tell (X)Emacs about that fact.
1093 * ChangeLog, src/freeglut_window.c: Fixed bug #1045054 (KeyReleaseMask
1095 * ChangeLog, src/freeglut_state.c: Fixed bug #1087642
1096 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
1097 * ChangeLog, src/freeglut_ext.c: Fixed bug #1079530 (glutGetProcAddress
1098 and geometric objects).
1099 * ., .cvsignore, doc, doc/.cvsignore, include, include/.cvsignore,
1100 include/GL, include/GL/.cvsignore, progs, progs/.cvsignore,
1101 progs/demos, progs/demos/.cvsignore, progs/demos/CallbackMaker,
1102 progs/demos/CallbackMaker/.cvsignore, progs/demos/Fractals,
1103 progs/demos/Fractals/.cvsignore, progs/demos/Fractals_random,
1104 progs/demos/Fractals_random/.cvsignore, progs/demos/Lorenz,
1105 progs/demos/Lorenz/.cvsignore, progs/demos/One,
1106 progs/demos/One/.cvsignore, progs/demos/shapes,
1107 progs/demos/shapes/.cvsignore, src, src/.cvsignore: Improved
1110 2004-12-17 James Jones <puggles@users.sourceforge.net>
1112 * src/freeglut_cursor.c, src/freeglut_display.c,
1113 src/freeglut_internal.h, src/freeglut_menu.c, src/freeglut_misc.c,
1114 src/freeglut_window.c: Some assertion changes / removals from Dr. John
1117 2004-10-06 Brian Paul
1119 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1120 src/freeglut_joystick.c, src/freeglut_state.c: joystick init fixes
1123 2004-10-05 Brian Paul
1125 * src/freeglut_main.c: updated comments (John Fay)
1126 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_window.c:
1127 improved comments and mouse coord adjustments (John Fay)
1128 * src/freeglut_init.c: more clean-ups, fixes from John Fay
1130 2004-09-23 Brian Paul
1132 * src/freeglut_font.c, src/freeglut_stroke_mono_roman.c,
1133 src/freeglut_stroke_roman.c: font updates from John Fay
1134 * src/freeglut_main.c: more updates from John Fay
1135 * src/freeglut_geometry.c, src/freeglut_init.c: assorted updates from
1138 2004-09-15 James Jones <puggles@users.sourceforge.net>
1140 * src/freeglut_init.c: Fix to glutInit() command-line argument
1141 compaction - Patch #1027724 from takeshi2
1143 2004-09-13 Brian Paul
1145 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1146 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1147 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_state.c,
1148 src/freeglut_window.c: more updates from John Fay
1149 * src/freeglut_cursor.c, src/freeglut_gamemode.c,
1150 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1151 src/freeglut_joystick.c, src/freeglut_main.c,
1152 src/freeglut_structure.c, src/freeglut_teapot.c,
1153 src/freeglut_window.c: some function renaming, etc (John Fay)
1155 2004-09-10 Brian Paul
1157 * src/freeglut_callbacks.c, src/freeglut_init.c,
1158 src/freeglut_internal.h, src/freeglut_main.c: joystick updates from
1160 * src/freeglut_cursor.c, src/freeglut_font_data.c,
1161 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1162 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1163 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1164 src/freeglut_stroke_mono_roman.c, src/freeglut_stroke_roman.c,
1165 src/freeglut_structure.c, src/freeglut_teapot.c,
1166 src/freeglut_window.c: updated comments from John Fay
1168 2004-08-11 James Jones <puggles@users.sourceforge.net>
1170 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
1171 Fix a game mode crashing bug, conditional compilation for Windows, and
1172 comment out some diagnostic prints (John Fay)
1174 2004-08-05 James Jones <puggles@users.sourceforge.net>
1176 * src/freeglut_window.c: Implements Richard Rauch's request that the
1177 warning about indirect rendering contexts be suppressed for his BSD
1179 * src/freeglut_teapot_data.h: Someone used C++ style comments in a C
1180 file... tisk tisk...
1181 * src/freeglut_font.c: Bugfix for "glutBitmapString" so that it now
1182 handles end-of-line characters properly (Richard Rauch)
1183 * README: Incremental update ... (John Fay)
1185 2004-06-29 Brian Paul
1187 * src/freeglut_structure.c: give menu windows the title 'freeglut menu'
1189 * src/freeglut_window.c: move glXMakeCurrent() to after the point where
1190 the window's title is set (helps Chromium)
1192 2004-05-13 James Jones <puggles@users.sourceforge.net>
1194 * freeglut.dsp, freeglut_static.dsp: Add one more header file to MSVC
1197 2004-05-12 James Jones <puggles@users.sourceforge.net>
1199 * include/GL/freeglut_ext.h, include/GL/freeglut_std.h: John Fay:
1200 Direct/indirect rendering context change, fix a bug that somebody
1201 reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove
1202 a false deprecation of a function.
1203 * src/freeglut_main.c: John Fay: A bug fix re: behavior of the code when
1204 the user clicks the "x" to close a window, and commentary to a message
1205 type with fixes for a Windows event processing bug.
1206 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_state.c,
1207 src/freeglut_window.c: John Fay: Implement the modified logic of the
1208 direct/indirect rendering context.
1209 * src/freeglut_font.c, src/freeglut_font_data.c: John Fay: Implement the
1210 upper end of the bitmapped fonts (beyond ASCII code 127). The fonts
1211 are very close to the GLUT fonts.
1212 * src/freeglut_teapot.c, src/freeglut_teapot_data.h: John Fay: These
1213 files implement the teapot for WINCE.
1214 * src/freeglut_internal.h: John Fay: Remove some obsolete defined
1216 * freeglut.dsp, freeglut_static.dsp: John Fay: Add
1217 "freeglut_glutfont_definitions.c" to the build and tell it to look in
1218 the "include" directory for the <GL/freeglut.h> file.
1220 2004-03-28 Steve Baker <steve@sjbaker.org>
1222 * progs/demos/shapes/shapes.c: Removed unnecessary initialisation.
1223 * progs/demos/shapes/shapes.c: Added a cullface test.
1227 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_init.c,
1228 src/freeglut_main.c: removed .cpp file (using LoadLibrary() instead)
1229 removed modified gx.h file cleaned up all // and tabs
1233 * src/freeglut_main.c: Prevent exceeding array bounds in X11 key-repeat
1238 * freeglut_evc4.vcp, src/freeglut_ext.c, src/freeglut_gx.cpp,
1239 src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c,
1240 src/freeglut_state.c, src/freeglut_window.c: replaced all tabs with 4
1241 spaces replaced all // with /* */ block fixed freeglut_gx.cpp file
1242 with #if TARGET_HOST_WINCE
1246 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_state.c:
1247 Whitespace conversion - tabs to 4 spaces
1248 * src/freeglut_window.c: Revert X11 fgCloseWindow to 1.38 pre-offscreen
1253 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_main.c: fixed
1254 mouse position and keyboard mapping. added c-wrapper cpp file for
1256 * freeglut_evc4.vcp, freeglut_evc4.vcw, include/GL/freeglut_std.h,
1257 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
1258 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1259 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1260 src/freeglut_state.c, src/freeglut_window.c: added support for
1261 WindowsCE (building on top of klimt)
1265 * src/freeglut_main.c: Repeat-key handling for Win32 Utilise both
1266 FreeGLUT state and per-window filtering modes
1270 * ChangeLog: Forgot to update the ChangeLog for the benefit of those who
1271 do not have CVS or Web access.
1272 * configure.in, include/GL/freeglut_ext.h, src/freeglut_internal.h,
1273 src/freeglut_window.c: Completed removal of all support for the
1274 offscreen rendering.
1276 If you wish to do offscreen supportin a portable manner, you will no
1277 longer be able to do so with current versions of freeglut.
1278 * progs/demos/Makefile.am: Removed Makefile support for the offscreen
1280 * progs/demos/One/one.c, progs/demos/offscreen: Removed offscreen demo
1285 * src/Makefile.am: Provide local include path to automake for
1290 * src/freeglut_window.c: Code formatting tweak
1291 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1292 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c:
1293 Resolution of X11 key-repeat handling
1295 glutSetKeyRepeat is global to all FreeGLUT windows in the application
1296 glutIgnoreKeyRepeat is a per-window over-ride
1298 To avoid nasty global X11 state interaction, or GLUT-style event queue
1299 filtering - the approach in FreeGLUT is to use the current key state
1300 XQueryKeymap to detect and ignore KeyRelease/KeyPress pairs that are
1304 http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
1305 http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml
1306 * src/freeglut_callbacks.c, src/freeglut_cursor.c, src/freeglut_ext.c,
1307 src/freeglut_font.c, src/freeglut_font_data.c,
1308 src/freeglut_gamemode.c, src/freeglut_geometry.c,
1309 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1310 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1311 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1312 Stripped out tabs and end-of-line whitespace Differences are in
1317 * src/freeglut_window.c: Resolve [ 853044 ] FreeGLUT menus on Win32 in
1318 task bar and ALT-TAB list CreateWindowEx(WS_EX_TOOLWINDOW,...)
1319 extended style suppresses the popup menu window from the taskbar or
1324 * src/freeglut_init.c: ignoreKeyRepeat mode in FreeGLUT is TRUE by
1325 default For compatibility with GLUT, the mode should be FALSE by
1326 default This issues was probably undetected until now because
1327 ignoreKeyRepeat didn't yet work.
1328 * src/freeglut_main.c: Resolved bug #869765 glutIgnoreKeyRepeat() Fix
1329 (Win32) glutIgnoreKeyRepeat now behaves correctly on Win32
1330 * src/freeglut_internal.h: C++ style comment converted to C style
1332 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1333 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1334 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1335 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_joystick.c,
1336 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1337 src/freeglut_overlay.c, src/freeglut_state.c,
1338 src/freeglut_structure.c, src/freeglut_teapot.c,
1339 src/freeglut_videoresize.c, src/freeglut_window.c: Include freeglut
1340 header via <GL/freeglut.h> rather than "../include/GL/freeglut.h" This
1341 allows some additional flexibility with file layout. It should be the
1342 responsibility of the build environment, rather than at source level.
1343 This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.
1347 * src/freeglut_joystick.c: According to John F. Fay: The variable
1348 "num_axes" should be "joy->num_axes".
1352 * src/freeglut_gamemode.c: Removed nonstandard #warning constructs.
1353 Converted to XXX comments. (These are warnings about gamemode features
1354 not working the same on some systems as on others. The semantics of
1355 gamemode are dubious, since it was never formally documented, and has
1356 for a long time worked in different ways on different systems, so it
1357 is arguable that there is nothing really wrong with systems that don't
1358 support resolution-changes.)
1359 * src/freeglut_callbacks.c: Fixed the bug where glutDisplayFunc() was
1360 effectively invoking glutPostRedsiplay(). This is wrong on the face of
1361 it, and may be at root for some of the annoying "timing" issues we've
1362 had with redisplay events being called inappopriately.
1366 * progs/demos/offscreen/Makefile.am: I had rubbed the
1367 offscreen/Makefile.am off from the shapes demo. I forgot to remove a
1368 couple of references to the shapes.c and shapes.dsp (.dsw?) files.
1369 * configure.in, include/GL/freeglut_ext.h, progs/demos/Makefile.am,
1370 progs/demos/offscreen, progs/demos/offscreen/Makefile.am,
1371 progs/demos/offscreen/offscreen.c: Added "offscreen" demo, a very
1372 simple program that produces an onscreen window and, upon command,
1373 renders a similar offscreen display and writes the result to disk.
1375 Also, modified the build structure for UNIX_X11 to autobuild the demo.
1376 (Not done for WIN32 at this time.)
1378 Also, forgot to previously commit the updated freeglut_ext.h include.
1383 * src/freeglut_window.c: Minor comment adjustments.
1387 * src/freeglut_geometry.c: Refinements to comments
1391 * src/freeglut_joystick.c: Normalized the style of the new joystick a
1393 * src/freeglut_main.c: For some reason, the X "expose" event handler was
1394 *directly* calling the display handler in the client. (Okay, it was
1395 calling a function that operates on the window handle.)
1397 If you have any complexity to the display code, this can be painful to
1398 watch. I can't think of a good reason to do the display immediately,
1399 so I fixed the code to do a glutPostRedisplay().
1400 * src/freeglut_joystick.c: A commit on behalf of John (in turn, and in
1401 part, also on behalf of Thierry).
1403 * Renamed some of the old PLIB functions to have glut* prefixes. (I
1404 guess that there is some thought about exporting them to the API.)
1406 * Changes from Thierry for FreeBSD support, and/or results of testing?
1408 * I re-merged an XXX comment re. NetBSD/amd64 and propogated a comment
1409 on a duplicated #define for FreeBSD. We need the GNU autoconfig stuff
1410 to be updated by someone who groks it, now.
1414 * src/freeglut_init.c: Commit of John's tidying-up of a comment, closing
1415 out an XXX comment that I wrote. Thanks, John.
1419 * src/freeglut_window.c: ...AND a tab snuck into my changes for
1420 GLUT_OFFSCREEN support. Mea culpa.
1421 * src/freeglut_joystick.c: Removed a ^M that snuck into the #pragma for
1422 the new joystick code.
1423 * src/freeglut_window.c: Ooops. We don't want people to be able to
1424 create a subwindow of an offscreen window. (^& This is no longer
1427 (Actually, it would be nice if it would work, but I don't think that
1428 you can subwindow a pixmap in UNIX_X11, and assume that subwindowing
1429 offscreen doesn't work on WIN32, either.)
1430 * ChangeLog: Added entries for the joystick updates and the offscreen
1431 experimental support.
1432 * src/freeglut_joystick.c: Changed a couple of XXX comments. Added a new
1433 one. These all the nest of #ifs in the BSD section of the new joystick
1435 * progs/demos/CallbackMaker/CallbackMaker.c: "Heavy editing" by John to
1436 his CallbackMaker demo.
1437 * src/freeglut_joystick.c: John added a #pragma to the joystick code for
1439 * src/freeglut_internal.h, src/freeglut_window.c: Adds GLUT_OFFSCREEN as
1440 a display mode option. This includes:
1442 * Recognizing the mode when you call glutCreateWindow(). (Offscreen
1443 looks and acts like a top-level window in many ways.)
1445 * During the life of the offscreen "window", various window-management
1446 functions are modified to respect offscreen status.
1448 (Excepting reshaping windows, there is not much useful interpretation
1449 for managment of offscreen areas. Reshaping is possibly more work than
1450 it's worth to support, and GLUT specs allow us to ignore the request.)
1452 * Cleanup for "offscreen" windows is a little different than for
1455 Windows still don't start up quite ideally. Offscreen windows should
1456 probably get a reshape event, but not a display.
1460 * src/freeglut_init.c, src/freeglut_joystick.c: Big import of updated
1461 joystick code from PLIB, with permission from Steve Baker. Most of the
1462 adaptation done by John, with a little bit of testing and changes by
1463 Thierry Thomas and myself. Seems to compile on:
1465 WIN32 Red Hat LINUX FreeBSD NetBSD/amd64
1469 * src/freeglut_main.c: Close a bug whereby events can be delayed
1470 arbitrarily long if they get caught between the socket and the
1471 client-side queue on X, sometime after glutMainLoopEvent()'s loop
1472 quits and before the sleep code is invoked.
1476 * src/freeglut_main.c: Ammended a comment on fgCheckJoystickCallback().
1477 * src/freeglut_main.c: Minor style normalizations to minimize the diffs
1478 between *now* and from before John's changes. No functional changes:
1480 * Removed some hard TABs introduced. * Removed some
1481 spaces-at-end-of-line introduced. * A couple of function calls were
1484 I did this separately only because I don't like messing with other
1485 people's commits. (I don't like feeling like the style police, either,
1486 but when I mess with the commit, there's no room for reverting my
1487 interference if it is deemed undesirable...)
1488 * src/freeglut_main.c: Some changes from John.
1490 The main attraction seems to be correcting a bug with the action-on-
1495 * src/freeglut_main.c, src/freeglut_window.c: Win32 glutIconifyWindow()
1496 patch contributed by John F. Fay Restrict resize callbacks to visible
1497 windows When iconified via glutIconifyWindow(), don't pass (0,0) to
1498 resize callback Note that minimising the window via the menu or
1499 minimise button is not yet resolved.
1503 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
1504 Split a few overlong lines.
1506 Adjusted some spacing in a few spots to be more consistant with
1507 freeglut style. Including one unindented if() body.
1509 Eliminated a dead variable.
1510 * src/freeglut_joystick.c: Changed several #ifdef's to proper #if's.
1512 * src/freeglut_main.c: Hm... I thought that I committed this last night.
1515 This is Nigel's modified fgSleepForEvents(), essentially. Take 2.
1519 * include/GL/freeglut_std.h: Three supported win32 compilation
1520 environments: MSVC, Cygwin and MingW32 #pragma is specific to MS
1522 * src/freeglut_internal.h: Explicitly cast function pointer to (void *)
1523 in SET_WCB since all callbacks stored as void pointers suppress gcc
1524 -Wall -pendantic "noise"
1525 * src/freeglut_structure.c: Typesafe handling of temporary window
1526 destroy callback Move assignment out of while test, scope temporary
1527 inside loop Be explicit about assignment/comparison in if test for gcc
1528 peace of mind suppress gcc -Wall -pendantic "noise"
1529 * src/freeglut_internal.h: Three supported win32 compilation
1530 environments: MSVC, Cygwin and MingW32 The windows mmsystem header
1531 need only be included internally to freeglut strdup vs _strdup is
1532 specific to the MS compiler
1533 * src/freeglut_font.c: strlen expects (char *), rather than (unsigned
1534 char *) suppress gcc -Wall -pendantic "noise"
1535 * src/freeglut_cursor.c: Replace assignment of array to struct with
1536 field-by-field assignment suppress gcc -Wall -pendantic "noise"
1537 * src/freeglut_menu.c: glutBitmapString and glutBitmapLength expect
1538 (unsigned char *) rather than (char *) suppress gcc in -Wall
1540 * src/freeglut_joystick.c: Replace #ifdef WIN32 with #ifdef
1541 TARGET_HOST_WIN32, as per FreeGLUT convention
1542 * src/freeglut_init.c: fgState.FPSInterval is unsigned int (GLuint),
1543 environment variable GLUT_FPS can be negative
1544 * src/freeglut_window.c: OpenGL context is not made current on Win32
1545 until fgSetWindow is called. This resolves severe problems observed in
1547 * src/freeglut_window.c: #pragma message is only understood my MS
1548 compiler #if defined(_MSC_VER) .. #endif
1549 * src/freeglut_state.c: Resolve bug 864978 - GLUT_OWNS_JOYSTICK
1551 * src/freeglut_main.c: Tidy nested if/else to suppress gcc -Wall
1552 -pedantic noise gcc suggests explicit braces to avoid ambiguous `else'
1556 * progs/demos/CallbackMaker/CallbackMaker.c,
1557 progs/demos/Fractals/fractals.c,
1558 progs/demos/Fractals_random/fractals_random.c: Configuring with
1559 "--enable-warnings" broke three demos: * CallbackMaker defined, but
1560 did not use, the Joystick() function (a callback for the freeglut
1561 joystick interface). I uncommented the callback-registration. I assume
1562 that it was commented out because it was spammy. (freeglut does
1563 joysticks by polling with a timer.) Perhaps a longer interval than
1564 10ms would be advisable?
1566 * fractals.c used strcpy() without getting the prototype. Added
1567 #include <string.h> at the top.
1569 * fractals_random.c had the same problem as fractals.c.
1573 * src/freeglut_main.c: Moved the window-resize code so that it happens
1574 whenever there is a pending resize for the window, whether or not the
1575 window is visible or in need of a redisplay. The resize is now done
1576 before the visibility and need-to-redisplay checks.
1580 * src/freeglut_structure.c: Got rid of those int/ptr warnings on AMD64.
1581 (The code was casting an {int} to a pointer, and later retrieving the
1582 int by another cast. It should be safe provided that pointers are at
1583 least as big as {int}, but GCC was giving warnings on my system,
1585 * src/freeglut_main.c, src/freeglut_structure.c: Several
1586 test-on-assignment cases have been converted to stop GCC from
1587 complaining about if( a = get_a_value_for_a( ) ) type code.
1591 * src/freeglut_internal.h: Ooops, left some cruft in a comment in the
1592 header when committing the last patch. Cleaned up.
1593 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1594 src/freeglut_structure.c: Wrote SET_WCB() to set a window callback.
1595 This lets us out of using the FETCH_WCB() as an lvalue (which it
1596 shouldn't, since the value of the FETCH is cast to the correct
1597 function-pointer type).
1599 2003-12-15 James Jones <puggles@users.sourceforge.net>
1601 * progs/demos/Fractals/Fractals.dsp: Change the destination directory of
1602 the debug version to "Debug" (John Fay)
1604 2003-12-13 James Jones <puggles@users.sourceforge.net>
1606 * ChangeLog: Release 2.2.0
1610 * src/freeglut_main.c, src/freeglut_window.c: Stripped out TABs that got
1613 There were no changes other than replacing about 10 to 12 TABs with a
1614 visually-suitable number of spaces, so this can probably be blindly
1615 treated as equivalent to the previous versions of the two affected
1618 2003-12-11 Christopher John Purnell
1620 * src/freeglut_internal.h, src/freeglut_structure.c: The deferred window
1621 destruction code was destroying the windows in reverse order. This
1622 cased a crash when the call to glutDestroyWindow() for a sub windows
1623 was immediately followed by a call to glutDestroyWindow() for it's
1624 parent. fgCloseWindows() would call fgDestroyWindow() for the parent
1625 first fgDestroyWindws() would recurse over the children and then
1626 fgCloseWindows() would call fgDestroyWindow() again for the child.
1628 I've replaced the single linked list with one of our two way link list
1629 structures. I've also moved it into fgStructure because that seemed
1630 the consistent thing to do.
1632 I said the the deferred windows destruction causes more problems then
1635 2003-12-11 James Jones <puggles@users.sourceforge.net>
1637 * progs/demos/CallbackMaker/Makefile.am: Include project file in the
1639 * ChangeLog: Updates for 2.2.0 RC2
1640 * progs/demos/demos.dsw: Add shapes to the Visual C workspace.
1641 * progs/demos/shapes/Makefile.am: Package the visual C project file with
1643 * configure.in: Set the version to 2.2.0
1644 * src/freeglut_gamemode.c, src/freeglut_main.c, src/freeglut_window.c:
1645 Nigel Stewart's Win32 window-sizing fix for game mode
1646 * progs/demos/One/one.c: Disable/enable lighting in the "one.c" demo
1648 * progs/demos/CallbackMaker/CallbackMaker.dsp: Add some essentials to
1649 get this program to compile (Nigel)
1650 * src/freeglut_internal.h: Update to reflect 2.2.0 release
1651 * ChangeLog: Note the release of 2.2.0 RC1
1655 * src/freeglut_structure.c, src/freeglut_window.c: John correctly
1656 observed that the initialization {OldHeight} and {OldWidth} in the
1657 window structure should be done for both windows and sub-windows, and
1658 the easiest way to do this is in the
1659 freeglut_structure.c:fgCreateWindow() code. So, transplant one line.
1663 * src/freeglut_main.c: Commit of John's change to stop an infinite-loop
1664 condition when the only windows left are freeglut menu windows, and
1665 correctly calls exit() if we drop out of the main loop without having
1666 requested any freeglut extensions to glutMainLoop() handling.
1670 * progs/demos/shapes/shapes.c, progs/demos/shapes/shapes.dsp: Two from
1673 * Updated shapes.c. I think that it's just reformatting and the
1674 addition of some comments.
1676 * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project
1677 file for building shapes on WIN32 with MSVC++.
1679 2003-12-03 Christopher John Purnell
1681 * configure.in: Added an option to enable gcc compiler warnings. I've
1682 explicitly excluded the one about adding parentheses.
1686 * src/freeglut_main.c: Touched up several comments, pointing up things
1687 that may be worth reflect- ing upon in the future.
1688 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1689 Hrm. I misunderstood the purpose of {window->State.Width} and
1690 {...Height}. Those are *not* records of the old values, but rather of
1691 the *desired* *new* values, hence it was inappropriate to use them in
1692 ConfigureNotify X11 event handling. Doing so introduced some new
1695 So, I created OldHeight and OldWidth in the window State structure,
1696 and *those* do what I require.
1698 I also stripped out the obsolete comment about getting extra/bogus
1699 reshape events. (Though I maintain that an application should be
1700 robust against them, freeglut should no longer generate them if the
1701 window has not changed size since last reported.)
1705 * src/freeglut_main.c: Changed Create/ConfigureNotify handling in
1708 * Just need to call GETWINDOW() once. Ooops. Heh. * Update
1709 {window->State} with the new size of the window. * If the window-size
1710 has NOT changed, then do NOT call the Reshape event.
1711 * src/freeglut_main.c: Added an "XXX" earmark for post-release
1712 contemplation. (The point is definitely in need of consideration, I
1713 believe, but is not immediately a major bug, so I'd rather not mess
1714 with it at the risk of postponing a release "soon".)
1715 * src/freeglut_main.c: Ensure that the time-out for sleeping is never
1717 * src/freeglut_main.c: Fixed a bug for UNIX_X11 where window reshape
1718 events were causing freeglut to mark the window as *needing* a reshape
1719 (which during general display callback handling would result in
1720 effectively a glutReshapeWindow()).
1722 The code is now system-dependant. It should be abstracted to a
1723 function, but is presently copied in two places. Sorry.
1725 Also, inverted the order of the associated if()/else check (in both
1726 WIN32 and UNIX_X11 branches) since the former "else" part was a
1727 one-line callback invocation.
1729 This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.
1731 2003-12-01 Christopher John Purnell
1733 * src/freeglut_internal.h: Added missing prototype for new list
1736 2003-11-28 Christopher John Purnell
1738 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1739 src/freeglut_structure.c: Timer optimizations. Made the list of
1740 pendinig timers ordered. Added a free list of used timer structures.
1741 * src/freeglut_callbacks.c: Timer optimizations.
1742 * src/freeglut_window.c: Fixed windows compilation problem with last
1745 2003-11-27 Christopher John Purnell
1747 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
1748 src/freeglut_structure.c, src/freeglut_window.c: Window close fix. The
1749 default behaiour should now be the same as with glut.
1753 * src/freeglut_init.c: Added change from Nigel to have resize events
1754 cause redraw events in WIN32. Also slightly reshuffled comments to
1755 deal with line-wrap issues.
1759 * src/freeglut_main.c: John reported, and fixed, a problem that recent
1760 changes caused for the Lorenz demo (seems to be WIN32 specific).
1761 * src/freeglut_structure.c: Update from John: Removed the freeglut hack
1762 of decrementing the highst-window-ID marker when the highest window is
1763 deleted. (This was a half-way measure for an idea that was decided to
1764 be dubious in the first place.)
1765 * configure.in, progs/demos/Makefile.am, progs/demos/shapes,
1766 progs/demos/shapes/Makefile.am, progs/demos/shapes/shapes.c: Added a
1767 new demo (from Nigel) showing some of the basic GLUT geometry shapes.
1768 "shapes" is the name of the demo.
1769 * include/GL/freeglut_ext.h, src/freeglut_geometry.c: Commit of work
1772 Massive rework of the geometric primitive code. Includes a new
1773 primitive (cylinder; solid and wireframe) and corresponding update to
1774 freeglut_ext.h for the prototype.
1775 * src/freeglut_internal.h, src/freeglut_main.c,
1776 src/freeglut_structure.c: More work from John (sorry for
1779 * We forgot to bump our version number in freeglut_internal.h It is
1780 now at 2.0.2 (actually, I think that 2.1.0 might be a better choice),
1781 which is presumably going to be our next formal release. 2.0.1 is
1782 incorrectly identified as 2.0.0 in the header.
1784 * A typo in a comment has been corrected ("than"/"that").
1786 * Numerous "manual" checks for callbacks are omitted now, since
1787 INVOKE_WCB() does this for us. These were holdovers from the
1788 pre-INVOKE_WCB() days. There may be some very subtle changes in
1789 freeglut behavior, since freeglut used to test the callbacks a little
1790 earlier in some cases and may have skipped some minor things (like
1791 changes to the current window) in some special cases, otherwise. It is
1792 not believed that any documented behavior is broken, and it is
1793 unlikely---not to say impossible---that any extant applications will
1794 detect the change. It is even possible that there is no external
1795 behavioral change in freeglut.
1797 This also significantly simplifies some sections of code that used to
1798 have conditional execution. "Unconditional code is simpler code" as
1799 one of the comments used to say.
1801 * Lots of XXX commentary is now removed. Some of it was obsoleted by
1802 other changes, some by changes from John.
1803 * src/freeglut_internal.h, src/freeglut_main.c,
1804 src/freeglut_structure.c: Change from John (I removed a couple of
1805 spaces from a couple of lines in his freeglut_internal.h file where
1806 they were wrapping in EMACS; otherwise, the files are exactly as he
1809 The change unifies the WIN32 and UNIX_X11 code by defining our own
1810 window-handle-type in freeglut_internal.h. This let John rip out some
1811 #if garbage in several places. The result is clearer code.
1817 * src/freeglut_font.c, src/freeglut_geometry.c,
1818 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1819 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1820 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1821 src/freeglut_window.c: Numerous style normalizations from John:
1823 * Convert "return( value );" to "return value;" * Normalize spacing
1824 around semicolons. * Remove extraneous parens. * Split multi-statement
1825 lines into multiple lines. (Mostly things of the form: "if( condition
1827 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1828 All changes are from John, except for: (a) I re-inserted the meat of a
1829 comment that I still feel is relavent. (b) I fixed a compile-time
1830 error in the UNIX_X11 code where a variable is declared after
1831 executable code in a block without creating a new sub-block for the
1834 Changes from John include: (a) Style revision. (b) Changes to postpone
1835 the handling of window resizes.
1837 Lots of lines were changed, but I think that thos two cover the ground
1838 that he hit. See the diffs for details.
1840 2003-11-18 Christopher John Purnell
1842 * src/freeglut_cursor.c, src/freeglut_ext.c, src/freeglut_geometry.c,
1843 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1844 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
1845 Lots of stuff that John F. Fay pointed out. Plus some changes to
1846 remove gcc warnings.
1848 2003-11-17 Christopher John Purnell
1850 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1851 src/freeglut_state.c, src/freeglut_structure.c: Fix spelling mistake
1852 in a variable name. Added a comment for John Fay. Added the copyright
1853 notice for XParseGeometry source.
1855 2003-11-16 Christopher John Purnell
1857 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1858 src/freeglut_state.c, src/freeglut_structure.c: Made Modifers variable
1859 global as per glut classic.
1860 * src/freeglut_init.c: Removed old unused glutInitDisplayString code.
1861 Reformated new glutInitDisplayString and XParseGeometry code.
1862 * src/freeglut_init.c: Use XParseGeometry for better geometry parsing.
1863 Moved geometry parsing to after fgInitialize() so we can use the
1864 screen size to correctly calculate negative positions in the geometry
1865 string. Copied the code for XParseGeometry from the X11 sources for
1866 use in the Win32 version. freeglut now passes test1 of the glut test
1869 2003-11-15 Christopher John Purnell
1871 * src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1872 src/freeglut_main.c, src/freeglut_structure.c, src/freeglut_window.c:
1873 Removed the state variable BuildingAMenu. Instead pass a new parameter
1874 isMenu to fgCreateWindow(). Elsewhere use window->IsMenu.
1875 * src/freeglut_init.c: freeglut_assert_ready is going to have to go at
1876 some point. But for now I've moved setting fgState.Initalized to
1878 * src/freeglut_callbacks.c, src/freeglut_display.c,
1879 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1880 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1881 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1882 src/freeglut_window.c: Replace TRUE with GL_TRUE and FALSE with
1883 GL_FALSE where the type is GLboolean.
1887 * src/freeglut_main.c, src/freeglut_menu.c: Normalized the spacing
1888 around symbols, for the most part. Ho-hum.
1890 2003-11-15 Christopher John Purnell
1892 * src/freeglut_main.c: Added a call to fgDeinitialize() before the call
1893 to exit() in fgError().
1897 * src/freeglut_joystick.c: Style normalizations to the joystick code.
1899 2003-11-15 Christopher John Purnell
1901 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1902 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1903 Added a new state variable "Initalized". Replaced referenced to
1904 Time.Set with this new variable where appropriate. fgElapsedTime() now
1905 set the start time if Time.Set is false. Moved
1906 glutGet(GLUT_ELAPSED_TIME) handling to before the assert.
1910 * src/freeglut_internal.h: Normalized the internal header's style a bit.
1911 * src/freeglut_init.c: Plowed one more file this morning. Still just
1912 trivial formatting issues.
1914 And I left alone the "INIT DISPLAY STRING PARSING" section, since it
1915 still appears to be in flux.
1916 * src/freeglut_font.c, src/freeglut_gamemode.c: Yet more trivial style
1919 Sorry, but that's all that I'm up to at the moment. On the plus,
1920 excepting the font_data file (which I've been skipping), up through
1921 this file, I think that the code style is pretty close to uniform.
1922 * src/freeglut_font.c: Minor style corrections.
1923 * src/freeglut_display.c: Minor spacing quibble.
1924 * src/freeglut_cursor.c: Added a brief explanatory note to the X code
1925 for GLUT_CURSOR_NONE.
1927 Corrected the indentation of a block of code.
1928 * src/freeglut_window.c: Noted one of a few cases where we do something
1929 immediately that could more efficiently be postponed, quite
1930 easily---and which GLUT promises *is* to be postponed. (It is unlikely
1931 that the difference will break any apps, but postponing should be
1934 No real change, just a comment in the code.
1938 * ChangeLog: Updated ChangeLog for the day.
1939 * include/GL/freeglut_std.h, progs/demos/One/one.c, src/freeglut_ext.c,
1940 src/freeglut_font.c: Removal of all remaining TABs in the freeglut
1941 *.[ch] files. (I missed a few in the "one" demo, it seems, and some
1942 more crept back into freeglut_(ext|font).c, presumably due to my own
1943 edits when I forgot to use the "freeglut-c-mode" in EMACS.)
1944 * progs/demos/One/one.c: Moved glutInit*() functions ahead of
1945 glutInit(). (This is proper use of glutInit() in general, since it
1946 allows the user to override settings via {argc, argv} command-line
1948 * progs/demos/One/one.c: Style normalizations: Removed CRs and hard TABs
1950 * ChangeLog, src/freeglut_structure.c: Corrected the numbering of the
1951 ChangeLog (there were two (110)s).
1953 Added entries summarizing my commits since September or late August,
1954 for the benefit of those lacking both CVS and web access.
1955 * progs/demos/demos.dsw: Added CRs to the ends of all lines in MS
1956 developer studio demos.dsw file..
1960 * src/freeglut_main.c: John's fix for the minimize/close/maximize
1961 controls no longer working. WIN32 expected us to pass the message on
1962 up the chain (or do something else with it), rather than just throwing
1963 away the event, for a certain class of events. (See the diffs for more
1966 The code is also slightly reformatted from what was previously in the
1968 * freeglut.dsp, freeglut_static.dsp,
1969 progs/demos/CallbackMaker/CallbackMaker.dsp, progs/demos/demos.dsw: A
1970 *.dsp file for CallbackMaker in the demos.
1972 Plus updated *.dsp and *.dsw files to reflect the new freeglut header
1975 NOTE: The prior version of the *.dsw file does not in fact have CRs. I
1976 thought that it did. For consistancy, I am not putting them in in this
1977 version, either. (At least one person said that his MSVC++ system is
1978 happy with the current files. If there are problems, we can easily add
1979 the CRs, but that should be a separate commit...)
1980 * configure.in, progs/demos/CallbackMaker,
1981 progs/demos/CallbackMaker/CallbackMaker.c,
1982 progs/demos/CallbackMaker/Makefile.am,
1983 progs/demos/Fractals_random/fractals_random.c,
1984 progs/demos/Makefile.am: New demo from John: CallbackMaker.
1986 This demo shows the use of every callback that you can register with
1987 freeglut, and also generates event reports so that you can see what is
1988 happening to the program as it runs.
1990 Not much to look at, but both utilitarian and a practical example.
1992 Please double-check that I updated everything that needs to be
1993 updated. I reran autogen.sh and ./configure, and it built okay for me.
1995 * src/freeglut_structure.c: Hm. I thought that I already hit this file
1996 for style normalization. Oh well... Should be no functional changes.
1997 Should be pretty close to in-line with the style of changes that I've
1998 been making else- where.
1999 * src/freeglut_structure.c: Ooops. Forgot that we already had a call to
2000 fgClearCallBacks() in the code and added a second one. I just deleted
2002 * src/freeglut_structure.c: Added Nigel's suggested code to clear all
2003 but the destroy callback early on, leaving Destroy to be cleared later
2004 after the last possible point where it should be invoked.
2005 * src/freeglut_menu.c: Modified the menus to refer to {border} rather
2006 than {FREEGLUT_MENU_BORDER}, in fghDisplayMenuBox(). The local
2007 variable was already defined and used for some purposes, so we might
2008 as well use it throughout. It does serve to shorten and clarify the
2009 code a bit---though I have mixed feelings about creating aliases that
2012 Still, the variable already existed and was already used in places.
2013 (We could even move it into the freeglut state, or make it a {const
2016 Oh well. Stuff to ponder.
2017 * src/freeglut_cursor.c: Well, a couple of days have gone by, so I
2018 assume that items (a) and (b) in the freeglut_cursor.c file's "Open
2019 issues" comment are now satisfactor- ily closed.
2021 I also partially implemented some error-checking, using my limited
2022 understanding of how Xlib users are supposed to do this. (No one
2023 commented about the lack of error-checking, pro or con. Perhaps
2024 someone will care to comment now?)
2026 At present, it just will print out a warning, via fgWarning(). In part
2027 because I'm not sure what is best to do, and in part because failure
2028 to set the cursor type is probably not a fatal problem.
2030 2003-11-08 Christopher John Purnell
2032 * progs/demos/Fractals/Makefile.am,
2033 progs/demos/Fractals_random/Makefile.am,
2034 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Applied
2035 Braden McDaniel's non-srcdir build patch.
2039 * src/freeglut_menu.c: A first pass over freeglut_menu.c to bring it in
2040 line with the rest of freeglut's style. Mostly re-indenting and
2041 splitting long lines. For those that may be concerned: No, I didn't do
2042 any more arrangments of the form (CONST == a) rather than (a ==
2044 * progs/demos/Fractals_random/fractals_random.c: Altered the way that
2045 the {random} value (from 0..3) is chosen.
2047 Previously, it picked out two adjacent bits in the result of rand().
2048 Unfortunately, these adjacent bits (at least on NetBSD) have a certain
2049 amount of dependance. After a period (perhaps a thousand or so?), it
2050 starts to repeat the pattern of those two bits. (I think; I haven't
2051 actually tested that directly.) This presumably is locking it into a
2052 an an N-way attractor on the "snowflake", such that if you zoom in a
2053 ways, you will start to see some spots *quickly* are colored, and
2054 others are *never* colored.
2056 What I've done now is to pick up two widely-spaced bits in a single
2057 rand() call. (Perhaps we would do as well to pick up something like
2058 bit #16 from two consecutive rand() calls?) These widely-spaced bits
2059 have a lower statistical dependance on one another (if I can get away
2060 with using that term for an arithmetic operation; though since stats
2061 has more to do with sampling and less to do with true randomness, I
2064 The net effect, at leats on NetBSD, is far better snowflake if you
2069 * src/freeglut_main.c: From John:
2071 [This] implements the visible/invisible for Windows. It does NOT call
2072 the visibility callback, though.
2073 * src/freeglut_main.c: Stripped out the now truly extraneous {braces} in
2076 if( ... ) { INVOKE_WCB( ... ); }
2078 Check for compiling on WIN32.
2079 * src/freeglut_internal.h: Adopted Eero Pajarre's suggestion of using a
2080 do { ... } while rather than { ... } for the INVOKE_WCB() macro. This
2081 lets it be used "more like a function", in that:
2083 if( ... ) INVOKE_WCB( ... ); else ...
2086 * src/freeglut_main.c: Pure code janitoring: Shuffled the order of some
2087 of the case statements in the UNIX_X11 X event processing loop. (In
2088 general, it's nice to have case statements sorted, especially when you
2089 have a *huge* switch statement like this. That makes it easier to find
2090 the one that you're looking for, and to see if a certain case is
2092 * src/freeglut_main.c: Combined EnterNotify and LeaveNotify event
2093 processing in the UNIX_X11 event loop.
2094 * src/freeglut_main.c: Added ReparentNotify case to UNIX_X11 event loop,
2095 to catch the extraneous ReparentNotify event types (type 21).
2096 * src/freeglut_internal.h, src/freeglut_structure.c: Oh well, I might as
2097 well add the call to clear callbacks on window destruction. Also
2098 renamed the function to do this: fgClearCallBacks(). Ho-hum.
2099 * src/freeglut_internal.h, src/freeglut_structure.c: Added
2100 fgInitCallBacks() to freeglut_structure.c. (The function takes an
2101 {SFG_Window *}.) Added prototype to freeglut_internal.h. Added use of
2102 the function to the window initialization. (Don't count on calloc(),
2103 which sets all bits to 0.)
2104 * src/freeglut_gamemode.c: Style normalization; removal of
2105 say-nothing-useful comments.
2106 * src/freeglut_font.c: Normalized the style of freeglut_font.c No
2107 substantial alterations.
2108 * src/freeglut_ext.c: Somewhat normalized the style of this file.
2110 Also moved the "glutMouseWheelFunc" extension down into the
2111 "extensions" part of the table. (Purely internal organization. It will
2113 * src/freeglut_display.c: Further normalization of the code's style. No
2114 substantial changes.
2115 * src/freeglut_cursor.c: Split one last overlong line in
2117 * src/freeglut_cursor.c: Added GLUT_CURSOR_NONE support in UNIX_X11
2118 (well, NetBSD; you lot need to try it on others; (^&).
2120 Deallocated some resources that we are creating. VERY slight memory
2121 leak, but plugged now.
2123 These two complete the first two "Open issues" ( (a) and (b) ). The
2124 first one also completes X support for glutSetCursor(). If others can
2125 verify, we can fully demote the outstanding bug over this to
2128 I'll delete the dead Open issues and re-letter the others if someone
2129 will cross-check me. Or if no one says anything in a day or two. (^&
2130 * src/freeglut_cursor.c: Further normalized the style of the cursor
2132 * src/freeglut_callbacks.c: Slight style improvements. Two rules of
2133 thumb that are almost always good to apply:
2135 * Don't write a == CONST. Instead, write CONST == a. Or, more
2136 generally (in C like languages): Avoid putting an lvalue on the
2137 left-hand side of an == comparison. (For consistancy, I try to avoid
2138 lvalues on the left- hand side of any comparison---but == is the most
2141 (An "lvalue" is a value that can safely go on the left side of an "="
2142 assignment, of course. (^&)
2144 * Do not write if( !condition ) return; other_thing; return;
2146 (See page 18 of K&P's _The Elements of Programming Style_.)
2148 Instead, it is better to just write:
2150 if( condition ) other_thing; return;
2152 There are times when sacrificing structured programming (e.g., via
2153 multiple return statements) is okay. But, here, there is no apparent
2154 gain---indeed, there seems only loss---in the non-structured code.
2155 * src/freeglut_main.c: Grr. Forgot to enable the "freeglut" C
2156 programming mode in EMACS, and had a few TABs in the last commit. This
2158 * src/freeglut_main.c: Minor corrections to the UNIX_X11 mouse-wheel
2159 support. In part this reflects that {button} is already shifted to the
2160 GLUT numbering, and hence should be counted as 3&4, 5&6, etc.
2162 The other change was simply to clarify the computation of {direction}.
2163 The original code did some clever arithmetic. The new code is more
2164 straightforward, even if it requires more lines to express.
2168 * src/freeglut_main.c: Ooops. I screwed up on part of John's fixes.
2171 I think that I have his fix properly committed now. Mea culpa.
2172 * src/freeglut_callbacks.c, src/freeglut_internal.h,
2173 src/freeglut_main.c, src/freeglut_structure.c: Cleanup pass after
2174 committing callback conversion (from structure to array-of-pointers).
2175 Mostly deleted commented-out struct-based code. Also added some XXX
2176 comments that I though should be pondered. (My own pair of eyes, and
2177 one brain cell, were not sufficient at this time to decide what to do
2178 for those ponderables. (^&)
2179 * src/freeglut_callbacks.c, src/freeglut_init.c,
2180 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
2181 src/freeglut_misc.c, src/freeglut_structure.c: Converted the
2182 "Callbacks" structure (with named members holding individual callback
2183 pointers) to a "CallBacks" array in fgState. (This is to allow us to
2184 write a loop to clear all callbacks from windows when the window is
2185 dead/dying. Using this, we can safely assign NULL to each in a loop.)
2187 Support includes two new macros, FETCH_WCB() and INVOKE_WCB(). See
2188 freeglut_internal.h for more details there.
2190 Some typedefs of function pointer types were altered to make them more
2191 uniform (necessary for the macros).
2193 All references to window-based callbacks in freeglut are updated to
2196 Old usages will cause compile-time errors.
2198 As a side bonus, the new invocation macro sets the current window and
2199 checks pointers so that these common steps can be uniformly done on
2200 every window-based callback. This makes it easier to do things right.
2201 At the same time, the array notation (and now required associated
2202 casts) make it harder to bypass the macros and abuse the function
2203 pointers, in general.
2205 After this commit, I will go through the code and clean up dangling
2206 issues about formatting. This commit is just a "it now works, let's
2207 checkpoint it" type of affair.
2208 * src/freeglut_main.c: From John, a couple of lines needed to be changed
2209 to fix the mouse wheel support on WIN32.
2210 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2211 Includes mouse button, mouse motion, and mouse wheel support.
2215 * src/freeglut_menu.c: Multiple changes from John. Style issues, plus a
2216 bug-fix to check a pointer before deallocating some memory.
2218 He also removed one obsolete comment, and added some more comments.
2219 * src/freeglut_main.c: Some changes, mostly from John. Mostly style
2222 One bug fix from John: Execution state bug-fix in glutMainLoop(), per
2225 One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
2226 {ButtonPress} is a constant.
2227 * progs/demos/Fractals_random/fractals_random.c: Per John's emailed
2228 desire to have all files obey UNIX EOL conventions, I have stripped
2229 out carriage returns from this file.
2231 This is the *only* change, but every line is touched. If you want to
2232 see the real differences between older and newer versions, you will
2233 have to get local copies of each and first match their EOL
2235 * progs/demos/Lorenz/lorenz.c: Update from John:
2237 I [John] added a feature to check for memory leaks under Windows.
2238 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2240 I [John] converted everything to double precision to avoid compiler
2241 warnings. I also added a feature to check for memory leaks under
2242 Windows and removed a memory leak (surprise!).
2243 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
2244 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
2245 src/freeglut_gamemode.c, src/freeglut_geometry.c,
2246 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
2247 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
2248 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
2249 src/freeglut_structure.c, src/freeglut_teapot.c,
2250 src/freeglut_videoresize.c, src/freeglut_window.c: Got rid of the
2251 G_LOG_DOMAIN junk, per discussion on the mailing list.
2252 * src/freeglut_callbacks.c: Minor formatting quibbles. (The brain isn't
2253 up to anything more serious at the moment.)
2254 * src/freeglut_main.c: Missed a block where one level was 2-space
2257 Nit-picked a few other lines for consistancy.
2261 * src/freeglut_init.c: Fixed a memory leak (thanks for the correction,
2264 Smoothed over some code style issues while I was here, but left the
2265 init-string parsing alone for now.
2266 * freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw: Deleted 3 files
2267 (again?) from CVS, on John's request. Old/obsolete MSVC++ project
2268 files. (freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)
2269 * src/freeglut_main.c, src/freeglut_structure.c: * Indentation issues. *
2270 Pulled some common code into a nicely packaged function. * Found some
2272 * src/freeglut_main.c: Heh.
2274 Forgot to wrap the fgGetXModifiers() in a #if. Fixed.
2275 * src/freeglut_main.c: Extracted some common code to a subroutine, in
2276 glutMainLoopEvent(). (The common code was a snippet to compute X
2277 keyboard modifiers as a bit-mask of GLUT symbols.)
2278 * src/freeglut_main.c: Caught a few more little style issues.
2279 * src/freeglut_main.c: Added a "case" for an X event that we turn on but
2280 do not use. ({MapNotify}). We already caught {MappingNotify} and
2282 * src/freeglut_main.c: * Fixed a bug in the X11 handling of
2283 scrollwheel/mouse. The old code, I believe, checked if *either* a
2284 wheel or button callback was set, and then decided which to use---and
2285 unconditionally called it. I left the "either" check in, but added
2286 additional checks before actually doing the invocation. * Lots of
2287 reformatting. Massive. The usual suspects, though, and fairly trivial:
2288 Re-indenting to standard size, shuffling some spaces to match the
2289 freeglut "standard" of: if( ... ) ...and: func( ... )
2293 * src/freeglut_callbacks.c: Cleaned up one macro definition.
2295 Picked up an over-long line that I missed before.
2296 * src/freeglut_callbacks.c: Fit some long lines to 80 columns.
2297 * src/freeglut_cursor.c, src/freeglut_display.c,
2298 src/freeglut_gamemode.c, src/freeglut_geometry.c: Last of the hard
2299 TABs in the src/*.c files.
2300 * src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
2301 src/freeglut_menu.c, src/freeglut_state.c: En masse removal of most (I
2302 think) of the remaining hard TABs in files. There are still a couple
2303 of files that need to be hit.
2304 * src/freeglut_window.c: Picked up some stray TABs scattered in this
2306 * src/freeglut_window.c: Noted by XXX comments that the XFlush() calls
2307 probably shouldn't be there. Flushing the X protocol stack every
2308 little bit both adds clutter to the code and may impede performance.
2310 It seems that we should be able to get rid of these, though allowing
2311 client code to directly call glutMainLoopEvent() does make it a little
2314 Something to ponder.
2315 * src/freeglut_window.c: Polished off the say-nothing-new comments and
2316 lines-over-80-columns in freeglut_window.c
2318 There should be no functional changes.
2319 * src/freeglut_window.c: Missed a few say-nothing-new comments in
2320 fgOpenWindow(). Eeep. Should be better now. (^&
2321 * src/freeglut_window.c: Cleansed fgCloseWindow(): * say-nothing-new
2322 comments axed. * de-TABbed. * Made the white-space to be consistant.
2323 * src/freeglut_window.c: Cleaned up fgOpenWindow(): * Removed TABs. *
2324 Made indentation consistant. * Deleted say-nothing-new comments. *
2325 Changed an *error*check* from an assert to an if(). (The error-check
2326 was on window creation; we don't want to lose that if the user
2327 compiles with asserts deactivated. Also, assert()s really tell us more
2328 about programming errors, rather than run-time errors, so it is a
2329 little misleading to use assert() for error-checks, even if you can
2330 depend upon assert()s never being compiled away to null statements.) *
2331 Added some XXX comments for things that bear some rumination.
2332 * src/freeglut_window.c: Cleanup to fgSetWindow(). The usual suspects: *
2333 Removed tabs. * Made indentation consistant. * Killed off
2334 say-nothing-new comments.
2335 * src/freeglut_window.c: Cleanup to fgSetupixelFormat(). Should be no
2338 Code facelift included:
2340 * Consistant indentation. * Removal of all TABs (there were a bunch).
2341 * Fit to 80 columns.
2342 * src/freeglut_window.c: There should be no changes to code
2343 functionality, though a fair bit of little changes to the code
2346 * Fit the comments at the start of the file to fit 80 columns. * Noted
2347 an unusual feature of the ATTRIB() macro. * Added ATTRIB_VAL() macro
2348 which is really just two ATTRIB()s. This lets us put things like
2349 {ATTRIB (GLX_RED_SIZE); ATTRIB (1);} on one statement: {ATTRIB_VAL
2350 (GLX_RED_SIZE, 1);}. I did this to preserve some of the layout of
2351 information while also avoiding the nasty semi-visible ";" in the
2352 middle of a line of code. And by putting the {braces} in the macro
2353 definition, I was able to visually clean code of the form: if
2354 (condition) { ATTRIB( X ); ATTRIB( 1 ); } ...rewriting as: if
2355 (condition) ATTRIB_VAL( X, 1 ); * Eliminated a bunch of
2356 say-nothing-new comments in fgChooseVisual(). * Combined some
2357 semi-useful comments into a block comment summarizing a loop.
2361 * src/freeglut_structure.c: Finished off most of the issues with
2362 freeglut_structure.c, from a stylistic point of view (at least,
2363 insofar as: The original file's code was INCON- SISTANT. I did not
2364 remove the "!= NULL" stuff, did not address the shortest-branch-first
2365 issue for if-else statements, and left some rather ugly "if (x) {...
2366 return y} /* else do this */ return NULL;" garbage. This should, I
2367 think, be re-written as "if (x) return y; else return NULL;" or even
2368 better, "ret = NULL; if (x) ret = y; return ret;"
2370 In short, the code still has some issues, but I think that it's a bit
2373 (Oh, I also got rid of oustanding TABs.)
2374 * src/freeglut_structure.c: Eliminated most of the say-nothing-new
2377 Fit most of the code to no more than 80 columns.
2379 Raised some issues about completeness/correctness of trying to
2380 decrement the max-window-ID (apparently in order to partially recycle
2381 some window IDs to slightly slow the rate of growth of window IDs). (I
2382 didn't change what the code does, though.)
2384 The functionality of the code should be unchanged.
2385 * src/freeglut_main.c: Forgot to set {direction} explicitly to +/- 1 for
2386 freeglut mouse-wheel API on MS-WINDOWS. Oops.
2388 Now it should always report +/- 1 on MS-WINDOWS, per the spec.
2389 * src/freeglut_main.c: Minor fix to allow for multiple ticks to be
2390 received at one time by the WIN32 code. Take abs(direction) as the
2391 number of ticks, and count it down.
2393 <stdlib.h> *should* be included by freeglut_internal.h, I think, so it
2394 should be okay; otherwise add a suitable #include.
2395 * src/freeglut_main.c: Grrr. My attempt to commit got aborted, and the
2396 commit message was lost. Now I've lost track of what I said I'd done.
2399 * Fixed some issues with multiple wheels. * Noted in comments some
2400 issues about other-than-3-real-buttons. * Fixed formatting to fit 80
2401 columns. * Removed some BCPL/C++ style comments (//) that are not
2402 legal, and which, if memory servers, are not even strictly legal when
2403 disabled by preprocessor directives. E.g.,
2405 #if 0 not-syntactically-valid-C #endif
2407 ...is not legal. Though most cpp's will discard the bracketed material
2408 completely before the main C compiler pass has a chance to analyze the
2409 syntax. (MSVC++ and GCC both don't seem to mind the BCPL style
2410 comments in plain C, but let's keep the sources clean, eh?) * Fixed a
2411 problem that would have caused freeglut to report doubled wheel events
2414 Not tested other than compiling. Personally, I think that the
2415 interface is inherently broken at this point unless you are willing to
2416 get user- configuration. (Which would then solve the complaint that
2417 Steve had about computing the tick-size on behalf of applications.)
2418 I.e., there is NO WAY to know if we have the right buttons to start
2419 wheels at, or if there are any buttons after the first wheel(s), etc.
2420 We just have to guess---and if we are wrong, we can get varying
2421 degrees of brokeness.
2423 2003-10-29 Christopher John Purnell
2425 * src/freeglut_window.c: There is a problem with the way I did
2426 glutFullscreen() in my last commit. So I've copied the way the game
2427 mode does it. It's not ideal but it works. The glutGet() for the
2428 window border sizes will also have to be fixed at some point.
2429 * src/freeglut_window.c: Rewrote glutFullscreen(). It now correctly
2430 places the window in X11. It now uses system dependant code for more
2431 efficient use of windowing system calls.
2435 * src/freeglut_joystick.c: Should be no real changes to the code
2438 I missed a few lines that went past 80 columns. (^&
2440 Also made formatting more consistant.
2442 Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.
2443 * src/freeglut_joystick.c: Should be entirely superficial changes to
2446 * Fit lines to 80 columns. (It does get tiresome seeing long lines
2447 forced to break by the right-hand border of windows...(^&) *
2448 Eliminated say-nothing-new comments. * Made formatting more consistant
2449 in spots. * Eliminated some hard TAB characters.
2450 * src/freeglut_joystick.c: Added Thierry's change to include
2451 sys/param.h. This lets us pick out version numbers for OS releases
2452 corresponding to system headers.
2454 I modified it to also work with NetBSD; I cannot confirm if it is safe
2455 with any other systems, so it remains protected by a #if.
2456 * src/freeglut_state.c: Deleted some say-nothing-new comments.
2458 Added some XXX's where comments seemed to require future attention.
2460 Added some new comments with XXX's where future attention seems
2462 * src/freeglut_state.c: Deleted a bunch of say-nothing-new comments.
2463 Someday, there shall be an end to them.
2464 * src/freeglut_state.c: Previous changes were made without the freeglut
2465 major mode in EMACS. Re-tweaked some lines (mostly got rid of some
2466 TABs, but also resulted in some changed indentation).
2468 Reformatted a big comment to fit to 80 columns.
2470 Removed bogus references to "Linux". (UNIX, and/or X11 were relavent,
2471 and "UNIX/X11" was substituted for "Linux" in those places. This
2472 includes UNIX-alike systems.)
2473 * src/freeglut_state.c: Rewrote the TODO BEFORE THE STABLE RELEASE
2474 comment to fit to 80 columns.
2476 Cleanup of fghGetConfig(). (One return statement, simpler code.)
2478 Made glutSetOption() have a more consistant style---and also got its
2479 lines to stay under 80 columns.
2480 * src/freeglut_misc.c: Got the last of the say-nothing-new comments in
2483 (I would have picked them up before, but wanted the bug-fix and
2484 conversion-to-error-message changes to go in before I did more
2486 * src/freeglut_cursor.c, src/freeglut_main.c, src/freeglut_misc.c: *
2487 Fixed a bug that I introduced in fgWarning()/fgError(): I thought that
2488 ((a) || (b)) was defined to have value as: (a) if (a) != 0 (b) if (a)
2491 ...instead, it has value 0/1. This was causing a bug. It's probably
2492 just as well, since what I was trying to do definitely fell into the
2493 category of "clever code" rather than "clear code".
2497 * Made glutSetKeyRepeat() call fgError() if you go out of range. (The
2498 old code silently did nothing---not even a warning.)
2500 If it is really desirable to keep running, we should probably at least
2501 generate an fgWarning().
2503 * Deleted some say-nothing-new comments.
2505 * XXX added: Is glutSetKeyRepeat() deprecated?
2509 * include/GL/freeglut_ext.h, src/freeglut_callbacks.c,
2510 src/freeglut_ext.c, src/freeglut_internal.h, src/freeglut_main.c:
2511 Commit, mostly of work from John:
2513 * Removed some say-nothing-useful comments. * Added some tentative
2514 mouse-wheel support. * Fairly massive reformatting of code.
2516 I made some secondary changes to his changes:
2518 * One compilation error was fixed (missing close-paren + semicolon). *
2519 Deleted a few ore say-nothing-useful comments. * Some of John's code
2520 was strangely formatted to the point that it seemed completely out of
2521 place, so I took the liberty of reformatting it. Since I used GNU
2522 EMACS's <tab> key (which re-indents rather than inserts TAB
2523 characters), I had to propogate some indentation changes a little
2524 further than the bare necessity to match up with John's changes. (John
2525 seems to shoot for 2-space indents, while EMACS (and I, I confess)
2526 strongly prefer 4-space indents. The code that I was re-indenting had
2527 been put to 8-space indents, however.)
2529 I have *not* tested the code beyond compiling. I assume that John did
2530 (and that the compilation error was a result a minor change just
2531 before asking me to commit).
2532 * src/freeglut_cursor.c: Re-indentation style changes from John.
2534 There should be no alterations to how the code performs.
2536 (I modified how the X11 section of the set-cursor code is indented to
2537 slightly better match (IMHO) the rest of his changes.)
2541 * src/freeglut_menu.c: Converted a few "x != NULL" tests to "x" for
2544 I think that I've touched enough lines of source for one morning.
2545 * src/freeglut_menu.c: Cleaned up a little redundancy in a comment on
2546 the {menu_pen_*} variables.
2547 * src/freeglut_menu.c: Removed about 90 lines of say-nothing-new
2550 The code should be functionally unaltered by these changes.
2551 * src/freeglut_menu.c: Propogated a pointer-check from menu-attach to
2552 menu-detach. (Apparently, in some cases, the Menu member variable can
2555 Corrected the menu-attach code to make sure that both Window and Menu
2556 pointers are non-NULL (rather than "at least one").
2558 Rewrote button-checks to more simply and more clearly assert that the
2559 "menu button" is a valid button for menu actions: Instead of
2560 laboriously comparing against the three valid buttons (0, 1, 2 or
2561 GLUT_BUTTON_*), we do a simpler range-check and the upper bound is
2562 {FREEGLUT_MAX_MENUS}, allowing us to change the number of menuable
2563 buttons fairly easily in the future.
2565 Also deleted a few say-nothing-new comments.
2566 * src/freeglut_menu.c: Cosmetic changes (mostly deleted a few more
2567 say-nothing-new comments). The functionality of the code should be
2569 * src/freeglut_menu.c: Changed an "#elif TARGET_HOST_UNIX_X11" to
2570 "#else", since this simply governed menu aesthetics. I think that it's
2571 better to have a default that works than to break completely, should
2572 freeglut ever be ported to a new (non-WIN32, non-UNIX/X11) target.
2573 * src/freeglut_menu.c: Minor modifications to the menus:
2575 * Updated an old "TODO BEFORE STABLE" comment.
2577 * Expanded a comment re. some #define macros.
2579 * Made colors and font choice system dependant. The UNIX freeglut
2580 menus look more like UNIX GLUT menus, now. (This is PURELY a cosmetic
2581 change. But it achieves better compatibility visually.)
2582 * src/freeglut_main.c: Cleaned up glutMainLoop() a bit:
2584 * Deleted numerous say-nothing-new comments. * Reformatted a
2585 say-something-useful comment to fit on an 80-column display.
2586 * src/freeglut_main.c: Partially (re-?)unified some of the
2587 glutMainLoopEvent() code. The only code that really needs to be
2588 system-specific is the window event handling, which in MS-WINDOWS is
2589 tucked into a separate function. In UNIX/X11, it's all spilled out
2590 into glutMainLoopEvent() for some reason.
2592 If the X11 code could be tucked into another function,
2593 glutMainLoopEvent() could be platform-independant.
2597 * src/freeglut_main.c: Moved the idle callback out of
2598 glutMainLoopEvent() and into glutMainLoop(), per discussion on the
2599 list. The code looks okay, to me, though I remain less than wholly
2600 convinced that treating idles as special cases is the best way to go.
2601 Still, a case can be made for taking "non-event" idle callbacks out of
2602 the "event loop". From an organizational perspective, I think that
2603 it's an improvement, and it fixes a bug for at least one program.
2604 * src/freeglut_menu.c: Added John's text-positioning modification.
2606 The lines that he was altering were very oddly-split, so while I was
2607 at it, I repaired the line-break damage.
2608 * src/freeglut_joystick.c: Committed change from Nigel to fix the
2609 joystick bug. (The joystick code was not setting the GLUT window prior
2610 to calling callbacks.)
2612 Please verify. If so, this closes out, I think, the latter half of
2613 that bug report, so anyone with the means to modify/close bug reports
2614 should do so upon verification of the fix.
2615 * src/freeglut_main.c: Superficial cleanup of the code. Mostly taking
2620 /* * <Enslish recapituation of the single following C statement> */
2621 <single C statement>
2625 ... <single C statement>
2627 freeglut_main.c still has a lot of that in it, but it looks a bit
2629 * src/freeglut_init.c: Added some error-checking (particularly w.r.t.
2632 Deleted numerous 4-line "padding" sequences of C-as-English trans-
2633 literation comments.
2635 Re-indented some (but not all) code that is using 2-space indentation.
2636 (Most of the freeglut code seems to be using 4-space indentation.)
2638 I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
2639 filled with a ton of over-long lines and also appears to be in more
2640 flux than the rest of the code. (Well, I added one error-check to a
2642 * src/freeglut_font.c: Removed two more bogus "carriage return"
2643 references where the comments were in fact talking about a line feed
2644 (a.k.a. newline, LF, ^J, \n, ...).
2645 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
2646 Fixed the buglet about failing to report the program's name on error-
2647 messages. Please test. (Modified glutInit(), the state structure, and
2648 the warn/err functions.)
2650 2003-10-23 James Jones <puggles@users.sourceforge.net>
2652 * ChangeLog: Released 2.0.1
2654 2003-10-21 Christopher John Purnell
2656 * configure.in, include/GL/Makefile.am, include/GL/freeglut.h,
2657 include/GL/freeglut_std.h, include/GL/glut.h,
2658 progs/demos/Fractals/Makefile.am,
2659 progs/demos/Fractals_random/Makefile.am,
2660 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2661 src/Makefile.am: Added --disable-replace-glut option to autoconf
2664 2003-10-15 James Jones <puggles@users.sourceforge.net>
2666 * NEWS: Noted the release of 2.0.0
2667 * configure.in: Version bump
2671 * src/freeglut_font.c: Swept the freeglut_font.c for comment cleanup: *
2672 Got rid of the "rewrite C as English" comments. * Corrected several
2673 bogus references to "carriage returns" (in strings). The symbols were
2674 newlines or EOLs or LFs (\n). They were *not* carriage returns or CRs
2675 (\r). * Clarified the comments on glBitmap() calls.
2679 * progs/demos/Fractals/fractals.c,
2680 progs/demos/Fractals_random/fractals_random.c: Small bug-fix that's
2683 Modified the two Fractals* demos so that they only clear (for the
2684 random one) or redraw (for the non-random one) if there is need to do
2685 so. (E.g., pressing the space bar should not clear and redraw the
2686 random fractal since no parameters are altered.)
2687 * src/freeglut_cursor.c, src/freeglut_display.c: Removed the obsolete
2688 hack (or very ill-conceived dream), fgDisplayCursor().
2689 * src/freeglut_display.c: Cleaned up some of the style issues (mostly
2690 "fluff" comments) in freeglut_display.c.
2691 * src/freeglut_cursor.c: Comment-cleaning sweep.
2693 Mostly got rid of the say-it-in-English comments that were adding 1
2694 line of English and 2 or 3 lines of filler for each of several lines
2695 of C code. Updated a couple of other comments, and tweaked some
2697 * src/freeglut_callbacks.c: Cleaned up the comments a bit in the
2698 callbacks.c file (mostly removed some of the
2699 kill-4-lines-to-translate-one-line-of-C-into-English comments).
2703 * src/freeglut_cursor.c: Added all missing GLUT cursor types for X11.
2705 (Type NONE is not properly supported, yet.)
2707 Corrected behavior for the several old types: * Wrong glyphs. *
2708 Reversed glyphs (left/right confusion!)
2710 There are some remaining imperfections, but it's a lot closer to GLUT
2715 * src/freeglut_callbacks.c: Three tidying-up changes to the code of
2716 freeglut_callbacks.c; none of them are Earth-shattering, but as I
2717 swept through looking somewhat more systematically for errors, I
2718 picked these off. See the diff's for details.
2719 * src/freeglut_callbacks.c: Fixed a basic readability/style error in the
2720 code. (Two statements per line are almost never a good idea; in this
2721 case the combined line was past 80 columns.)
2722 * src/freeglut_callbacks.c: Added a safety-check on a memory allocation.
2723 (Timers were using dynamic memory allocation but NOT checking the
2725 * src/freeglut_menu.c: Committed two lines from John to help fix the
2727 * src/freeglut_callbacks.c: Check the glutDisplayFunc() callback for
2728 being a NULL pointer. This is illegal and is disallowed in GLUT 3.0+,
2729 so we disallow it too in freeglut 2.0.1+
2733 * progs/demos/Fractals/fractals.c,
2734 progs/demos/Fractals_random/fractals_random.c: Applied John's updated
2735 ReadConfigFile() changes to the fractals demos.
2736 * progs/demos/Fractals_random/fractals_random.c: Fixed: * glutInit()
2737 ordering w.r.t. glutInit*() and {argv} processing. * Aspect ratio. *
2738 Removed depth-buffer usage. (Also done for Fractals in previous
2740 * progs/demos/Fractals/fractals.c: A few minor changes: * glutInit*()
2741 calls should preceed glutInit(), per se, generally. This is so that
2742 glutInit()'s configuration (which picks up on user parameters) can
2743 override application defaults. * glutInit() should be called before
2744 ANY attempt to process {argv, argc}. This is because there may be
2745 GLUT/freeglut parameters (such as "-display" on X11). * If the window
2746 is tall and skinny, rather than short and squat, we need to handle
2747 aspect ratios differently.
2749 The first is a user-interface bug. The second is a serious bug
2750 (especially since the demo assumes that argv[1] contains a filename).
2751 The third is a display bug.
2755 * src/freeglut_main.c: Changed CreateNotify (in X11 ONLY) to act like a
2756 ConfigureNotify event.
2758 This is done so that subwindows on X11 will get "resize" events when
2759 they are created. Old GLUT did this---presumably by design in order to
2760 ensure that (a) All windows get notified of their size as soon as the
2761 window exists, and (b) probably more importantly, so that windows and
2762 sub-windows behave as much alike as possible. I believe that GLUT was
2763 right to do this, and I believe that compatibility requires this (I
2764 have a sample program that breaks in freeglut but not GLUT without
2767 I did not touch the Microsoft side, because I don't know what their OS
2768 does---nor if old GLUT was historically system-dependant about this.
2770 2003-10-08 Eric Sandall
2772 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:217,519,532: Fix menus
2773 to stay in the window (John Fay)
2777 * src/freeglut_menu.c: Several updates from John and myself.
2779 The broad outlines are:
2781 * Color schemes are now in variables, are closer to old GLUT, and are
2782 system dependant (as old GLUT did). * You can change the font to any
2783 bitmapped font more easily, which can aid in finding a better
2784 approximation. (Old GLUT does not seem to have used a GLUT font for
2785 the menus, which causes problems for us.) The menus rescale
2786 automatically, including the triangle "arrow" for sub-menus. * Menus
2787 have real borders, and the placement of highlighting is much improved.
2788 * src/freeglut_main.c: Fixed a bug in the menu callback behavior. Menus
2789 were not setting the current window correctly.
2791 2003-10-06 Eric Sandall
2793 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:328 Fix submenu
2796 2003-10-04 James Jones <puggles@users.sourceforge.net>
2798 * ChangeLog, src/freeglut_main.c, src/freeglut_structure.c: Tweaking for
2799 menu behavior in Linux regarding mouse whatnot - John Fay
2803 * src/freeglut_joystick.c: Applied a patch from "extraeme@netbsd.org" to
2804 add joystick support. Untested, but it compiles for me.
2806 Should also add Joystick support for older FreeBSD systems. Also
2808 * src/freeglut_main.c: Added support for more arbitrary number of mouse
2809 buttons (though only the first three can work with menus), in X. This
2810 closes a compatibility gap with old GLUT, and leaves us the option of
2811 supporting scroll-wheels properly.
2813 2003-09-27 Christopher John Purnell
2815 * progs/demos/Fractals/Makefile.am,
2816 progs/demos/Fractals_random/Makefile.am,
2817 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Don't
2820 2003-09-26 James Jones <puggles@users.sourceforge.net>
2822 * progs/demos/Makefile.am: Package the demos.dsw file.
2823 * progs/demos/demos.dsw: Demos workspace for MSVC users
2827 * src/freeglut_main.c: Corrected a bug w.r.t. display and joystick
2828 events. When getting ready to sleep, we need to go through ALL windows
2829 to check for pending joysticks and to check for pending redisplays. I
2830 was just going through all TOP- LEVEL windows. Eeek. This won't do.
2832 2003-09-23 Brian Paul
2834 * progs/demos/Fractals_random/fractals_random.c: added needClear flag to
2835 take care of initial window clear and window resize clears
2839 * src/freeglut_init.c: Per Nigel Stewart's comments, converted
2841 #ifdef TARGET_HOST_...
2847 in src/freeglut_init.c. These changes should not have any functional
2848 impact at this time, but you don't want bad examples lying around to
2849 trip people up later.
2850 * progs/demos/Fractals_random/fractals_random.c, src/freeglut_main.c,
2851 src/freeglut_window.c: Fixed: * GLUT_SINGLE now should behave more or
2852 less correctly. Thanks to Brian Paul!
2854 * Sleeping is now cognizant of outstanding redisplays.
2856 * Fractals_random has been restored more or less to as-before, save
2857 that it uses the more minimal glFlush() rather than glutSwapBuffers().
2858 glutSwapBuffers() was only required when freeglut was incorrectly
2859 handling promotion to double-buffering.
2863 * src/freeglut_main.c: Moved the #include/#ifdef/#define stuff up to the
2866 Changed #ifdef to #if, per Nigel(?)'s comment. Ooops.
2868 2003-09-22 Christopher John Purnell
2870 * progs/demos/Fractals/Makefile.am,
2871 progs/demos/Fractals_random/Makefile.am,
2872 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Fix to
2873 allow demos to compile before freeglut has been installed.
2875 2003-09-22 James Jones <puggles@users.sourceforge.net>
2877 * progs/demos/Fractals_random/fractals_random.c: Add an idle function to
2878 ensure that the screen gets drawn even when callbacks are not
2879 generated by the mouse/keyboard.
2881 2003-09-21 James Jones <puggles@users.sourceforge.net>
2883 * progs/demos/Fractals/fractals.c,
2884 progs/demos/Fractals_random/fractals_random.c: Note the possible
2885 buffer overflow in window_title
2886 * progs/demos/Fractals/fractals.c: Fix the window title.
2887 * progs/demos/Fractals_random/fractals_random.c: Fix window title, and
2888 ensure that the random integer is not forced to be zero (Thanks
2891 2003-09-20 James Jones <puggles@users.sourceforge.net>
2893 * src/freeglut_main.c: Richard Rauch's patch to ensure that freeglut
2894 does not use 100% CPU even while idling.
2895 * src/freeglut_font.c: Resolution for bug 809561 reported by Nigel
2896 Stewart, regarding a possible array underflow error of -1 in the event
2897 of "character" being zero.
2899 2003-09-14 Christopher John Purnell
2901 * configure.in, progs/demos/Fractals/Makefile.am,
2902 progs/demos/Fractals_random/Makefile.am,
2903 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2904 src/Makefile.am: Removed unused AC_PROG_RANLIB from configure.in Added
2905 passing of $(X_CFLAGS) to compiler.
2907 2003-09-14 James Jones <puggles@users.sourceforge.net>
2909 * include/GL/glut.h: Resolve bug 806008 -- let Microsoft's compiler know
2910 to use Windows libraries even if not using our project files.
2912 2003-09-13 James Jones <puggles@users.sourceforge.net>
2914 * ChangeLog: Taking care of keeping things mostly up-to-date
2915 * TODO: Most everything's been resolved for the 2.0.0 release.
2916 * src/freeglut_joystick.c: Thierry Thomas said that FreeBSD has no
2917 machine/joystick.h, instead a sys/joystick.h. I've made the change --
2918 here's hoping it works.
2919 * progs/demos/One/one.c: Removed the incorrect relative path for
2920 including freeglut.h
2921 * progs/demos/Fractals/Makefile.am,
2922 progs/demos/Fractals_random/Makefile.am,
2923 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Made all
2924 demos compile. Thanks to Thierry Thomas for reporting bug 802809,
2925 which alerted that *none* of the demos compiled automatically!
2926 * src/freeglut_main.c: Nigel Stewart's joystick fix (for hopefully all
2927 platforms), SourceForge bug 805481
2928 * progs/demos/Lorenz/lorenz.dsp, progs/demos/One/one.dsp: Fix location
2929 of the include files from a fixed to relative path. Closes bug 805477
2930 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp, freeglutstatic.dsw:
2931 Add dos line endings. Fixes bug 805476
2933 2003-09-10 Christopher John Purnell
2935 * src/freeglut_joystick.c: A minor fix to that last commit.
2936 * src/freeglut_joystick.c: Removed some remaining glib depandancy.
2938 2003-09-10 James Jones <puggles@users.sourceforge.net>
2940 * src/freeglut_main.c: Re-add catches for the case in which a menu
2941 callback destroys the menu. - John Fay
2943 2003-09-09 Christopher John Purnell
2945 * src/freeglut_main.c: More to fix a deinitialization related crash.
2946 * src/freeglut_structure.c: Fix for a deinitialization related crash.
2948 2003-09-08 James Jones <puggles@users.sourceforge.net>
2950 * src/freeglut_main.c, src/freeglut_structure.c: Menus should deallocate
2951 better now - John Fay
2953 2003-09-05 James Jones <puggles@users.sourceforge.net>
2955 * Makefile.am: Add freeglut_static.dsp to the releases
2957 2003-09-03 Christopher John Purnell
2959 * src/freeglut_gamemode.c: Moved #ifdef for non XFree86 X11 compile.
2961 2003-09-02 Christopher John Purnell
2963 * src/freeglut_window.c: Fix to stop fgSetWindow(NULL) crashing on X11.
2965 2003-08-29 James Jones <puggles@users.sourceforge.net>
2967 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
2968 These change a bunch of assignments to calls to set the current window
2969 correctly, and also (possibly) fixes most of the remaining menu
2971 * src/freeglut_main.c: Another typecast bugfix from John Fay
2973 2003-08-28 Christopher John Purnell
2975 * src/freeglut_init.c: Changed #ifdef to #if
2977 2003-08-28 James Jones <puggles@users.sourceforge.net>
2979 * src/freeglut_font.c: change the GLUT stroke function arguments from
2980 "const char *" to "const unsigned char *" - John Fay
2981 * include/GL/freeglut_ext.h, include/GL/glut.h: Changes stroke function
2982 arguments from "const char*" to "const unsigned char *" - John Fay
2984 2003-08-28 Christopher John Purnell
2986 * freeglut-1.3: Removing files from old freeglut-1.3 directory.
2988 2003-08-28 James Jones <puggles@users.sourceforge.net>
2990 * src/freeglut_callbacks.c, src/freeglut_geometry.c,
2991 src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
2992 src/freeglut_menu.c, src/freeglut_structure.c: Casting changes, John
2995 2003-08-27 James Jones <puggles@users.sourceforge.net>
2997 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
2998 src/freeglut_menu.c: Major overhaul to the menu system, by John Fay
3000 2003-08-27 Christopher John Purnell
3002 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3003 Added double underscores to the header included macros.
3005 2003-08-20 Christopher John Purnell
3007 * src/freeglut_gamemode.c: Minor typo fix
3009 2003-08-19 Christopher John Purnell
3011 * src/freeglut_gamemode.c: Moving that "#if TARGET_HOST_UNIX_X11" to the
3014 2003-08-17 Christopher John Purnell
3016 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
3017 src/freeglut_window.c: Game mode fixes from Bernhard Kaindl and Eric
3020 2003-08-05 Christopher John Purnell
3022 * src/Makefile.am, src/freeglut_menu.c, src/freeglut_window.c,
3023 src/mwmborder.c: Using override_redirect instead of motif wm hints. It
3024 now rasies the menu windows before showing them. Move the show to
3025 after the reshape and position so we don't get a flash of the menu
3026 window at it's old size and position.
3027 * src/mwmborder.c: I suspect a lot of people will not have motif
3030 2003-08-05 Eric Sandall
3032 * ChangeLog, src/Makefile.am, src/freeglut_window.c: (98)
3033 src/Makefile.am:34 Added mwmborder.c (99) src/freeglut_window.c:67
3034 Removed #included "mwmborder.c"
3035 * ChangeLog, src/freeglut_main.c: src/freeglut_main.c:816 and :1571, set
3036 the current window (John F. Fay)
3038 2003-08-04 Christopher John Purnell
3040 * src/freeglut_state.c: Added X11 code for
3041 glutGet(GLUT_WINDOW_BORDER_WIDTH) and
3042 glutGet(GLUT_WINDOW_HEADER_HEIGHT).
3043 * src/freeglut_internal.h, src/freeglut_state.c: Replacing
3044 glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on X11 with
3045 something that works. Also a minor correction to the xf86vidmode
3048 2003-08-04 James Jones <puggles@users.sourceforge.net>
3050 * src/freeglut_window.c: Keep the X11 decoration-zapping code confined
3051 to X11-using platforms! Oops!
3052 * src/freeglut_window.c, src/mwmborder.c: Menus' decorations are removed
3053 on Linux. Not sure if we want the mwmborder.c a separate file or not;
3054 doing it separate for right now. Makefile was not updated, since the
3055 .c is just #included.
3057 2003-08-03 Christopher John Purnell
3059 * configure.in: Got rid of configure warnings when using a newer
3062 2003-08-02 Christopher John Purnell
3064 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Putting
3065 stuff back that was undone with the menu code committed.
3067 2003-08-02 James Jones <puggles@users.sourceforge.net>
3069 * src/freeglut_callbacks.c, src/freeglut_display.c,
3070 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
3071 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
3072 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
3073 Major menu changes (they appear in their own window, have own
3074 rendering context) by John Fay and a little by James C. Jones. They
3075 work perfectly on Win32, and work... on Linux.
3077 2003-08-01 Christopher John Purnell
3079 * configure.in, src/Makefile.am, src/freeglut_glutfont_definitions.c,
3080 src/freeglut_internal.h: Added autoconf detection for the xf86 vid
3083 2003-08-01 Eric Sandall
3085 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c:551 Removed
3086 extra carriage return for Windows users (John F. Fay)
3087 * ChangeLog: Credit Dave Reed for fix
3088 * ChangeLog, src/freeglut_internal.h: src/freeglut_initial.c:91 Added
3089 check for SOLARIS OS
3091 2003-07-23 Christopher John Purnell
3093 * include/GL/glut.h, src/Makefile.am, src/freeglut_font.c,
3094 src/freeglut_glutfont_definitions.c: This should put an end to the
3095 font binary compatibility issue.
3097 2003-07-23 Eric Sandall
3099 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c Windowing
3101 * ChangeLog, doc/Makefile.am: doc/Makefile.am:4 Removed trailing
3102 backslash and added an empty last line
3104 2003-07-23 Brian Paul
3106 * doc/download.html: no change, testing CVS
3108 2003-07-22 Brian Paul
3110 * doc/download.html: no change, just testing CVS
3112 2003-07-22 Eric Sandall
3114 * ChangeLog, freeglut.lsm: freeglut.lsm:3 Removed 'beta' label for next
3115 release, thanks to Bernhard Kaindl.
3117 2003-07-21 Christopher John Purnell
3119 * src/Makefile.am: The version info had the revision and the age
3122 2003-07-21 Eric Sandall
3124 * ChangeLog, src/Makefile.am: src/Makefile.am:38 Changed versioning to
3125 11:0:8 thanks to Bernhard Kaindl
3127 2003-07-17 Eric Sandall
3129 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Applied John F. Fay's
3130 fixes to freeglut.dsp and freeglut_static.dsp
3131 * ChangeLog, src/freeglut_state.c: Changed the overlay
3132 (freeglut_state.c:662) to return FALSE, as it's not imp lemented yet
3134 2003-07-12 Andreas Umbach <marvin@dataway.ch>
3136 * src/Makefile.am: renamed freeglut library to glut, bumped version info
3138 * configure.in: bumped version number to 2.0.0
3139 * Makefile.am, configure.in, doc/Makefile.am, include/GL/Makefile.am,
3140 progs/Makefile.am, progs/demos/Fractals/Makefile.am,
3141 progs/demos/Fractals_random/Makefile.am,
3142 progs/demos/Lorenz/Makefile.am, progs/demos/Makefile.am,
3143 progs/demos/One/Makefile.am, src/Makefile.am: changes for make dist
3144 * freeglut13.plg: MSVC generated file
3146 2003-07-11 Christopher John Purnell
3148 * include/GL/glut.h, src/freeglut_font.c: Fix for the font binary
3149 compatibility problem.
3151 2003-07-10 Christopher John Purnell
3153 * src/Makefile.am: Changed to build libfreeglut.so.2.0.0
3155 2003-07-10 James Jones <puggles@users.sourceforge.net>
3157 * TODO, freeglut.dsp, freeglut_static.dsp: Changes to TODO, Windows
3158 files - from John Fay
3159 * progs/demos/Fractals_random/Fractals_random.dsp: Changes by John Fay
3160 * progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c:
3161 Changes to the Fractals demo by John Fay
3162 * progs/demos/One/one.dsp: Initial project file from John Fay
3163 * progs/demos/Lorenz/lorenz.c, progs/demos/Lorenz/lorenz.dsp:
3164 Modifications from John Fay
3166 2003-07-07 Christopher John Purnell
3168 * src/freeglut_main.c: glutMainLoopEvent() was not closing windows
3169 properly. Moved call to fgCloseWindows() from glutMainLoop() to the
3170 end of glutMainLoopEvent().
3172 2003-07-03 Eric Sandall
3174 * ChangeLog, src/freeglut_misc.c: Removed unused char *ptr from
3177 2003-07-02 Christopher John Purnell
3179 * src/freeglut_main.c: It was crashing on and event for a unknown
3182 2003-07-02 Brian Paul
3184 * src/freeglut_misc.c: rewrite of glutExtensionSupported - works
3187 2003-07-02 Eric Sandall
3189 * ChangeLog: * Removed tests directory
3190 * ChangeLog, Makefile.am, configure.in, progs/demos/One,
3191 progs/demos/One/Makefile.am, progs/demos/One/one.c, tests: * Removed
3192 genfonts/genstrokes code, updated configure.in and Makefile.in
3194 * Moved tests/one.c into progs/demos/One/one.c, updated configure.in
3196 * genfonts: Removed genfonts
3198 2003-07-02 Christopher John Purnell
3200 * genfonts/to_stroke.y: Added some semicolons that yacc was warning
3203 2003-07-01 James Jones <puggles@users.sourceforge.net>
3205 * AUTHORS: John Fay commanded me to add my name to the file. He's crazy,
3208 2003-07-01 Eric Sandall
3210 * ChangeLog, src/freeglut_misc.c: Fixed the 'ptr + len' problem in
3213 2003-07-01 Brian Paul
3215 * doc/freeglut_user_interface.html: version bumps
3216 * tests/Makefile.am: bump version to 2.0
3217 * src/Makefile.am, src/freeglutdll.def: bump versions to 2.0
3218 * src/freeglut_gamemode.c: xf86VidMode error checking (Andrew
3221 2003-06-30 Brian Paul
3223 * progs/demos/Lorenz, progs/demos/Lorenz/lorenz.c,
3224 progs/demos/Lorenz/lorenz.dsp: Lorenz attractor demo (John Fay)
3225 * freeglut.dsp, freeglut_static.dsp: updates from John Fay
3227 2003-06-28 Eric Sandall
3229 * ChangeLog, include/GL/Makefile.am: Now installs freeglut_ext.h and
3230 glut.h to /usr/include/GL (was missing before)
3232 2003-06-27 Brian Paul
3234 * include/GL/freeglut_ext.h, src/freeglut_init.c,
3235 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_state.c,
3236 src/freeglut_stroke_mono_roman.c: XF86 game mode fixes, context
3237 sharing option. (John Fay)
3239 2003-06-25 Eric Sandall
3241 * ChangeLog: Added another of my changes (freeglut.kdevelop) and fixed
3242 the version number for my MS VS change (*.dsp)
3244 2003-06-25 Brian Paul
3246 * src/freeglut_internal.h: version bumps
3247 * freeglut.lsm, include/GL/glut.h, src/freeglut_stroke_mono_roman.c,
3248 src/freeglut_stroke_roman.c: Assorted version 2.0.0 updates (John
3250 * doc/freeglut_user_interface.html: updated version, italicize freeglut
3253 2003-06-25 Eric Sandall
3255 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Added 'freeglut_ext.c'
3256 to the project files 'freeglut.dsp' and 'freeglut_static.dsp' (New
3259 2003-06-24 Andreas Umbach <marvin@dataway.ch>
3261 * ChangeLog: Fixed autogen.sh and removed aclocal.m4
3262 * aclocal.m4: this file is autogenerated by aclocal
3263 * autogen.sh: fixed aclocal / autoheader order; some cosmetics
3265 2003-06-24 Eric Sandall
3267 * freeglut.kdevelop: Project file for Gideon (KDevelop 3.0)
3269 2003-06-23 Eric Sandall
3271 * ChangeLog, Makefile.am, TODO, configure.in, freeglut.dsp,
3272 freeglut.kdevprj, freeglut13.dsp, freeglut13.plg, freeglut_static.dsp,
3273 freeglutdll.dsp, src, src/Makefile.am, src/freeglut_callbacks.c,
3274 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
3275 src/freeglut_font.c, src/freeglut_font_data.c,
3276 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
3277 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
3278 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_overlay.c,
3279 src/freeglut_state.c, src/freeglut_stroke_mono_roman.c,
3280 src/freeglut_stroke_roman.c, src/freeglut_structure.c,
3281 src/freeglut_teapot.c, src/freeglut_videoresize.c,
3282 src/freeglut_window.c, src/freeglutdll.def, src/templates,
3283 src/templates/cpp_template, src/templates/header_template,
3284 tests/Makefile.am: Changed all references to the 'freeglut-1.3'
3285 directory to 'src', copied 'freeglut-1.3' to 'src' and added all files
3286 from 'src' to the repository (TODO #34).
3287 * ChangeLog: Updated ChangeLog with my aclocal.m4 change
3288 * aclocal.m4: Updated aclocal.m4 with aclocal 1.7.3 (was created with
3291 2003-06-23 Brian Paul
3293 * freeglut-1.3/freeglut_geometry.c: adjusted precision (John Fay)
3294 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3295 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3296 freeglut-1.3/freeglut_teapot.c, include/GL/freeglut_ext.h,
3297 include/GL/glut.h: Assorted updates from John Fay.
3299 2003-06-20 Eric Sandall
3301 * TODO: Updated TODO from John Fay
3303 2003-06-20 Brian Paul
3305 * progs, progs/demos, progs/demos/Fractals,
3306 progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c,
3307 progs/demos/Fractals/fractals.dat, progs/demos/Fractals_random,
3308 progs/demos/Fractals_random/Fractals_random.dsp,
3309 progs/demos/Fractals_random/fractals.dat,
3310 progs/demos/Fractals_random/fractals_random.c: Fractal demo (John Fay)
3312 2003-06-20 Eric Sandall
3314 * ChangeLog: Added the autogen.sh addition to ChangeLog
3315 * autogen.sh: Initial version of autogen.sh, tested here and creates the
3318 2003-06-20 Brian Paul
3320 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_state.c:
3321 Windows patches (Eero Pajarre)
3322 * NEWS: list the 1.4 release (fill in date) - this is a cvs check-in
3325 2003-06-19 Don Heyse <dheyse@hotmail.com>
3327 * freeglut-1.3/freeglut_joystick.c: Oops, missed the
3328 fghJoystickRawRead() fix for FreeBSD.
3330 2003-06-19 Brian Paul
3332 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3333 freeglut-1.3/freeglut_ext.c, freeglut-1.3/freeglut_internal.h,
3334 freeglut-1.3/freeglut_main.c: s/FreeGLUT/freeglut/
3336 2003-06-19 Don Heyse <dheyse@hotmail.com>
3338 * freeglut-1.3/freeglut_joystick.c: Applied tthierry's patch to fix
3339 compiling on FreeBSD.
3341 2003-06-19 Brian Paul
3343 * freeglut-1.3/freeglut_internal.h: added VERSION_MAJOR/MINOR/PATCH
3344 * doc/freeglut_user_interface.html: restore text lost from previous
3346 * include/GL/glut.h: s/FREEGLUT_VERSION_1_3/FREEGLUT_VERSION_1_4/
3348 2003-06-19 Eric Sandall
3350 * include/GL/freeglut_ext.h, include/GL/glut.h: GLUT_VERSION updates
3353 2003-06-18 Eric Sandall
3355 * AUTHORS: Forgot a file...looked so innocous just sitting there... :)
3356 * ChangeLog, doc/freeglut_user_interface.html,
3357 freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_ext.c,
3358 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_menu.c,
3359 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_teapot.c,
3360 freeglut-1.3/freeglut_window.c, include/GL/freeglut_ext.h: * Hopefully
3361 I did THIS one right (used 'cvs update' to Merge)
3363 Authors - The first update in quite a while
3365 ChangeLog - Added the recent changes
3367 freeglut_callbacks.c - Added Aleksandar Donev's menu destruction
3370 freeglut_internal.h - Added the user data to the structures and made
3371 the menu state/status callbacks window-independent
3373 freeglut_menu.c - Removed several OpenGL compiler warnings and added
3374 A. Donev's menu user data functions
3376 freeglut_structure.c - Added Aleksandar Donev's menu destruction
3379 freeglut_teapot.c - Removed or suppressed several compiler warnings
3381 freeglut_window.c - Updated the window positioning code and added A.
3382 Donev's window user data
3384 freeglut_ext.h - Added the menu destruction callback and user data
3386 * freeglut-1.3/freeglut_ext.h: * Removed freeglut_ext.h (wasn't supposed
3389 2003-06-18 Brian Paul
3391 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_internal.h,
3392 freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h,
3393 include/GL/glut.h: Added FREEGLUT_VERSION_1_3. Added GLUT_VERSION for
3394 glutGet(). Added glutGet() documentation.
3395 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_ext.h,
3396 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_internal.h,
3397 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_state.c,
3398 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3399 remove DOS-style CR characters
3400 * doc/freeglut_user_interface.html: added glutGetProcAddress and
3402 * ChangeLog: added glutGetProcAddress() and GLUT_FPS
3404 2003-06-17 Brian Paul
3406 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3407 freeglut-1.3/freeglut_internal.h: restore GLUT_FPS env var feature
3408 lost in previous check-in
3410 2003-06-17 Eric Sandall
3412 * ChangeLog: * Updated ChangeLog
3413 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: Set
3414 #4: * Fixes a couple of compiler warnings and other bugs. *
3415 freeglut_main.c: Removes a compiler warning * freeglut_structure.c:
3416 Sets the current window before calling the window closure callback *
3417 Possibly other changes
3418 * freeglut-1.3/freeglut_ext.h: * Rest of Set #3
3419 * freeglut-1.3/freeglut_state.c: Set #3: Fixes for window positioning
3421 * freeglut-1.3/freeglut_init.c: Eero Pajarre's GLUT_ICON code for
3423 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3424 freeglut-1.3/freeglut_window.c: First group of patches: Adds
3425 single-buffered rendering (or its emulation) in Windows.
3427 2003-06-17 Brian Paul
3429 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3430 freeglut-1.3/freeglut_internal.h: added GLUT_FPS env var option
3431 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_ext.c,
3432 include/GL/freeglut_ext.h: added glutGetProcAddress()
3434 2003-06-12 Don Heyse <dheyse@hotmail.com>
3436 * freeglut-1.3/freeglut_main.c: Fix the keyboard up callback and a
3438 * freeglut-1.3/freeglut_structure.c: Set the current window before
3439 calling the window closure callback.
3440 * freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h: John's
3441 window positioning corrections.
3442 * freeglut-1.3/freeglut_init.c: Eero Pajarre's icon code.
3443 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3444 freeglut-1.3/freeglut_window.c: Single buffered rendering for Windows.
3446 2003-06-02 Don Heyse <dheyse@hotmail.com>
3448 * doc/freeglut_user_interface.html: John Documented InitWindowPosition
3449 extensions and added some kbd fn info.
3450 * ChangeLog: Documented Johns changes from May 03.
3451 * freeglut-1.3/freeglut_state.c: Do not allow glutGet to reposition the
3452 window 1 pixel toward bottom right.
3453 * freeglut-1.3/freeglut_main.c: Pass mouse pos to Windows kbd callback.
3454 Resequenced a few things for UNIX.
3456 2003-03-23 Christopher John Purnell
3458 * freeglut-1.3/freeglut_gamemode.c: Applied patch to fix GameMode issues
3459 supplied by Bernhard Kaindl.
3461 2003-03-12 Don Heyse <dheyse@hotmail.com>
3463 * include/GL/glut.h: Switch to ANSI C comments.
3464 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3465 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_geometry.c,
3466 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_joystick.c,
3467 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c,
3468 freeglut-1.3/freeglut_window.c: Switch to ANSI C comments. Removed
3469 always true tests on unsigned char. Single buffering fix..
3471 2003-02-13 Don Heyse <dheyse@hotmail.com>
3473 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp: Switching to John
3474 Fays version of the VC++ project files.
3476 2003-02-08 Steve Baker <steve@sjbaker.org>
3478 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_joystick.c:
3479 Removed erroneous GPL license comments.
3481 2003-02-07 Don Heyse <dheyse@hotmail.com>
3483 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3484 freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_font_data.c,
3485 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3486 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3487 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3488 freeglut-1.3/freeglut_stroke_mono_roman.c,
3489 freeglut-1.3/freeglut_stroke_roman.c, freeglut-1.3/freeglut_teapot.c,
3490 freeglut-1.3/freeglut_videoresize.c: Moved freeglut_internal.h to the
3491 freeglut source code private directory.
3492 * freeglut-1.3/freeglut_structure.c: SubWindow border thickness fix.
3493 Overlay changes in glutGet.
3494 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3495 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_window.c: Johns
3496 changes for layers, fgSetWindow, and fgSetupPixelFormat.
3497 * freeglut-1.3/freeglut_font.c: John fixed a bug that make bitmap font
3498 one pixel wider than its drawn.
3499 * freeglut-1.3/freeglut_internal.h, include/GL/freeglut_internal.h:
3500 Moved freeglut_internal.h to the private directory with the other
3502 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3503 Broke freeglut.h into glut.h and freeglut_ext.h
3505 2003-01-06 Don Heyse <dheyse@hotmail.com>
3507 * freeglut-1.3/freeglutdll.def: Exports file for Win32 dll. One EXPORT
3508 for each FGAPI line in freeglut.h
3510 2003-01-04 Steve Baker <steve@sjbaker.org>
3512 * aclocal.m4, freeglut-1.3/freeglut_joystick.c: Cleanup joystick
3515 2002-12-10 Don Heyse <dheyse@hotmail.com>
3517 * freeglut.dsw, freeglutdll.dsp: Allow DLL and static library build on
3519 * include/GL/freeglut.h: Added check for FREEGLUT_DLL to allow static &
3520 DLL build on Windows.
3522 2002-12-04 Don Heyse <dheyse@hotmail.com>
3524 * freeglut-1.3/freeglut_font_data.c: More bitmap font spacing fixes from
3527 2002-11-29 Don Heyse <dheyse@hotmail.com>
3529 * freeglut-1.3/freeglut_init.c: Fixed Win95 crash when getenv("DISPLAY")
3531 * freeglut-1.3/freeglut_font_data.c: The lowercase t in helvetica12 was
3533 * freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c:
3534 Adjusted character spacing on a few fonts.
3535 * ChangeLog: Many updates from John Fay.
3536 * freeglutstatic.dsw: Added Visual C++ 6 Static library project for John
3539 2002-11-28 Don Heyse <dheyse@hotmail.com>
3541 * freeglut.dsp: Visual C++ 6 project file for static freeglut lib.
3542 * include/GL/freeglut.h, include/GL/freeglut_internal.h: Many updates
3543 from John Fay. (freeglut.h may need a small change to allow Win32 DLL
3545 * freeglut-1.3/freeglut_geometry.c: Many updates from John Fay.
3546 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3547 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3548 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3549 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3550 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3551 freeglut-1.3/freeglut_stroke_mono_roman.c,
3552 freeglut-1.3/freeglut_stroke_roman.c,
3553 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3554 Many updates from John Fay.
3555 * freeglut-1.3/freeglut_joystick.c: Fixes from freeglut_portable patch.
3556 Memory leak fix from John. Return_if_fail fix.
3558 2002-11-26 Don Heyse <dheyse@hotmail.com>
3560 * doc/freeglut_user_interface.html: Added on behalf of John Fay.
3562 2002-10-22 Don Heyse <dheyse@hotmail.com>
3564 * freeglut-1.3/freeglut_geometry.c: Implemented tetrahedra, octahedra,
3565 dodecahedra, and icosahedra. Checked in on behalf of John F. Fay
3566 <john.fay@eglin.af.mil>.
3568 2002-05-20 Don Heyse <dheyse@hotmail.com>
3570 * freeglut-1.3/freeglut_font.c: Fixed previous fix so it compiles.
3572 2002-05-20 Christopher John Purnell
3574 * freeglut-1.3/freeglut_font.c: My bad.
3576 2002-05-18 Christopher John Purnell
3578 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_font.c,
3579 freeglut-1.3/freeglut_stroke_mono_roman.c,
3580 freeglut-1.3/freeglut_stroke_roman.c, genfonts/Roman_M.src,
3581 genfonts/lex.l, genfonts/to_stroke.y, genfonts/wfont.h,
3582 include/GL/freeglut.h, include/GL/freeglut_internal.h: Added stroke
3585 2002-05-17 Christopher John Purnell
3587 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3588 freeglut-1.3/freeglut_overlay.c, freeglut-1.3/freeglut_teapot.c,
3589 freeglut-1.3/freeglut_videoresize.c, tests/one.c: Removed some DOS
3592 2002-05-16 Christopher John Purnell
3594 * freeglut-1.3/freeglut_main.c: Removed one last glib call.
3596 2002-01-20 Steve Baker <steve@sjbaker.org>
3598 * README, freeglut-1.3/.deps/freeglut_callbacks.P,
3599 freeglut-1.3/.deps/freeglut_cursor.P,
3600 freeglut-1.3/.deps/freeglut_display.P,
3601 freeglut-1.3/.deps/freeglut_font.P,
3602 freeglut-1.3/.deps/freeglut_font_data.P,
3603 freeglut-1.3/.deps/freeglut_gamemode.P,
3604 freeglut-1.3/.deps/freeglut_geometry.P,
3605 freeglut-1.3/.deps/freeglut_init.P,
3606 freeglut-1.3/.deps/freeglut_joystick.P,
3607 freeglut-1.3/.deps/freeglut_main.P,
3608 freeglut-1.3/.deps/freeglut_menu.P,
3609 freeglut-1.3/.deps/freeglut_misc.P,
3610 freeglut-1.3/.deps/freeglut_overlay.P,
3611 freeglut-1.3/.deps/freeglut_state.P,
3612 freeglut-1.3/.deps/freeglut_structure.P,
3613 freeglut-1.3/.deps/freeglut_teapot.P: Removed a bunch of '.P' files
3614 that don't belong in the CVS archive.
3616 2001-08-05 Christopher John Purnell
3618 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_main.c,
3619 freeglut-1.3/freeglut_window.c, include/GL/freeglut_internal.h: Added
3620 keyup events code. Added missing specal keys. Made menu callbacks
3622 * freeglut-1.3/freeglut_window.c: More position tweeks.
3624 2001-08-04 Christopher John Purnell
3626 * freeglut-1.3/freeglut_main.c, include/GL/freeglut.h: Fixed redisplay
3627 bug. Fixed modifier values.
3628 * freeglut-1.3/freeglut_window.c: Improved window positioning.
3630 2001-07-30 Christopher John Purnell
3632 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: A
3635 2001-07-30 Andreas Umbach <marvin@dataway.ch>
3637 * freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_main.c: one more
3639 * include/GL/freeglut_internal.h: removed glib dependencies from win32
3640 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3641 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_window.c: -
3642 removed glib dependencies from win32 code
3644 2001-07-29 Christopher John Purnell
3646 * freeglut-1.3/freeglut_structure.c: Fixed bug list code.
3647 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3648 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3649 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3650 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3651 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3652 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3653 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c,
3654 genfonts/Makefile.am, genfonts/genfonts.c, genfonts/genstroke.c,
3655 include/GL/freeglut.h, include/GL/freeglut_internal.h: Removed glib
3657 * configure.in, freeglut-1.3/Makefile.am, genfonts/Makefile.am: The
3658 build system now looks for X.
3660 2001-07-27 Steve Baker <steve@sjbaker.org>
3662 * doc, doc/download.html, doc/freeglut.html, doc/freeglut_logo.png,
3663 doc/index.html, doc/ogl_sm.png, doc/progress.html, doc/structure.html:
3665 * genfonts/.deps, tests/.deps: Removed some more files that don't belong
3667 * configure, freeglut-1.3/Makefile, freeglut-1.3/Makefile.in,
3668 genfonts/Makefile, genfonts/Makefile.in, include/GL/Makefile,
3669 include/GL/Makefile.in, include/Makefile, include/Makefile.in,
3670 tests/Makefile, tests/Makefile.in: Removed files checked in in error.
3671 * freeglut-1.3/.deps, freeglut-1.3/.deps/freeglut_callbacks.P,
3672 freeglut-1.3/.deps/freeglut_cursor.P,
3673 freeglut-1.3/.deps/freeglut_display.P,
3674 freeglut-1.3/.deps/freeglut_font.P,
3675 freeglut-1.3/.deps/freeglut_font_data.P,
3676 freeglut-1.3/.deps/freeglut_gamemode.P,
3677 freeglut-1.3/.deps/freeglut_geometry.P,
3678 freeglut-1.3/.deps/freeglut_init.P,
3679 freeglut-1.3/.deps/freeglut_joystick.P,
3680 freeglut-1.3/.deps/freeglut_main.P,
3681 freeglut-1.3/.deps/freeglut_menu.P,
3682 freeglut-1.3/.deps/freeglut_misc.P,
3683 freeglut-1.3/.deps/freeglut_overlay.P,
3684 freeglut-1.3/.deps/freeglut_state.P,
3685 freeglut-1.3/.deps/freeglut_structure.P,
3686 freeglut-1.3/.deps/freeglut_teapot.P,
3687 freeglut-1.3/.deps/freeglut_videoresize.P,
3688 freeglut-1.3/.deps/freeglut_window.P, freeglut-1.3/Makefile,
3689 freeglut-1.3/Makefile.in: Initial revision
3690 * ., AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
3691 TODO, acconfig.h, aclocal.m4, configure, configure.in, freeglut-1.3,
3692 freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3693 freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3694 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3695 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3696 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3697 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3698 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3699 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_structure.c,
3700 freeglut-1.3/freeglut_teapot.c, freeglut-1.3/freeglut_videoresize.c,
3701 freeglut-1.3/freeglut_window.c, freeglut-1.3/templates,
3702 freeglut-1.3/templates/cpp_template,
3703 freeglut-1.3/templates/header_template, freeglut.dsw,
3704 freeglut.kdevprj, freeglut.lsm, freeglut13.dsp, freeglut13.plg,
3705 genfonts, genfonts/.deps, genfonts/.deps/genfonts.P,
3706 genfonts/.deps/genstroke.P, genfonts/Makefile, genfonts/Makefile.am,
3707 genfonts/Makefile.in, genfonts/Roman.src, genfonts/Roman_M.src,
3708 genfonts/genfonts.c, genfonts/genstroke.c, include, include/GL,
3709 include/GL/Makefile, include/GL/Makefile.am, include/GL/Makefile.in,
3710 include/GL/freeglut.h, include/GL/freeglut_internal.h,
3711 include/Makefile, include/Makefile.am, include/Makefile.in,
3712 install-sh, mkinstalldirs, stamp-h, stamp-h.in, tests, tests/.deps,
3713 tests/.deps/one.P, tests/Makefile, tests/Makefile.am,
3714 tests/Makefile.in, tests/one.c: Initial revision