1 2009-05-22 Sven Panne <sven.panne@aedion.de>
2 * include/GL/freeglut_std.h,src/freeglut_init.c,src/freeglut_internal.h,
3 src/freeglut_menu.c,src/freeglut_window.c,src/freeglutdll.def: Added the
4 ugly ATEXIT_HACK from GLUT 3.7, making freeglut binary compatible with the
5 GLUT DLLs out in the wild.
7 * src/freeglutdll.def: Removed obsolete lines. Fixed version number.
9 * freeglut_vs2008.vcproj: Use our module definition file, so we get
10 undecorated names in the resulting DLL, just like the classic GLUT DLL
13 2009-04-05 Sven Panne <sven.panne@aedion.de>
15 * Makefile.am: Added more project/workspace/... files to distribution.
16 * .cvsignore,doc/.cvsignore,include/.cvsignore,include/GL/.cvsignore,
17 progs/.cvsignore,progs/demos/.cvsignore,
18 progs/demos/CallbackMaker/.cvsignore,progs/demos/Fractals/.cvsignore,
19 progs/demos/Fractals_random/.cvsignore,progs/demos/Lorenz/.cvsignore,
20 progs/demos/One/.cvsignore,progs/demos/shapes/.cvsignore,
21 src/.cvsignore: Removed remnants of CVS.
23 2009-03-30 Sven Panne <sven.panne@aedion.de>
25 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make the example fully
28 2009-03-27 Sven Panne <sven.panne@aedion.de>
30 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make Visual C happy by
31 including stddef.h and explicitly marking some literals as float.
33 2009-03-26 Sven Panne <sven.panne@aedion.de>
35 * src/freeglut_init.c,src/freeglut_input_devices.c: Unbreak the build:
36 C++ style comments are not allowed in ISO C90
38 2009-03-19 John F. Fay <john.fay.ctr@eglin.af.mil>
40 * src/freeglut_input_devices.c: Fixing "freeglut_input_devices.c" for
41 MSVS2005 and later per e-mail from Diederick Niehorster dated Thu
44 2009-03-17 John F. Fay <john.fay.ctr@eglin.af.mil>
46 * src/freeglut_init.c, src/freeglut_input_devices.c: Removing some build
47 warnings from deprecated functions for VS2008 per e-mail from
48 Diederick Niehorster dated Tue 3/10/2009
49 * freeglut_static_vs2008.vcproj, freeglut_vs2008.sln,
50 freeglut_vs2008.vcproj,
51 progs/demos/CallbackMaker/CallbackMakerStatic_vs2008.vcproj,
52 progs/demos/CallbackMaker/CallbackMaker_vs2008.vcproj,
53 progs/demos/Fractals/FractalsStatic_vs2008.vcproj,
54 progs/demos/Fractals/Fractals_vs2008.vcproj,
55 progs/demos/Fractals_random/Fractals_randomStatic_vs2008.vcproj,
56 progs/demos/Fractals_random/Fractals_random_vs2008.vcproj,
57 progs/demos/Lorenz/lorenzStatic_vs2008.vcproj,
58 progs/demos/Lorenz/lorenz_vs2008.vcproj,
59 progs/demos/One/oneStatic_vs2008.vcproj,
60 progs/demos/One/one_vs2008.vcproj, progs/demos/demos_vs2008.sln,
61 progs/demos/shapes/shapesStatic_vs2008.vcproj,
62 progs/demos/shapes/shapes_vs2008.vcproj,
63 progs/demos/smooth_opengl3/smooth_opengl3Static_vs2008.vcproj,
64 progs/demos/smooth_opengl3/smooth_opengl3_vs2008.vcproj: Adding Visual
65 Studio 2008 solution and project files
67 2009-03-16 Sven Panne <sven.panne@aedion.de>
69 * src/freeglut_init.c,src/freeglut_window.c: Set the default number of
70 samples per pixel to 4 and actually use the value set with
71 glutSetOption(GLUT_MULTISAMPLE,...) in Windows code. Previously the
72 Windows code used a hardwired value of 4 and the GLX code had a
73 default of 0, neither made much sense. Similarly, set the default
74 number of auxiliary buffers to 1 and use that value when GLUT_AUX is
75 used. Note: There latter token has the same value as GLUT_AUX1, and
76 for historical reasons we seem to have 2 APIs to set the number of
77 auxiliary buffers: Explicitly using GLUT_AUX1 ... GLUT_AUX4, and using
78 a combination of GLUT_AUX with glutSetOption. The default of 1 ensures
79 consistent behaviour in both cases.
80 * src/freeglut_state.c: Added GLUT_AUX and GLUT_MULTISAMPLE as possible
81 parameters for glutGet, making things more symmetric with
83 * src/freeglutdll.def: Added missing API entries.
85 2009-03-10 John F. Fay <john.fay.ctr@eglin.af.mil>
87 * progs/demos/demos.dsw: Adding the "smooth_opengl3" demo
89 2009-03-09 John F. Fay <john.fay.ctr@eglin.af.mil>
91 * include/GL/freeglut_std.h: Making the definition of
92 "WIN32_LEAN_AND_MEAN" conditional to enhance compatibility with GLEW
93 per suggestion by Diederick C. Niehorster in e-mail dated Mon 3/9/2009
95 * progs/demos/Fractals/fractals.c: Setting the "fractals" demo initial
96 number of levels to 4 per suggestion from Diederick C. Niehorster
97 [diederick@niehorster.eu] in e-mail dated Mon 3/9/2009 5:29 AM
99 2009-03-01 John F. Fay <john.fay.ctr@eglin.af.mil>
101 * progs/demos/CallbackMaker/CallbackMaker.c,
102 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Fixing
103 Microsoft compatibility with the new "vsnprintf" by putting an
104 underscore in front of it if WIN32 is defined but __CYGWIN__ is not
106 2009-03-01 Sven Panne <sven.panne@aedion.de>
108 * configure.ac: We do not depend on GLU anymore
109 * README.win32: Added notes for building under Cygwin
110 * src/Makefile.am: To build shared libraries on Windows, one has to
111 declare explicitly that there are no undefined symbols during linking.
112 No idea why, but this seems to be the only way to enable this on
113 Cygwin via -mno-cygwin. Hopefully this won't cause problems on other
114 platforms (which has to be tested).
115 * progs/demos/smooth_opengl3/smooth_opengl3.c: Windows fun again: Use
116 the correct calling convention for OpenGL extension entries.
118 2009-02-28 Sven Panne <sven.panne@aedion.de>
120 * progs/demos/smooth_opengl3/smooth_opengl3.c: When -mno-cygwin is used,
121 we get ancient GL headers, so be a bit more conservative.
122 * progs/demos/Fractals_random/fractals_random.c,
123 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c:
124 _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin
125 doesn't provide them.
126 * src/freeglut_window.c: Do not try to destroy a GLX context when there
127 is none, e.g. when glXCreateContextAttribsARB is not there.
128 * src/freeglut_joystick.c: Use snprintf or _snprintf instead of the
129 potentially dangerous sprintf to avoid warnings.
131 NOTE: Due to excessive use of #ifdefs, the joystick code is on the
132 border of being unmaintainable! I could only check that it compiles
133 cleanly on my Linux box. Others should test this on their platforms
134 (Windows, Mac OS X, *BSD) to make sure that nothing has been broken.
135 * progs/demos/CallbackMaker/CallbackMaker.c,
136 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Use
137 vsnprintf instead of the potentially dangerous sprintf to avoid
138 warnings. Using snprintf directly would be a little bit more tricky,
139 because once again Microsoft decided to avoid followind standards and
140 provide _snprintf instead. We could use this, too, but this would
141 require an additional autoconf check, which I'd like to avoid, if
144 Note: If VS *still* issues warnings, but this time about vsnprintf,
145 somebody should add some pragmas or whatever is needed to shut up that
146 warning, it would be silly.
147 * progs/demos/Lorenz/lorenz.c: Position the distance message closer to
148 the middle of the window, it has been far, far off to the upper right.
149 * src/freeglut_internal.h: Synched version number with configure.ac. We
150 should better remove this redundancy and calculate this from
151 configure.ac directly.
153 2009-02-19 John F. Fay <john.fay.ctr@eglin.af.mil>
155 * progs/demos/smooth_opengl3/smooth_opengl3.dsp,
156 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Fixing the
157 DOS/Linux line ending problems in the progs/demos/smooth_opengl3
160 2009-02-18 John F. Fay <john.fay.ctr@eglin.af.mil>
162 * src/freeglut_window.c: Fixing a build error caused by a variable
163 declaration being out of place
165 2009-02-15 Sven Panne <sven.panne@aedion.de>
167 * progs/demos/smooth_opengl3/smooth_opengl3.c: Final changes to make the
168 example fully OpenGL-3.0-compliant:
170 * Use vertex attribute arrays.
172 * Use our own projection matrix.
174 * Do not use deprecated vertex/fragment shader variables.
175 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use GLSL shaders (still
176 1.20, though). Dump GL info.
177 * progs/demos/smooth_opengl3/smooth_opengl3.c: Added a commandline
178 option for 'classic' contexts. Aesthetic changes.
179 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use VBOs in new example.
180 Added a few comments.
182 2009-02-14 Sven Panne <sven.panne@aedion.de>
184 * configure.ac, progs/demos/Makefile.am, progs/demos/smooth_opengl3,
185 progs/demos/smooth_opengl3/Makefile.am,
186 progs/demos/smooth_opengl3/smooth_opengl3.c,
187 progs/demos/smooth_opengl3/smooth_opengl3.dsp,
188 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Initial version
189 of a fully OpenGL-3.0-compliant of the famous smooth.c from the Red
190 Book. What has been done already:
192 * Explicitly request a forward-compatible 3.0 context
194 * Report GL errors, if any, at a few crucial places
196 * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf
198 What remains to be done:
200 * Use vertex shaders and fragment shaders
202 * Use vertex buffer objects
204 2009-02-13 Sven Panne <sven.panne@aedion.de>
206 * README: Mention autogen.sh
207 * src/freeglut_window.c: Synchronized WGL behavior with GLX
208 implementation: Do not call the new context creation API when it is
209 not required. Fixing a bug in a previous commit on the way... :-}
210 * src/freeglut_internal.h, src/freeglut_window.c: More refactorings:
211 Removed useless return value. Simplified control structures even more.
212 * src/freeglut_window.c: Refactoring only (replace nested conditionals
213 with guard clauses), making the normal path of execution much clearer.
214 * configure.ac: We have added some API entries, so we have to update
215 library version information conforming to
216 http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
217 * autogen.sh, configure.ac: Avoid CR\LF vs. LF troubles when using
218 TortoiseSVN plus Cygwin.
219 * .: Ignore config.lt, too. It seems to be generated by recent
222 2009-02-13 John F. Fay <john.fay.ctr@eglin.af.mil>
224 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
225 Adding OpenGL 3.0 context detection for Windows per e-mail from Paul
226 Martz dated Thu 2/12/2009 9:03 AM (more or less)
228 2009-02-03 John F. Fay <john.fay.ctr@eglin.af.mil>
230 * README: Adding some instructions about building on a *nix platform to
232 * include/GL/freeglut_ext.h, src/freeglut_main.c: Removing some errant
233 tabs, fixing ticket #2137721, and adding special-key capability to
234 recognizing the NumLock, Delete, and keypad '5' keys
235 * src/freeglut_joystick.c, src/freeglut_main.c: A further response to
236 bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment
237 by Nigel Stewart on that bug report
239 2009-02-02 John F. Fay <john.fay.ctr@eglin.af.mil>
241 * src/freeglut_internal.h, src/freeglut_joystick.c: Fixing bug [ 1804696
242 ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel
245 2008-11-20 Sven Panne <sven.panne@aedion.de>
247 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Yet
248 another try to make the font definitions compile on all platforms.
250 2008-11-17 John F. Fay <john.fay.ctr@eglin.af.mil>
252 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Allowing
253 "freeglut" to compile without errors under *nix. Before this, there
254 were problems with conflicting definitions of the GLUT font
257 2008-11-06 Sven Panne <sven.panne@aedion.de>
259 * src/freeglut_main.c: Ooops, forgot one file in the previous commit
260 (fix for "--without-x").
261 * configure.ac: Use autoconf to detect gettimeofday instead of broken
264 Note: freeglut compiles under Cygwin now, even when "--without-x" is
265 used for configuration.
266 * configure.ac: We need to link against winmm under Cygwin when
267 --without-x is used to get timeBeginPeriod, timeEndPeriod, joyGetPosEx
269 * src/freeglut_window.c: Fixed first parameter of CreateWindow call,
270 used for multisampling on Windows. It compiles, but it is otherwise
273 2008-11-05 Sven Panne <sven.panne@aedion.de>
275 * src/freeglut_misc.c: Be conservative about the presence of
277 * src/freeglut_glutfont_definitions.c, src/freeglut_stroke_mono_roman.c,
278 src/freeglut_stroke_roman.c: freeglut_internal.h needs some GL types,
279 but it is not self-contained. TODO: Move freeglut.h #include into
280 freeglut_internal.h itself?
281 * src/freeglut_window.c: Removed the annoying "Unable to create direct
282 context rendering..." warning, it served no real purpose, and on some
283 platforms there simply is no such thing as a direct context.
284 * progs/demos/CallbackMaker, progs/demos/Fractals,
285 progs/demos/Fractals_random, progs/demos/Lorenz, progs/demos/One,
286 progs/demos/shapes: Ignore *.exe
287 * src/freeglut_ext.c: Handle new glutInitContext* API entries in
289 * src/freeglut_internal.h: Make freeglut compile under Cygwin, which has
290 an ancient GLX header
292 2008-11-02 Sven Panne <sven.panne@aedion.de>
294 * include/GL/freeglut_ext.h, src/freeglut_init.c,
295 src/freeglut_internal.h, src/freeglut_state.c, src/freeglut_window.c:
296 Added OpenGL 3.0 context creation API entries
298 glutInitContextVersion, glutInitContextFlags
300 and their related constants
302 GLUT_INIT_MAJOR_VERSION GLUT_INIT_MINOR_VERSION GLUT_INIT_FLAGS
304 GLUT_DEBUG GLUT_FORWARD_COMPATIBLE
306 Note that this works with GLX only currently, the glutInitContext* API
307 entries have no effect for WGL yet.
309 TODO: Centralize the context creation code for WGL (the harder part)
310 and use the new wglCreateContextAttribsARB API entry (the easy part,
311 re-use most of the GLX code).
312 * src/freeglut_window.c: Refactored GLX context creation into a single
313 function, centralizing things to be changed for OpenGL 3.0 context
314 creation and removing some cut-n-paste.
315 * src/freeglut_ext.c, src/freeglut_internal.h: Make a
316 wgl/glXGetProcAddress abstraction available internally. We will need
317 this to get the new context creation function.
318 * src/freeglut_misc.c: Do not depend on GLU, it will vanish in the
319 future, at least in its current form.
320 * src/freeglut_internal.h: Removed superfluous #includes.
321 * configure.ac: Fix for bug #1709675 ("probably not be so
322 ISO-conformant"): The C compiler flag -Werror is not used by default
323 anymore, a separate configure flag --enable-warnings-as-errors has
324 been introduced for this purpose, which is off by default.
325 * configure.ac: Added AM_PROG_CC_C_O to configure.ac, removing a warning
326 during autogen.sh. This flag seems to be necessary for per-target
327 flags (used in demo programs) nowadays.
329 2008-07-21 John F. Fay <john.fay.ctr@eglin.af.mil>
331 * configure.ac, src/Makefile.am: Implementing a patch from Jocelyn
332 Frechot (thank you, Jocelyn) that "should enable the XInput extension
333 management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
335 2008-07-10 John F. Fay <john.fay.ctr@eglin.af.mil>
337 * src/freeglut_ext.c: Adding "glutExit" to the functions in
338 "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot
339 dated Tue 7/8/2008 12:26 PM
341 2008-04-05 John F. Fay <john.fay.ctr@eglin.af.mil>
343 * src/freeglut_main.c: Adding "SC_MONITORPOWER" and other new options to
344 the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
346 2007-12-02 John F. Fay <john.fay.ctr@eglin.af.mil>
348 * include/GL/freeglut_ext.h, src/freeglut_display.c, src/freeglut_ext.c,
349 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
350 src/freeglut_state.c, src/freeglut_window.c: Adding
351 "glutFullScreenToggle" for X11 -- still needs implementation in
352 Windows (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
354 2007-12-01 John F. Fay <john.fay.ctr@eglin.af.mil>
356 * src/freeglut_window.c: Fixing the window position for asynchronous X11
357 implementations (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
359 2007-11-26 John F. Fay <john.fay.ctr@eglin.af.mil>
361 * progs/demos/Fractals/fractals.c: Making a demo program that uses
364 2007-11-12 John F. Fay <john.fay.ctr@eglin.af.mil>
366 * include/GL/freeglut_ext.h, src/freeglut_ext.c, src/freeglut_init.c,
367 src/freeglut_internal.h, src/freeglut_state.c,
368 src/freeglut_structure.c, src/freeglut_window.c: Implementing Jocelyn
369 Frechot's changes -- see e-mail of Thursday, 11/8/2007 9:12 AM.
371 2007-10-02 John F. Fay <john.fay.ctr@eglin.af.mil>
373 * src/freeglut_joystick.c: Removing more Win64 build warnings from
376 2007-09-30 John F. Fay <john.fay.ctr@eglin.af.mil>
378 * src/freeglut_main.c: Removing the final compiler warning when building
379 on Win75 -- thank you, Antonio Mattos.
381 2007-09-29 John F. Fay <john.fay.ctr@eglin.af.mil>
383 * src/freeglut_cursor.c: Removing the remaining compiler warnings from
384 the cursor code, thanks to Antonio Mattos of Brazil. The double
385 type-casting is needed because of a bug in the new MSVC; there is a
386 discussion on the web on this subject.
388 2007-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
390 * src/freeglut_cursor.c: Changing the cursor definition macro for newer
391 versions of MSVC -- thanks to "Mattos" of Brazil
392 * src/freeglut_window.c: More changes for Jocelyn Frechot's
393 multisampling changes. The library builds now. It still needs some
394 testing with sample cases under X11.
396 2007-09-23 John F. Fay <john.fay.ctr@eglin.af.mil>
398 * src/freeglut_window.c: Fixing a remaining bug in the multisampling
399 change ... there may be more ...
401 2007-09-22 John F. Fay <john.fay.ctr@eglin.af.mil>
403 * src/freeglut_internal.h, src/freeglut_state.c,
404 src/freeglut_structure.c, src/freeglut_window.c: Putting in Jocelyn
405 Frechot's X11 visual context changes. THIS WILL BREAK THE BUILD as I
406 am unable to test it on a Linux machine here. Somebody please test it
409 2007-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
411 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c:
412 Removing compiler warnings in MSVC 2005 build
413 * include/GL/freeglut_ext.h, src/freeglut_init.c: Implementing Larry
414 Ramey's "glutExit" feature (see e-mails from him on 11/9/05, 6/28/06)
416 2007-09-19 John F. Fay <john.fay.ctr@eglin.af.mil>
418 * include/GL/freeglut_std.h, src/freeglut_window.c: Implementing first
419 part of Windows version of "GLUT_CAPTIONLESS" and "GLUT_BORDERLESS"
420 per feature request "[ 1197016 ] need GLUT_CAPTIONLESS window option".
421 Needs more work; menus are slightly mispositioned, X11 version does
422 not support it, banner appears at beginning but disappears on window
423 resize. But this is a start.
424 * src/freeglut_main.c: Fixing Linux key-repeat mode bug reported in "[
425 1796845 ] Keyboard events are lost when key repeat is enabled."
426 * src/freeglut_joystick.c: Fixing a build error on SuSE described in bug
427 report "[ 1792047 ] freeglut_joystick.c error"
429 2007-09-18 John F. Fay <john.fay.ctr@eglin.af.mil>
431 * src/freeglut_window.c: Implementing feature request "[ 947118 ] Popup
432 menu is hidden under the TOPMOST window"
433 * src/freeglut_menu.c: Adding Takeshi Nishimura's Feature Request "[
434 1045202 ] Cope with a menu with many items" -- sorry it took so long.
435 * src/freeglut_window.c: Addressing Feature Request #1307049 that
436 "freeglut" should return 0 if "glutGetWindow" is called without a
437 prior call to "glutInit", rather than terminating on error.
438 * freeglut.dep, freeglut.mak, freeglut_static.dep, freeglut_static.mak:
439 Added Windows "nmake" Makefiles and dependency files for the two
440 "freeglut" projects in accordance with Feature Request #1454543
442 2007-09-16 John F. Fay <john.fay.ctr@eglin.af.mil>
444 * src/freeglut_window.c: Fixing bug #1688954, submitted in Marcy '07. I
445 changed "FREEGLUT" to _T("FREEGLUT") and nothing changed on my Windows
446 XP system. If this will allow it to work on Vista, then in it goes.
447 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
448 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
449 Fixing bug report #1052151 from October 2004.
451 2006-11-28 John F. Fay <john.fay.ctr@eglin.af.mil>
453 * FrequentlyAskedQuestions: Adding a Frequently Asked Questions file
455 2006-09-28 Joe Krahn <krahn@niehs.nih.gov>
457 * src/freeglut_state.c, src/freeglut_window.c: Removed incorrect comment
458 about internal WGL/ARB definitions. I actually had put those comments
459 in because I had meant to go back and re-check the WGL extension. But,
460 maybe locally defined extensions should be kept in a separate include
463 2006-09-27 Joe Krahn <krahn@niehs.nih.gov>
465 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
466 progs/demos/CallbackMaker/CallbackMaker.dsp,
467 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
468 progs/demos/Fractals/Fractals.dsp,
469 progs/demos/Fractals/FractalsStatic.dsp,
470 progs/demos/Fractals_random/Fractals_random.dsp,
471 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
472 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
473 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
474 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
475 progs/demos/shapes/shapesStatic.dsp: Undo svn:eol-style=CR/LF for MSVC
478 2006-09-26 Joe Krahn <krahn@niehs.nih.gov>
480 * include/GL/freeglut_std.h, src/freeglut_joystick.c,
481 src/freeglut_state.c, src/freeglut_window.c: Added
482 FREEGLUT_LIB_PRAGMAS to control MS library pragmas, and fixed NOMINMAX
484 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
485 progs/demos/CallbackMaker/CallbackMaker.dsp,
486 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
487 progs/demos/Fractals/Fractals.dsp,
488 progs/demos/Fractals/FractalsStatic.dsp,
489 progs/demos/Fractals_random/Fractals_random.dsp,
490 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
491 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
492 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
493 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
494 progs/demos/shapes/shapesStatic.dsp: Added svn:eol-style=CRLF property
495 to MSVC project/workspace files.
497 2006-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
499 * src/freeglut_window.c: Fixing a typo bug in the display mode checking
500 (removing multisampling if it is not supported)
502 2006-09-25 Joe Krahn <krahn@niehs.nih.gov>
504 * src/freeglut_state.c: Fixed a small mistake in the previous commit for
506 * src/freeglut_state.c: Added proper support for number of mouse buttons
507 in X11, and a keyboard in Windows CE. Also, several glutGet results
508 returning TRUE/FALSE were changed to 1/0, because the actual return
509 type is int (although they are technically the same in practice).
511 2006-09-24 Joe Krahn <krahn@niehs.nih.gov>
513 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
514 Converted Time counter to a uniform unsigned long it value. The
515 initialized flag was redundant with the main Initialized flag, and
516 conversion of timeval to milliseconds in POSIX makes the code cleaner.
517 Timeval has a longer range, but the time value is already limited by
520 2006-09-23 Joe Krahn <krahn@niehs.nih.gov>
522 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
523 Removed WindowState.IsGameMode; it is redundant with
524 Structure.GameModeWindow
526 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
528 * src/freeglut_state.c, src/freeglut_window.c: Adding support for the
529 multisampling query per bug report 1274193
530 * ChangeLog, src/freeglut_main.c: Fixing Bug #1398196 - Windows message
533 2006-09-21 Joe Krahn <krahn@niehs.nih.gov>
535 * src/freeglut_cursor.c: test (comment edited)
537 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
539 * ChangeLog, src/freeglut_init.c: Adding temporary fix to
540 "glutInitDisplayString" to ignore numerical assignments
541 * ChangeLog, src/freeglut_window.c: Adding multisampling to *nix and
542 Windows; also some other pixel format enhancements to Windows
543 * ChangeLog, progs/demos/CallbackMaker/CallbackMaker.c: Enhancing the
545 * ChangeLog, src/freeglut_cursor.c, src/freeglut_display.c,
546 src/freeglut_ext.c, src/freeglut_gamemode.c,
547 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
548 src/freeglut_input_devices.c, src/freeglut_internal.h,
549 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
550 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_teapot.c,
551 src/freeglut_teapot_data.h, src/freeglut_window.c: Joe Krahn's changes
552 to "TARGET_HOST" defined constants
553 * ChangeLog, src/freeglut_internal.h, src/freeglut_joystick.c,
554 src/freeglut_main.c, src/freeglut_window.c: Fixing two minor bugs,
556 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
557 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
558 Changing "GameMode" to "GameModeWindow ... and testing whether I can
561 2006-08-05 Sven Panne <sven.panne@aedion.de>
563 * ChangeLog, progs/demos/Fractals/fractals.c,
564 progs/demos/Fractals_random/fractals_random.c,
565 progs/demos/Lorenz/lorenz.c: Check fgets for return value to avoid
567 * freeglut.spec: Fixed typo in date
568 * freeglut.spec: Updated build requirements for SuSE 10.1
570 2005-10-12 Sven Panne <sven.panne@aedion.de>
572 * ., .cvsignore: Ooops, forgot to ingore INSTALL and install-sh in
574 * ChangeLog, include/GL/freeglut_ext.h, include/GL/freeglut_std.h: Moved
575 GLUT_INIT_STATE to <GL/freeglut_ext.h>, it is not part of the original
577 * ., .cvsignore, ChangeLog, INSTALL, autogen.sh, install-sh,
578 mkinstalldirs: Simply use autoreconf in autogen.sh, it is much simpler
579 and the recommended way in the autotools documentation. Removed
580 INSTALL, install-sh and mkinstalldirs, they are either unused or
581 automatically generated by autogen.sh.
583 2005-10-06 John F. Fay <john.fay.ctr@eglin.af.mil>
585 * include/GL/freeglut_ext.h: Allowing compilation of Windows version by
586 removing DLL decorations from deprecated joystick interface extensions
587 * src/freeglut_window.c: Implementing Stereo in Windows
589 2005-09-07 Sven Panne <sven.panne@aedion.de>
591 * ChangeLog, src/Makefile.am: Use target-specific *_CPPFLAGS, not the
593 * ChangeLog, autogen.sh: Use -Wall for automake to catch some buglets,
594 deprecated stuff, etc.
596 2005-09-04 Sven Panne <sven.panne@aedion.de>
598 * ChangeLog, autogen.sh: Silenced autogen.sh
600 2005-08-31 John F. Fay <john.fay.ctr@eglin.af.mil>
602 * freeglut.rc, freeglut.tgt, freeglut.wpj, freeglut_static.tgt:
603 Necessary files for Open Watcom support
604 * src/freeglut_internal.h: Adding Open Watcom support
605 * ChangeLog, README.win32: Documenting support for Open Watcom
606 * include/GL/freeglut_std.h: Implementing WATCOM support
608 2005-07-14 Sven Panne <sven.panne@aedion.de>
610 * src/freeglut_input_devices.c: Nuked useless bit-fiddling, pointed out
611 by John. I was a bit too quick to cut-n-paste the cfmakeraw()
612 definition into our code... :-]
613 * ChangeLog, src/freeglutdll.def: Synched the DLL definitions with
615 * ChangeLog, src/freeglut_cursor.c: Fixed the GLUT_CURSOR_INHERIT logic
618 Note that this commit is untested, but at least it looks better than
619 before. We really a need a cursor test program.
621 2005-07-13 John F. Fay <john.fay.ctr@eglin.af.mil>
623 * src/freeglut_cursor.c: Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
625 2005-07-13 Sven Panne <sven.panne@aedion.de>
627 * ChangeLog, configure.ac: Improve autoconf magic: To detect headers
628 like GL/gl.h, it might be necessary to temporarily use the X11 flags
629 found by AC_PATH_XTRA.
630 * ChangeLog, src/freeglut_joystick.c: Avoid gcc warnings for some
631 joystick code (e.g. on Solaris).
632 * src/freeglut_input_devices.c: Tiny cleanup only...
633 * ChangeLog, src/freeglut_input_devices.c: Solaris doesn't have
634 cfmakeraw, but it is only a convenience function for some
635 bit-fiddling, anyway.
637 2005-07-08 Sven Panne <sven.panne@aedion.de>
639 * ChangeLog, include/GL/freeglut_ext.h, src/freeglut_ext.c,
640 src/freeglut_internal.h: Made all the "glutJoystickXXX" functions part
641 of the freeglut extensions. If this is not what we want, we can easily
642 #ifdef this away again...
643 * ChangeLog, src/freeglut_geometry.c: Made a few global arrays "static",
644 avoiding namespace pollution. The only externally visible symbols
645 should either be from the GLUT API ("glutXXX") or internal freeglut
646 entities ("fgYYY"). Reformatted things a bit on the way.
648 2005-07-06 Sven Panne <sven.panne@aedion.de>
650 * ChangeLog, src/freeglut_main.c: We only have pending redisplay
651 callbacks when the window wants to be redisplayed *and* it is visible.
652 Otherwise we won't redraw, anyway, and immediately discover that
653 there's still something to do, etc. etc., leading to 100% CPU load.
654 * ChangeLog, src/freeglut_main.c: Removed redundant code.
655 * ChangeLog, src/freeglut_init.c: X11 only: Destroy the global menu
656 rendering context when deinitializing. The visual/context handling for
657 menus is still rather obscure, though...
658 * progs/demos/Lorenz/lorenz.c: Reverting previous commit: %lf is a valid
659 format specifier for the scanf familiy of functions only, not for the
662 2005-07-05 John F. Fay <john.fay.ctr@eglin.af.mil>
664 * src/freeglut_main.c: Implementing the new menu context variable names
666 * src/freeglut_internal.h: Changing a comment ... nothing big.
667 * progs/demos/Lorenz/lorenz.c: Fixing output formats ... nothing big
669 2005-07-05 Sven Panne <sven.panne@aedion.de>
671 * ChangeLog, src/freeglut_state.c, src/freeglut_window.c: X11 only: Free
672 XVisualInfo structures when they are not needed anymore, fixing a
673 space leak. Not perfect for menus yet...
674 * src/freeglut_internal.h, src/freeglut_window.c: Tiny change to make
675 grep's life easier: Rename the fields of the menu context. Not really
676 worth a ChangeLog entry...
678 IMHO it looks like we could kill the whole MenuContext stuff, it is of
679 no use currently and some things look strange, like e.g. having a
680 context per menu. The latter is not OK when a menu is attached to
683 2005-07-02 Sven Panne <sven.panne@aedion.de>
685 * ChangeLog, src/freeglut_init.c, src/freeglut_internal.h,
686 src/freeglut_main.c, src/freeglut_state.c: Handle modifiers in
687 MotionNotify events, too. This fixes bug #1227920 (glutGetModifiers
688 not set/allowed in mouse callbacks). In addition, some related cleanup
690 * ChangeLog, src/freeglut_joystick.c: Partial fixes for bug #1218900
691 (freeglut-2.4.0 on FreeBSD).
692 * ChangeLog, Makefile.am: Remove wrong "execute" bits when creating a
693 distribution. This fixes bug #961938 (Executable bit set on non exe
695 * configure.ac: Tiny cosmetic change, not worth a ChangeLog entry.
696 * ChangeLog: Added John's missing ChangeLog entry.
698 2005-07-01 John F. Fay <john.fay.ctr@eglin.af.mil>
700 * freeglut.dsp, freeglut_static.dsp: Adding the
701 \"freeglut_input_devices.c\" file to the Windows project files
703 2005-07-01 Sven Panne <sven.panne@aedion.de>
705 * ChangeLog, configure.ac, src/Makefile.am: Some steps toward
706 compilation under MinGW. Note that there are still linking troubles
708 * src/freeglut_internal.h: Fixed #ifdef for ChangeDisplaySettingsEx
710 * ChangeLog, src/freeglut_input_devices.c: Silenced a signed/unsigned
711 mismatched via a cast.
712 * ChangeLog, src/freeglut_internal.h: MinGW is lacking a prototype for
713 ChangeDisplaySettingsEx, so supply one in this case. Note that this
714 should better be handled via autoconf than via cpp.
715 * ChangeLog, Makefile.am: Removed redundant files from EXTRA_DIST.
717 2005-06-30 Sven Panne <sven.panne@aedion.de>
719 * src/freeglut_main.c: Ooops, forgot to set the current window in the
720 last commit. I'll have to test better before comitting... :-]
721 * ChangeLog, src/freeglut_main.c: When a window is iconified, only an
722 UnmapNotify is sent, not a VisibilityNotify, so we have to handle the
723 window status callback in the former case, too. This fixes bug #763442
724 (Call the visibility callback when minimizing a window).
725 * ChangeLog, src/freeglut_main.c: Cleaned up
726 CreateNotify/ConfigureNotify handling.
727 * src/freeglut_main.c: Ooops, forgot to dump a few fields in some
729 * ChangeLog, configure.ac, src/freeglut_main.c: Added --enable-debug
730 configure flag. Currently it only turns on X11 event tracing, but in
731 the future we could add more.
733 Note: freeglut_main.c could benefit from some restructuring to clean
734 up the #ifdefs and cut down the sizes of some extremely long
736 * ., .cvsignore: Ignore files generated during RPM build.
738 2005-06-23 John F. Fay <john.fay.ctr@eglin.af.mil>
740 * doc/freeglut_user_interface.html: Fixing the documentation regarding
741 callbacks and geometry shape additions
742 * progs/demos/Fractals/Fractals.dsp,
743 progs/demos/Fractals/FractalsStatic.dsp,
744 progs/demos/Fractals_random/Fractals_random.dsp,
745 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
746 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
747 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
748 progs/demos/shapes/shapes.dsp, progs/demos/shapes/shapesStatic.dsp:
749 Adding separate static library and DLL demonstration program projects
750 * progs/demos/CallbackMaker/CallbackMaker.dsp,
751 progs/demos/CallbackMaker/CallbackMakerStatic.dsp: Adding separate
752 demo program projects for static library and DLL versions
753 * progs/demos/demos.dsw: Adding support for separate static library demo
755 * ChangeLog: Keeping current ...
756 * src/freeglut_input_devices.c: New file for Joe Krahn\'s dials input
759 2005-06-22 John F. Fay <john.fay.ctr@eglin.af.mil>
761 * src/freeglut_geometry.c: Fixing a bug in the Sierpinski sponge code
762 that made the application crash if called with number of levels < 0
763 * src/Makefile.am, src/freeglut_init.c, src/freeglut_internal.h,
764 src/freeglut_joystick.c, src/freeglut_state.c: Joe Krahn\'s input
765 (dials) device implementation.
767 2005-06-14 Sven Panne <sven.panne@aedion.de>
769 * ChangeLog, freeglut.spec: Added an RPM spec file based on the one
770 shipped with SuSE 9.3.
772 2005-06-10 James Jones <puggles@users.sourceforge.net>
774 * ChangeLog, configure.ac: Release of 2.4.0
776 2005-06-02 James Jones <puggles@users.sourceforge.net>
778 * ChangeLog, configure.ac, src/freeglut_internal.h: 2.4.0 Release
781 2005-05-26 John F. Fay <john.fay.ctr@eglin.af.mil>
783 * src/freeglut_main.c: Takeshi Nishimura\'s changes to make the Windows
784 mouse wheel/button mapping match that of X11; also fixing a typo in
785 the associated mouse callback argument list
787 2005-05-26 James Jones <puggles@users.sourceforge.net>
789 * ChangeLog, configure.ac: 2.4.0 RC4 updates
790 * src/freeglut_main.c: Fix joysticks so they are polled by their timer
791 correctly. (Dan Torop)
793 2005-05-24 Sven Panne <sven.panne@aedion.de>
795 * ChangeLog, src/freeglut_gamemode.c: The original glutEnterGameMode()
796 returns the window id of the game mode window, not TRUE/FALSE, we
797 should better follow that. Note that most man pages claim that this
798 function returns void, but this is definitely wrong.
799 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_main.c: When
800 switching to game mode under X11, no ConfigureNotify event will happen
801 and consequently no reshape callback will ever be called via the
802 normal mechanism. To fix this, note that the game mode window needs to
803 be resized and handle this before redraw.
805 2005-05-22 Sven Panne <sven.panne@aedion.de>
807 * ChangeLog, src/freeglut_ext.c: Guarantee consistency of
808 names/addresses in glutGetProcAddress by using a macro. In addition,
809 this avoids any non-constant initializer issues which might be raised
810 when using WinDoze GCCs. The additional code overhead is negligible,
811 at least for x86 (a few instructions per name).
812 * ChangeLog, configure.ac: Lowering minimum autoconf version required.
814 2005-05-20 James Jones <puggles@users.sourceforge.net>
816 * ChangeLog: Tag for 2.4.0 RC3
819 2005-05-19 Sven Panne <sven.panne@aedion.de>
821 * src/freeglut_gamemode.c: Fixed SF bug #1204256: Off-by-one error in
822 X11 mode switching. The code which changes the X11 video mode has an
823 off-by-one error, resulting in a wrong mode or segfault. I've
824 refactored the code slighty to make it hopefully clearer what's going
825 on and corrected some #ifdefs on the way. Now at least the "One" demo
827 * src/freeglut_window.c: Fixed SF bug #1204261: Mini space leak when
828 creating an X11 window (X11 text property values have to be freed
831 2005-05-18 John F. Fay <john.fay.ctr@eglin.af.mil>
833 * src/freeglut_gamemode.c: Removing a C++ comment and simplifying the
836 2005-05-17 John F. Fay <john.fay.ctr@eglin.af.mil>
838 * src/freeglut_gamemode.c: Misiek\'s changes to fix Game Mode--getting
839 display settings under Windows and setting the window size correctly
840 on all operating systems.
842 2005-05-16 James Jones <puggles@users.sourceforge.net>
844 * ChangeLog: Mark for 2.4 RC 2
846 2005-05-13 John F. Fay <john.fay.ctr@eglin.af.mil>
848 * src/freeglut_menu.c: Removing two unused variables so this will
849 compile on Linux with -Wall
851 2005-05-12 John F. Fay <john.fay.ctr@eglin.af.mil>
853 * ChangeLog: Updating the ChangeLog ...
854 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c:
855 Takeshi Nishimura\'s menu changes--menus should now work properly. Use
856 the GLUT \"GLUTmech\" and \"walker\" demos to test them.
857 * src/freeglut_main.c: Takeshi Nishimura\'s menu fixes
859 2005-05-09 James Jones <puggles@users.sourceforge.net>
861 * ChangeLog, Makefile.am, configure.ac: Freeglut 2.4.0 Release Candidate
864 2005-05-06 Sven Panne <sven.panne@aedion.de>
866 * ChangeLog, progs/demos/shapes/shapes.c: Fixed a cuboctahedron vertex,
867 implemented wire mode for that shape.
868 * ChangeLog, progs/demos/shapes/shapes.c, src/freeglut_internal.h,
869 src/freeglut_main.c: Necessary compilation fixes for newer GCCs (e.g.
870 3.3.5, 4.0). Side effect: The shapes demo has a new 'i' key now.
872 2005-05-05 John F. Fay <john.fay.ctr@eglin.af.mil>
874 * ChangeLog: Updated the ChangeLog again ...
876 2005-05-04 John F. Fay <john.fay.ctr@eglin.af.mil>
878 * progs/demos/shapes/shapes.c: Replacing the original \"freeglut\"
879 \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many
880 thanks to the OpenGLUT community for writing it. The copyright notice
881 stays in the program.
882 * src/freeglut_main.c: Changing hard-coded constant (number of mouse
883 buttons = 3) to a \"glutDeviceGet\" call in two places under X11
884 * src/freeglutdll.def: Changing the version number from 2.0 to 2.4.0 ...
885 do we need to add any new interface functions?
886 * src/freeglut_internal.h: Removing an unused variable
887 * src/freeglut_window.c: Adding a comment on why \"freeglut\" differs
888 from GLUT in a particular way
889 * src/freeglut_joystick.c: Removing an unused function
890 * src/freeglut_init.c: Making the \"key repeat\" initialization
891 consistent with the rest of its usage; also making the
892 \"initDisplayString\" ever-so-slightly mroe general
893 * ChangeLog, TODO, src/freeglut_window.c: Updating the ChangeLog and
894 TODO files in preparation for the upcoming release
896 2005-04-29 John F. Fay <john.fay.ctr@eglin.af.mil>
898 * src/freeglut_joystick.c: Adding a \"TODO\" comment about dynamically
899 allocating joystick buttonj and axis arrays
900 * ChangeLog: Updationg the ChangeLog ...
902 2005-04-28 John F. Fay <john.fay.ctr@eglin.af.mil>
904 * README.win32: Adding a \"README.Win32\" file with instructions on how
905 to install \"freeglut\" under Windows.
906 * src/freeglut_main.c: Adding Window Exit event handling to the Windows
907 code; also adding a note that eventually it would be good to handle
908 the Window Entry event
910 2005-04-27 John F. Fay <john.fay.ctr@eglin.af.mil>
912 * src/freeglut_window.c: Fixing bug [ 1111218 ] fullscreen not working
913 Better late than never.
914 * src/freeglut_init.c: Fixing Bug Report [ 1160442 ]
915 glutGet(GLUT_ELAPSED_TIME) is too granular
917 2005-04-26 John F. Fay <john.fay.ctr@eglin.af.mil>
919 * src/freeglut_internal.h, src/freeglut_structure.c: Fixing the
920 typecasts on the callback fetches and invocations to allow
921 \"freeglut\" to compile with GCC 4.0
922 * src/freeglut_menu.c: Fixing erroneous implementation of Takeshi\'s fix
923 * src/Makefile.am: Changing include path from relative to absolute to
924 support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
925 * LISEZ_MOI: Adding \"LISEZ-MOI\", the French version of \"README\"
927 2005-04-25 John F. Fay <john.fay.ctr@eglin.af.mil>
929 * ChangeLog: Updating the ChangeLog ... it seems to be something of a
930 stepchild if we\'re not careful.
932 2005-04-22 John F. Fay <john.fay.ctr@eglin.af.mil>
934 * src/freeglut_menu.c: Yuri D\'Elia\'s changes to get the virtual
935 maximum screen extent instead of the actual screen size.
936 * src/freeglut_gamemode.c: Yuri D\'Elia\'s changes to the game mode
938 * src/freeglut_structure.c: Change a hard-coded number to a defined
939 constant and add some initializations
940 * src/freeglut_cursor.c: Removing duplicate cursor code. This and the
941 previous change (in freeglut_main.c) apparently got combined.
942 * ChangeLog: Updating the ChangeLog to reflect activity over the past
944 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
945 src/freeglut_display.c, src/freeglut_gamemode.c,
946 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
947 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
948 src/freeglut_window.c: Trying again to change \"fgStructure.Window\"
949 to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to
950 \"fgStructure.CurrentMenu\" for easier maintenance.
952 2005-04-15 John F. Fay <john.fay.ctr@eglin.af.mil>
954 * ChangeLog: Updating the ChangeLog as a means of testing pCVSc
955 * src/freeglut_internal.h: Testing!
957 2005-03-23 Brian Paul
959 * include/GL/freeglut_ext.h: added comment about AUX flags
961 2005-02-16 Brian Paul
963 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
964 src/freeglut_structure.c, src/freeglut_window.c: fixes for menus being
965 attached to multiple buttons/windows (John Fay)
966 * src/freeglut_callbacks.c: added error check (John Fay)
968 2005-02-15 Brian Paul
970 * src/freeglut_init.c, src/freeglut_window.c: AUX buffers for Windows
973 2005-02-11 Brian Paul
975 * include/GL/freeglut_ext.h, src/freeglut_init.c, src/freeglut_window.c:
976 Aux color buffer support. Pass one of GLUT_AUX[1234] to
977 glutInitDisplayMode. Only implemented/tested on GLX, not Windows.
978 * include/GL/freeglut_ext.h, src/freeglut_ext.c,
979 src/freeglut_internal.h: Fix object/function pointer inconsistencies
980 which are a problem for gcc 3.4.2. Added GLUTproc type, returned by
981 glutGetProcAddress().
983 2005-01-23 Sven Panne <sven.panne@aedion.de>
985 * configure.ac: autoconf 2.58 is enough
986 * src/freeglut_callbacks.c, src/freeglut_internal.h: Stylistic change
987 only (added "do { ... } while( 0 )" around multi-statement macros)
988 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: Testing
989 for errno.h is overkill. :-)
990 * src/freeglut_cursor.c, src/freeglut_main.c: Windows platforms only:
991 Merged some cursor-related code from John Fay (with minor changes)
993 2005-01-05 Sven Panne <sven.panne@aedion.de>
995 * src/freeglut_ext.c, src/freeglut_font.c, src/freeglut_main.c,
996 src/freeglut_state.c, src/freeglut_window.c: Hopefully removed all
997 damage done by commits without merge
998 * ChangeLog, src/freeglut_cursor.c: Reworked the X11 part of
999 glutSetCursor, fixing bug #764187 (Variable mouse pointers don't work)
1000 on the way: * Use slightly more compatible cursor shapes for
1001 GLUT_CURSOR_RIGHT_ARROW and GLUT_CURSOR_LEFT_ARROW. * Refactored and
1002 fixed the erroneous code for GLUT_CURSOR_NONE. * Removed the incorrect
1003 use of XFreeCursor and use a cache of cursors instead. Cursors are
1004 never freed now, we could do this e.g. via reference countig if this
1005 is really needed. * Fixed error handling. * Unknown cursor types are
1006 an error now. * Now the window state always corresponds to the wanted
1007 cursorID, even in the case of GLUT_CURSOR_FULL_CROSSHAIR.
1009 NOTE: I am not sure where the cursor cache should really reside,
1010 currently it is simply a file-local variable.
1012 2005-01-03 Sven Panne <sven.panne@aedion.de>
1014 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1015 mode matching code, memory leaks, fullscreen), i.e. issue warnings
1016 when XF86VidModeFOO fails.
1017 * ChangeLog, src/freeglut_gamemode.c: (234) Fixed part of bug #926883
1018 (Video mode matching code, memory leaks, fullscreen): Now we first try
1019 to get an exact mode match, ignoring the refresh rate if none could be
1020 found. This way the X11 part and the WinDoze behave similarly. NOTE:
1021 We still don't behave like GLUT, because it has a wider notion of
1022 "best" match. We have to refactor and extend freeglut quite a bit to
1024 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1025 mode matching code, memory leaks, fullscreen), i.e. memory leak caused
1026 by not freeing the mode lines returned by XF86VidModeGetAllModeLines
1027 * ChangeLog, src/freeglut_window.c: Improved error message a bit when no
1028 suitable visual could be found (X11 only).
1029 * configure.ac, src/freeglut_internal.h, src/freeglut_main.c: autoconf'd
1031 * src/freeglut_joystick.c: Removed redundant #include
1032 * ChangeLog, configure.ac, src/freeglut_joystick.c, src/freeglut_main.c:
1033 autoconf'd <errno.h> handling and removed an unused '#include
1035 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: autoconf'd
1036 <limits.h> and <sys/param.h> handling, removing MIN/MAX macros on the
1038 * src/freeglut_internal.h: Cosmetics.
1039 * configure.ac, src/freeglut_joystick.c: autoconf'd <fcntl.h> and
1040 <sys/ioctl.h> handling
1041 * src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c:
1042 Improved <sys/typed.h> / <unistd.h> handling as suggested by the
1044 * configure.ac, progs/demos/Lorenz/lorenz.c, src/freeglut_internal.h,
1045 src/freeglut_main.c: Fixed <sys/time.h> / <time.h> handling as
1046 suggested by the autoconf docs.
1047 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1048 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1049 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1050 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1051 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1052 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
1053 src/freeglut_structure.c, src/freeglut_teapot.c,
1054 src/freeglut_videoresize.c, src/freeglut_window.c: Moved '#include
1055 "config.h"' to freeglut_internal.h, we will need it there soon and it
1056 makes everything a bit shorter.
1057 * ChangeLog: Resurrected my recent additions which were nuked by the
1058 previous commit, adding the latest change on the way. :-(
1059 * acconfig.h: Removed acconfig.h, it is deprecated and we don't need it.
1060 * src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1061 src/freeglut_structure.c: Make it compile again with "-Wall -pedantic
1062 -Werror", redoing quite a few things I've fixed already a few days
1063 ago. Have today's commits been done by copying instead of merging? :-(
1065 2005-01-03 James Jones <puggles@users.sourceforge.net>
1067 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1068 src/freeglut_window.c: Changes remove duplicate menu code from
1069 "freeglut_window.c" and put it into one place in "freeglut_menu.c"
1070 where it belongs. - John Fay
1071 * ChangeLog: General ChangeLog Updates
1072 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1073 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1074 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1075 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1076 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1077 src/freeglut_structure.c, src/freeglut_teapot.c,
1078 src/freeglut_teapot_data.h, src/freeglut_window.c: Adding
1079 initialization checking to all GLUT interface functions and removing
1080 asserts from the rest of the code - John Fay
1082 2005-01-01 Sven Panne <sven.panne@aedion.de>
1084 * ChangeLog, src/Makefile.am: Added missing files from "src"
1085 subdirectory to dist.
1086 * AUTHORS: Synched with project member list on SourceForge
1087 * ChangeLog, Makefile.am, configure.ac: Modernized configure.ac a bit
1088 and added a rule to Makefile.am to update libtool. Note that all gcc
1089 compiler warnings are now on by default.
1090 * ChangeLog, include/GL/freeglut_std.h,
1091 progs/demos/CallbackMaker/CallbackMaker.c,
1092 progs/demos/Fractals_random/fractals_random.c,
1093 progs/demos/Lorenz/lorenz.c, progs/demos/One/one.c,
1094 src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1095 src/freeglut_teapot_data.h: Make "gcc -Wall -pedantic -Werror" happy.
1096 * ., .cvsignore: Ignore files generated by autoscan.
1097 * ChangeLog, INSTALL, configure.ac, configure.in: Renamed "configure.in"
1098 to the officially preferred "configure.ac".
1099 * stamp-h, stamp-h.in: Removed unused stamp-h* files, configure
1100 generates them (a single stamp-h1, to be exact).
1101 * ChangeLog, Makefile.am: Added eMbedded Visual Tools project/workspace
1102 files to distribution.
1103 * ., .cvsignore: Ignore distribution tar files
1105 2004-12-31 Sven Panne <sven.panne@aedion.de>
1107 * ChangeLog, src/freeglut_main.c: Fixed first bug of #1064195 (two
1108 things when using signals): Don't issue a warning about select when a
1109 non-blocked signal was caught. This makes sense and is more compatible
1111 * ChangeLog, src/freeglut_font.c: Fixed bug #1040435 (glutBitmapString()
1113 * ChangeLog: Alas, the ChangeLog has not the usual ChangeLog format, so
1114 tell (X)Emacs about that fact.
1115 * ChangeLog, src/freeglut_window.c: Fixed bug #1045054 (KeyReleaseMask
1117 * ChangeLog, src/freeglut_state.c: Fixed bug #1087642
1118 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
1119 * ChangeLog, src/freeglut_ext.c: Fixed bug #1079530 (glutGetProcAddress
1120 and geometric objects).
1121 * ., .cvsignore, doc, doc/.cvsignore, include, include/.cvsignore,
1122 include/GL, include/GL/.cvsignore, progs, progs/.cvsignore,
1123 progs/demos, progs/demos/.cvsignore, progs/demos/CallbackMaker,
1124 progs/demos/CallbackMaker/.cvsignore, progs/demos/Fractals,
1125 progs/demos/Fractals/.cvsignore, progs/demos/Fractals_random,
1126 progs/demos/Fractals_random/.cvsignore, progs/demos/Lorenz,
1127 progs/demos/Lorenz/.cvsignore, progs/demos/One,
1128 progs/demos/One/.cvsignore, progs/demos/shapes,
1129 progs/demos/shapes/.cvsignore, src, src/.cvsignore: Improved
1132 2004-12-17 James Jones <puggles@users.sourceforge.net>
1134 * src/freeglut_cursor.c, src/freeglut_display.c,
1135 src/freeglut_internal.h, src/freeglut_menu.c, src/freeglut_misc.c,
1136 src/freeglut_window.c: Some assertion changes / removals from Dr. John
1139 2004-10-06 Brian Paul
1141 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1142 src/freeglut_joystick.c, src/freeglut_state.c: joystick init fixes
1145 2004-10-05 Brian Paul
1147 * src/freeglut_main.c: updated comments (John Fay)
1148 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_window.c:
1149 improved comments and mouse coord adjustments (John Fay)
1150 * src/freeglut_init.c: more clean-ups, fixes from John Fay
1152 2004-09-23 Brian Paul
1154 * src/freeglut_font.c, src/freeglut_stroke_mono_roman.c,
1155 src/freeglut_stroke_roman.c: font updates from John Fay
1156 * src/freeglut_main.c: more updates from John Fay
1157 * src/freeglut_geometry.c, src/freeglut_init.c: assorted updates from
1160 2004-09-15 James Jones <puggles@users.sourceforge.net>
1162 * src/freeglut_init.c: Fix to glutInit() command-line argument
1163 compaction - Patch #1027724 from takeshi2
1165 2004-09-13 Brian Paul
1167 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1168 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1169 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_state.c,
1170 src/freeglut_window.c: more updates from John Fay
1171 * src/freeglut_cursor.c, src/freeglut_gamemode.c,
1172 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1173 src/freeglut_joystick.c, src/freeglut_main.c,
1174 src/freeglut_structure.c, src/freeglut_teapot.c,
1175 src/freeglut_window.c: some function renaming, etc (John Fay)
1177 2004-09-10 Brian Paul
1179 * src/freeglut_callbacks.c, src/freeglut_init.c,
1180 src/freeglut_internal.h, src/freeglut_main.c: joystick updates from
1182 * src/freeglut_cursor.c, src/freeglut_font_data.c,
1183 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1184 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1185 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1186 src/freeglut_stroke_mono_roman.c, src/freeglut_stroke_roman.c,
1187 src/freeglut_structure.c, src/freeglut_teapot.c,
1188 src/freeglut_window.c: updated comments from John Fay
1190 2004-08-11 James Jones <puggles@users.sourceforge.net>
1192 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
1193 Fix a game mode crashing bug, conditional compilation for Windows, and
1194 comment out some diagnostic prints (John Fay)
1196 2004-08-05 James Jones <puggles@users.sourceforge.net>
1198 * src/freeglut_window.c: Implements Richard Rauch's request that the
1199 warning about indirect rendering contexts be suppressed for his BSD
1201 * src/freeglut_teapot_data.h: Someone used C++ style comments in a C
1202 file... tisk tisk...
1203 * src/freeglut_font.c: Bugfix for "glutBitmapString" so that it now
1204 handles end-of-line characters properly (Richard Rauch)
1205 * README: Incremental update ... (John Fay)
1207 2004-06-29 Brian Paul
1209 * src/freeglut_structure.c: give menu windows the title 'freeglut menu'
1211 * src/freeglut_window.c: move glXMakeCurrent() to after the point where
1212 the window's title is set (helps Chromium)
1214 2004-05-13 James Jones <puggles@users.sourceforge.net>
1216 * freeglut.dsp, freeglut_static.dsp: Add one more header file to MSVC
1219 2004-05-12 James Jones <puggles@users.sourceforge.net>
1221 * include/GL/freeglut_ext.h, include/GL/freeglut_std.h: John Fay:
1222 Direct/indirect rendering context change, fix a bug that somebody
1223 reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove
1224 a false deprecation of a function.
1225 * src/freeglut_main.c: John Fay: A bug fix re: behavior of the code when
1226 the user clicks the "x" to close a window, and commentary to a message
1227 type with fixes for a Windows event processing bug.
1228 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_state.c,
1229 src/freeglut_window.c: John Fay: Implement the modified logic of the
1230 direct/indirect rendering context.
1231 * src/freeglut_font.c, src/freeglut_font_data.c: John Fay: Implement the
1232 upper end of the bitmapped fonts (beyond ASCII code 127). The fonts
1233 are very close to the GLUT fonts.
1234 * src/freeglut_teapot.c, src/freeglut_teapot_data.h: John Fay: These
1235 files implement the teapot for WINCE.
1236 * src/freeglut_internal.h: John Fay: Remove some obsolete defined
1238 * freeglut.dsp, freeglut_static.dsp: John Fay: Add
1239 "freeglut_glutfont_definitions.c" to the build and tell it to look in
1240 the "include" directory for the <GL/freeglut.h> file.
1242 2004-03-28 Steve Baker <steve@sjbaker.org>
1244 * progs/demos/shapes/shapes.c: Removed unnecessary initialisation.
1245 * progs/demos/shapes/shapes.c: Added a cullface test.
1249 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_init.c,
1250 src/freeglut_main.c: removed .cpp file (using LoadLibrary() instead)
1251 removed modified gx.h file cleaned up all // and tabs
1255 * src/freeglut_main.c: Prevent exceeding array bounds in X11 key-repeat
1260 * freeglut_evc4.vcp, src/freeglut_ext.c, src/freeglut_gx.cpp,
1261 src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c,
1262 src/freeglut_state.c, src/freeglut_window.c: replaced all tabs with 4
1263 spaces replaced all // with /* */ block fixed freeglut_gx.cpp file
1264 with #if TARGET_HOST_WINCE
1268 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_state.c:
1269 Whitespace conversion - tabs to 4 spaces
1270 * src/freeglut_window.c: Revert X11 fgCloseWindow to 1.38 pre-offscreen
1275 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_main.c: fixed
1276 mouse position and keyboard mapping. added c-wrapper cpp file for
1278 * freeglut_evc4.vcp, freeglut_evc4.vcw, include/GL/freeglut_std.h,
1279 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
1280 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1281 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1282 src/freeglut_state.c, src/freeglut_window.c: added support for
1283 WindowsCE (building on top of klimt)
1287 * src/freeglut_main.c: Repeat-key handling for Win32 Utilise both
1288 FreeGLUT state and per-window filtering modes
1292 * ChangeLog: Forgot to update the ChangeLog for the benefit of those who
1293 do not have CVS or Web access.
1294 * configure.in, include/GL/freeglut_ext.h, src/freeglut_internal.h,
1295 src/freeglut_window.c: Completed removal of all support for the
1296 offscreen rendering.
1298 If you wish to do offscreen supportin a portable manner, you will no
1299 longer be able to do so with current versions of freeglut.
1300 * progs/demos/Makefile.am: Removed Makefile support for the offscreen
1302 * progs/demos/One/one.c, progs/demos/offscreen: Removed offscreen demo
1307 * src/Makefile.am: Provide local include path to automake for
1312 * src/freeglut_window.c: Code formatting tweak
1313 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1314 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c:
1315 Resolution of X11 key-repeat handling
1317 glutSetKeyRepeat is global to all FreeGLUT windows in the application
1318 glutIgnoreKeyRepeat is a per-window over-ride
1320 To avoid nasty global X11 state interaction, or GLUT-style event queue
1321 filtering - the approach in FreeGLUT is to use the current key state
1322 XQueryKeymap to detect and ignore KeyRelease/KeyPress pairs that are
1326 http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
1327 http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml
1328 * src/freeglut_callbacks.c, src/freeglut_cursor.c, src/freeglut_ext.c,
1329 src/freeglut_font.c, src/freeglut_font_data.c,
1330 src/freeglut_gamemode.c, src/freeglut_geometry.c,
1331 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1332 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1333 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1334 Stripped out tabs and end-of-line whitespace Differences are in
1339 * src/freeglut_window.c: Resolve [ 853044 ] FreeGLUT menus on Win32 in
1340 task bar and ALT-TAB list CreateWindowEx(WS_EX_TOOLWINDOW,...)
1341 extended style suppresses the popup menu window from the taskbar or
1346 * src/freeglut_init.c: ignoreKeyRepeat mode in FreeGLUT is TRUE by
1347 default For compatibility with GLUT, the mode should be FALSE by
1348 default This issues was probably undetected until now because
1349 ignoreKeyRepeat didn't yet work.
1350 * src/freeglut_main.c: Resolved bug #869765 glutIgnoreKeyRepeat() Fix
1351 (Win32) glutIgnoreKeyRepeat now behaves correctly on Win32
1352 * src/freeglut_internal.h: C++ style comment converted to C style
1354 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1355 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1356 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1357 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_joystick.c,
1358 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1359 src/freeglut_overlay.c, src/freeglut_state.c,
1360 src/freeglut_structure.c, src/freeglut_teapot.c,
1361 src/freeglut_videoresize.c, src/freeglut_window.c: Include freeglut
1362 header via <GL/freeglut.h> rather than "../include/GL/freeglut.h" This
1363 allows some additional flexibility with file layout. It should be the
1364 responsibility of the build environment, rather than at source level.
1365 This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.
1369 * src/freeglut_joystick.c: According to John F. Fay: The variable
1370 "num_axes" should be "joy->num_axes".
1374 * src/freeglut_gamemode.c: Removed nonstandard #warning constructs.
1375 Converted to XXX comments. (These are warnings about gamemode features
1376 not working the same on some systems as on others. The semantics of
1377 gamemode are dubious, since it was never formally documented, and has
1378 for a long time worked in different ways on different systems, so it
1379 is arguable that there is nothing really wrong with systems that don't
1380 support resolution-changes.)
1381 * src/freeglut_callbacks.c: Fixed the bug where glutDisplayFunc() was
1382 effectively invoking glutPostRedsiplay(). This is wrong on the face of
1383 it, and may be at root for some of the annoying "timing" issues we've
1384 had with redisplay events being called inappopriately.
1388 * progs/demos/offscreen/Makefile.am: I had rubbed the
1389 offscreen/Makefile.am off from the shapes demo. I forgot to remove a
1390 couple of references to the shapes.c and shapes.dsp (.dsw?) files.
1391 * configure.in, include/GL/freeglut_ext.h, progs/demos/Makefile.am,
1392 progs/demos/offscreen, progs/demos/offscreen/Makefile.am,
1393 progs/demos/offscreen/offscreen.c: Added "offscreen" demo, a very
1394 simple program that produces an onscreen window and, upon command,
1395 renders a similar offscreen display and writes the result to disk.
1397 Also, modified the build structure for UNIX_X11 to autobuild the demo.
1398 (Not done for WIN32 at this time.)
1400 Also, forgot to previously commit the updated freeglut_ext.h include.
1405 * src/freeglut_window.c: Minor comment adjustments.
1409 * src/freeglut_geometry.c: Refinements to comments
1413 * src/freeglut_joystick.c: Normalized the style of the new joystick a
1415 * src/freeglut_main.c: For some reason, the X "expose" event handler was
1416 *directly* calling the display handler in the client. (Okay, it was
1417 calling a function that operates on the window handle.)
1419 If you have any complexity to the display code, this can be painful to
1420 watch. I can't think of a good reason to do the display immediately,
1421 so I fixed the code to do a glutPostRedisplay().
1422 * src/freeglut_joystick.c: A commit on behalf of John (in turn, and in
1423 part, also on behalf of Thierry).
1425 * Renamed some of the old PLIB functions to have glut* prefixes. (I
1426 guess that there is some thought about exporting them to the API.)
1428 * Changes from Thierry for FreeBSD support, and/or results of testing?
1430 * I re-merged an XXX comment re. NetBSD/amd64 and propogated a comment
1431 on a duplicated #define for FreeBSD. We need the GNU autoconfig stuff
1432 to be updated by someone who groks it, now.
1436 * src/freeglut_init.c: Commit of John's tidying-up of a comment, closing
1437 out an XXX comment that I wrote. Thanks, John.
1441 * src/freeglut_window.c: ...AND a tab snuck into my changes for
1442 GLUT_OFFSCREEN support. Mea culpa.
1443 * src/freeglut_joystick.c: Removed a ^M that snuck into the #pragma for
1444 the new joystick code.
1445 * src/freeglut_window.c: Ooops. We don't want people to be able to
1446 create a subwindow of an offscreen window. (^& This is no longer
1449 (Actually, it would be nice if it would work, but I don't think that
1450 you can subwindow a pixmap in UNIX_X11, and assume that subwindowing
1451 offscreen doesn't work on WIN32, either.)
1452 * ChangeLog: Added entries for the joystick updates and the offscreen
1453 experimental support.
1454 * src/freeglut_joystick.c: Changed a couple of XXX comments. Added a new
1455 one. These all the nest of #ifs in the BSD section of the new joystick
1457 * progs/demos/CallbackMaker/CallbackMaker.c: "Heavy editing" by John to
1458 his CallbackMaker demo.
1459 * src/freeglut_joystick.c: John added a #pragma to the joystick code for
1461 * src/freeglut_internal.h, src/freeglut_window.c: Adds GLUT_OFFSCREEN as
1462 a display mode option. This includes:
1464 * Recognizing the mode when you call glutCreateWindow(). (Offscreen
1465 looks and acts like a top-level window in many ways.)
1467 * During the life of the offscreen "window", various window-management
1468 functions are modified to respect offscreen status.
1470 (Excepting reshaping windows, there is not much useful interpretation
1471 for managment of offscreen areas. Reshaping is possibly more work than
1472 it's worth to support, and GLUT specs allow us to ignore the request.)
1474 * Cleanup for "offscreen" windows is a little different than for
1477 Windows still don't start up quite ideally. Offscreen windows should
1478 probably get a reshape event, but not a display.
1482 * src/freeglut_init.c, src/freeglut_joystick.c: Big import of updated
1483 joystick code from PLIB, with permission from Steve Baker. Most of the
1484 adaptation done by John, with a little bit of testing and changes by
1485 Thierry Thomas and myself. Seems to compile on:
1487 WIN32 Red Hat LINUX FreeBSD NetBSD/amd64
1491 * src/freeglut_main.c: Close a bug whereby events can be delayed
1492 arbitrarily long if they get caught between the socket and the
1493 client-side queue on X, sometime after glutMainLoopEvent()'s loop
1494 quits and before the sleep code is invoked.
1498 * src/freeglut_main.c: Ammended a comment on fgCheckJoystickCallback().
1499 * src/freeglut_main.c: Minor style normalizations to minimize the diffs
1500 between *now* and from before John's changes. No functional changes:
1502 * Removed some hard TABs introduced. * Removed some
1503 spaces-at-end-of-line introduced. * A couple of function calls were
1506 I did this separately only because I don't like messing with other
1507 people's commits. (I don't like feeling like the style police, either,
1508 but when I mess with the commit, there's no room for reverting my
1509 interference if it is deemed undesirable...)
1510 * src/freeglut_main.c: Some changes from John.
1512 The main attraction seems to be correcting a bug with the action-on-
1517 * src/freeglut_main.c, src/freeglut_window.c: Win32 glutIconifyWindow()
1518 patch contributed by John F. Fay Restrict resize callbacks to visible
1519 windows When iconified via glutIconifyWindow(), don't pass (0,0) to
1520 resize callback Note that minimising the window via the menu or
1521 minimise button is not yet resolved.
1525 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
1526 Split a few overlong lines.
1528 Adjusted some spacing in a few spots to be more consistant with
1529 freeglut style. Including one unindented if() body.
1531 Eliminated a dead variable.
1532 * src/freeglut_joystick.c: Changed several #ifdef's to proper #if's.
1534 * src/freeglut_main.c: Hm... I thought that I committed this last night.
1537 This is Nigel's modified fgSleepForEvents(), essentially. Take 2.
1541 * include/GL/freeglut_std.h: Three supported win32 compilation
1542 environments: MSVC, Cygwin and MingW32 #pragma is specific to MS
1544 * src/freeglut_internal.h: Explicitly cast function pointer to (void *)
1545 in SET_WCB since all callbacks stored as void pointers suppress gcc
1546 -Wall -pendantic "noise"
1547 * src/freeglut_structure.c: Typesafe handling of temporary window
1548 destroy callback Move assignment out of while test, scope temporary
1549 inside loop Be explicit about assignment/comparison in if test for gcc
1550 peace of mind suppress gcc -Wall -pendantic "noise"
1551 * src/freeglut_internal.h: Three supported win32 compilation
1552 environments: MSVC, Cygwin and MingW32 The windows mmsystem header
1553 need only be included internally to freeglut strdup vs _strdup is
1554 specific to the MS compiler
1555 * src/freeglut_font.c: strlen expects (char *), rather than (unsigned
1556 char *) suppress gcc -Wall -pendantic "noise"
1557 * src/freeglut_cursor.c: Replace assignment of array to struct with
1558 field-by-field assignment suppress gcc -Wall -pendantic "noise"
1559 * src/freeglut_menu.c: glutBitmapString and glutBitmapLength expect
1560 (unsigned char *) rather than (char *) suppress gcc in -Wall
1562 * src/freeglut_joystick.c: Replace #ifdef WIN32 with #ifdef
1563 TARGET_HOST_WIN32, as per FreeGLUT convention
1564 * src/freeglut_init.c: fgState.FPSInterval is unsigned int (GLuint),
1565 environment variable GLUT_FPS can be negative
1566 * src/freeglut_window.c: OpenGL context is not made current on Win32
1567 until fgSetWindow is called. This resolves severe problems observed in
1569 * src/freeglut_window.c: #pragma message is only understood my MS
1570 compiler #if defined(_MSC_VER) .. #endif
1571 * src/freeglut_state.c: Resolve bug 864978 - GLUT_OWNS_JOYSTICK
1573 * src/freeglut_main.c: Tidy nested if/else to suppress gcc -Wall
1574 -pedantic noise gcc suggests explicit braces to avoid ambiguous `else'
1578 * progs/demos/CallbackMaker/CallbackMaker.c,
1579 progs/demos/Fractals/fractals.c,
1580 progs/demos/Fractals_random/fractals_random.c: Configuring with
1581 "--enable-warnings" broke three demos: * CallbackMaker defined, but
1582 did not use, the Joystick() function (a callback for the freeglut
1583 joystick interface). I uncommented the callback-registration. I assume
1584 that it was commented out because it was spammy. (freeglut does
1585 joysticks by polling with a timer.) Perhaps a longer interval than
1586 10ms would be advisable?
1588 * fractals.c used strcpy() without getting the prototype. Added
1589 #include <string.h> at the top.
1591 * fractals_random.c had the same problem as fractals.c.
1595 * src/freeglut_main.c: Moved the window-resize code so that it happens
1596 whenever there is a pending resize for the window, whether or not the
1597 window is visible or in need of a redisplay. The resize is now done
1598 before the visibility and need-to-redisplay checks.
1602 * src/freeglut_structure.c: Got rid of those int/ptr warnings on AMD64.
1603 (The code was casting an {int} to a pointer, and later retrieving the
1604 int by another cast. It should be safe provided that pointers are at
1605 least as big as {int}, but GCC was giving warnings on my system,
1607 * src/freeglut_main.c, src/freeglut_structure.c: Several
1608 test-on-assignment cases have been converted to stop GCC from
1609 complaining about if( a = get_a_value_for_a( ) ) type code.
1613 * src/freeglut_internal.h: Ooops, left some cruft in a comment in the
1614 header when committing the last patch. Cleaned up.
1615 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1616 src/freeglut_structure.c: Wrote SET_WCB() to set a window callback.
1617 This lets us out of using the FETCH_WCB() as an lvalue (which it
1618 shouldn't, since the value of the FETCH is cast to the correct
1619 function-pointer type).
1621 2003-12-15 James Jones <puggles@users.sourceforge.net>
1623 * progs/demos/Fractals/Fractals.dsp: Change the destination directory of
1624 the debug version to "Debug" (John Fay)
1626 2003-12-13 James Jones <puggles@users.sourceforge.net>
1628 * ChangeLog: Release 2.2.0
1632 * src/freeglut_main.c, src/freeglut_window.c: Stripped out TABs that got
1635 There were no changes other than replacing about 10 to 12 TABs with a
1636 visually-suitable number of spaces, so this can probably be blindly
1637 treated as equivalent to the previous versions of the two affected
1640 2003-12-11 Christopher John Purnell
1642 * src/freeglut_internal.h, src/freeglut_structure.c: The deferred window
1643 destruction code was destroying the windows in reverse order. This
1644 cased a crash when the call to glutDestroyWindow() for a sub windows
1645 was immediately followed by a call to glutDestroyWindow() for it's
1646 parent. fgCloseWindows() would call fgDestroyWindow() for the parent
1647 first fgDestroyWindws() would recurse over the children and then
1648 fgCloseWindows() would call fgDestroyWindow() again for the child.
1650 I've replaced the single linked list with one of our two way link list
1651 structures. I've also moved it into fgStructure because that seemed
1652 the consistent thing to do.
1654 I said the the deferred windows destruction causes more problems then
1657 2003-12-11 James Jones <puggles@users.sourceforge.net>
1659 * progs/demos/CallbackMaker/Makefile.am: Include project file in the
1661 * ChangeLog: Updates for 2.2.0 RC2
1662 * progs/demos/demos.dsw: Add shapes to the Visual C workspace.
1663 * progs/demos/shapes/Makefile.am: Package the visual C project file with
1665 * configure.in: Set the version to 2.2.0
1666 * src/freeglut_gamemode.c, src/freeglut_main.c, src/freeglut_window.c:
1667 Nigel Stewart's Win32 window-sizing fix for game mode
1668 * progs/demos/One/one.c: Disable/enable lighting in the "one.c" demo
1670 * progs/demos/CallbackMaker/CallbackMaker.dsp: Add some essentials to
1671 get this program to compile (Nigel)
1672 * src/freeglut_internal.h: Update to reflect 2.2.0 release
1673 * ChangeLog: Note the release of 2.2.0 RC1
1677 * src/freeglut_structure.c, src/freeglut_window.c: John correctly
1678 observed that the initialization {OldHeight} and {OldWidth} in the
1679 window structure should be done for both windows and sub-windows, and
1680 the easiest way to do this is in the
1681 freeglut_structure.c:fgCreateWindow() code. So, transplant one line.
1685 * src/freeglut_main.c: Commit of John's change to stop an infinite-loop
1686 condition when the only windows left are freeglut menu windows, and
1687 correctly calls exit() if we drop out of the main loop without having
1688 requested any freeglut extensions to glutMainLoop() handling.
1692 * progs/demos/shapes/shapes.c, progs/demos/shapes/shapes.dsp: Two from
1695 * Updated shapes.c. I think that it's just reformatting and the
1696 addition of some comments.
1698 * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project
1699 file for building shapes on WIN32 with MSVC++.
1701 2003-12-03 Christopher John Purnell
1703 * configure.in: Added an option to enable gcc compiler warnings. I've
1704 explicitly excluded the one about adding parentheses.
1708 * src/freeglut_main.c: Touched up several comments, pointing up things
1709 that may be worth reflect- ing upon in the future.
1710 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1711 Hrm. I misunderstood the purpose of {window->State.Width} and
1712 {...Height}. Those are *not* records of the old values, but rather of
1713 the *desired* *new* values, hence it was inappropriate to use them in
1714 ConfigureNotify X11 event handling. Doing so introduced some new
1717 So, I created OldHeight and OldWidth in the window State structure,
1718 and *those* do what I require.
1720 I also stripped out the obsolete comment about getting extra/bogus
1721 reshape events. (Though I maintain that an application should be
1722 robust against them, freeglut should no longer generate them if the
1723 window has not changed size since last reported.)
1727 * src/freeglut_main.c: Changed Create/ConfigureNotify handling in
1730 * Just need to call GETWINDOW() once. Ooops. Heh. * Update
1731 {window->State} with the new size of the window. * If the window-size
1732 has NOT changed, then do NOT call the Reshape event.
1733 * src/freeglut_main.c: Added an "XXX" earmark for post-release
1734 contemplation. (The point is definitely in need of consideration, I
1735 believe, but is not immediately a major bug, so I'd rather not mess
1736 with it at the risk of postponing a release "soon".)
1737 * src/freeglut_main.c: Ensure that the time-out for sleeping is never
1739 * src/freeglut_main.c: Fixed a bug for UNIX_X11 where window reshape
1740 events were causing freeglut to mark the window as *needing* a reshape
1741 (which during general display callback handling would result in
1742 effectively a glutReshapeWindow()).
1744 The code is now system-dependant. It should be abstracted to a
1745 function, but is presently copied in two places. Sorry.
1747 Also, inverted the order of the associated if()/else check (in both
1748 WIN32 and UNIX_X11 branches) since the former "else" part was a
1749 one-line callback invocation.
1751 This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.
1753 2003-12-01 Christopher John Purnell
1755 * src/freeglut_internal.h: Added missing prototype for new list
1758 2003-11-28 Christopher John Purnell
1760 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1761 src/freeglut_structure.c: Timer optimizations. Made the list of
1762 pendinig timers ordered. Added a free list of used timer structures.
1763 * src/freeglut_callbacks.c: Timer optimizations.
1764 * src/freeglut_window.c: Fixed windows compilation problem with last
1767 2003-11-27 Christopher John Purnell
1769 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
1770 src/freeglut_structure.c, src/freeglut_window.c: Window close fix. The
1771 default behaiour should now be the same as with glut.
1775 * src/freeglut_init.c: Added change from Nigel to have resize events
1776 cause redraw events in WIN32. Also slightly reshuffled comments to
1777 deal with line-wrap issues.
1781 * src/freeglut_main.c: John reported, and fixed, a problem that recent
1782 changes caused for the Lorenz demo (seems to be WIN32 specific).
1783 * src/freeglut_structure.c: Update from John: Removed the freeglut hack
1784 of decrementing the highst-window-ID marker when the highest window is
1785 deleted. (This was a half-way measure for an idea that was decided to
1786 be dubious in the first place.)
1787 * configure.in, progs/demos/Makefile.am, progs/demos/shapes,
1788 progs/demos/shapes/Makefile.am, progs/demos/shapes/shapes.c: Added a
1789 new demo (from Nigel) showing some of the basic GLUT geometry shapes.
1790 "shapes" is the name of the demo.
1791 * include/GL/freeglut_ext.h, src/freeglut_geometry.c: Commit of work
1794 Massive rework of the geometric primitive code. Includes a new
1795 primitive (cylinder; solid and wireframe) and corresponding update to
1796 freeglut_ext.h for the prototype.
1797 * src/freeglut_internal.h, src/freeglut_main.c,
1798 src/freeglut_structure.c: More work from John (sorry for
1801 * We forgot to bump our version number in freeglut_internal.h It is
1802 now at 2.0.2 (actually, I think that 2.1.0 might be a better choice),
1803 which is presumably going to be our next formal release. 2.0.1 is
1804 incorrectly identified as 2.0.0 in the header.
1806 * A typo in a comment has been corrected ("than"/"that").
1808 * Numerous "manual" checks for callbacks are omitted now, since
1809 INVOKE_WCB() does this for us. These were holdovers from the
1810 pre-INVOKE_WCB() days. There may be some very subtle changes in
1811 freeglut behavior, since freeglut used to test the callbacks a little
1812 earlier in some cases and may have skipped some minor things (like
1813 changes to the current window) in some special cases, otherwise. It is
1814 not believed that any documented behavior is broken, and it is
1815 unlikely---not to say impossible---that any extant applications will
1816 detect the change. It is even possible that there is no external
1817 behavioral change in freeglut.
1819 This also significantly simplifies some sections of code that used to
1820 have conditional execution. "Unconditional code is simpler code" as
1821 one of the comments used to say.
1823 * Lots of XXX commentary is now removed. Some of it was obsoleted by
1824 other changes, some by changes from John.
1825 * src/freeglut_internal.h, src/freeglut_main.c,
1826 src/freeglut_structure.c: Change from John (I removed a couple of
1827 spaces from a couple of lines in his freeglut_internal.h file where
1828 they were wrapping in EMACS; otherwise, the files are exactly as he
1831 The change unifies the WIN32 and UNIX_X11 code by defining our own
1832 window-handle-type in freeglut_internal.h. This let John rip out some
1833 #if garbage in several places. The result is clearer code.
1839 * src/freeglut_font.c, src/freeglut_geometry.c,
1840 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1841 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1842 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1843 src/freeglut_window.c: Numerous style normalizations from John:
1845 * Convert "return( value );" to "return value;" * Normalize spacing
1846 around semicolons. * Remove extraneous parens. * Split multi-statement
1847 lines into multiple lines. (Mostly things of the form: "if( condition
1849 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1850 All changes are from John, except for: (a) I re-inserted the meat of a
1851 comment that I still feel is relavent. (b) I fixed a compile-time
1852 error in the UNIX_X11 code where a variable is declared after
1853 executable code in a block without creating a new sub-block for the
1856 Changes from John include: (a) Style revision. (b) Changes to postpone
1857 the handling of window resizes.
1859 Lots of lines were changed, but I think that thos two cover the ground
1860 that he hit. See the diffs for details.
1862 2003-11-18 Christopher John Purnell
1864 * src/freeglut_cursor.c, src/freeglut_ext.c, src/freeglut_geometry.c,
1865 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1866 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
1867 Lots of stuff that John F. Fay pointed out. Plus some changes to
1868 remove gcc warnings.
1870 2003-11-17 Christopher John Purnell
1872 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1873 src/freeglut_state.c, src/freeglut_structure.c: Fix spelling mistake
1874 in a variable name. Added a comment for John Fay. Added the copyright
1875 notice for XParseGeometry source.
1877 2003-11-16 Christopher John Purnell
1879 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1880 src/freeglut_state.c, src/freeglut_structure.c: Made Modifers variable
1881 global as per glut classic.
1882 * src/freeglut_init.c: Removed old unused glutInitDisplayString code.
1883 Reformated new glutInitDisplayString and XParseGeometry code.
1884 * src/freeglut_init.c: Use XParseGeometry for better geometry parsing.
1885 Moved geometry parsing to after fgInitialize() so we can use the
1886 screen size to correctly calculate negative positions in the geometry
1887 string. Copied the code for XParseGeometry from the X11 sources for
1888 use in the Win32 version. freeglut now passes test1 of the glut test
1891 2003-11-15 Christopher John Purnell
1893 * src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1894 src/freeglut_main.c, src/freeglut_structure.c, src/freeglut_window.c:
1895 Removed the state variable BuildingAMenu. Instead pass a new parameter
1896 isMenu to fgCreateWindow(). Elsewhere use window->IsMenu.
1897 * src/freeglut_init.c: freeglut_assert_ready is going to have to go at
1898 some point. But for now I've moved setting fgState.Initalized to
1900 * src/freeglut_callbacks.c, src/freeglut_display.c,
1901 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1902 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1903 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1904 src/freeglut_window.c: Replace TRUE with GL_TRUE and FALSE with
1905 GL_FALSE where the type is GLboolean.
1909 * src/freeglut_main.c, src/freeglut_menu.c: Normalized the spacing
1910 around symbols, for the most part. Ho-hum.
1912 2003-11-15 Christopher John Purnell
1914 * src/freeglut_main.c: Added a call to fgDeinitialize() before the call
1915 to exit() in fgError().
1919 * src/freeglut_joystick.c: Style normalizations to the joystick code.
1921 2003-11-15 Christopher John Purnell
1923 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1924 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1925 Added a new state variable "Initalized". Replaced referenced to
1926 Time.Set with this new variable where appropriate. fgElapsedTime() now
1927 set the start time if Time.Set is false. Moved
1928 glutGet(GLUT_ELAPSED_TIME) handling to before the assert.
1932 * src/freeglut_internal.h: Normalized the internal header's style a bit.
1933 * src/freeglut_init.c: Plowed one more file this morning. Still just
1934 trivial formatting issues.
1936 And I left alone the "INIT DISPLAY STRING PARSING" section, since it
1937 still appears to be in flux.
1938 * src/freeglut_font.c, src/freeglut_gamemode.c: Yet more trivial style
1941 Sorry, but that's all that I'm up to at the moment. On the plus,
1942 excepting the font_data file (which I've been skipping), up through
1943 this file, I think that the code style is pretty close to uniform.
1944 * src/freeglut_font.c: Minor style corrections.
1945 * src/freeglut_display.c: Minor spacing quibble.
1946 * src/freeglut_cursor.c: Added a brief explanatory note to the X code
1947 for GLUT_CURSOR_NONE.
1949 Corrected the indentation of a block of code.
1950 * src/freeglut_window.c: Noted one of a few cases where we do something
1951 immediately that could more efficiently be postponed, quite
1952 easily---and which GLUT promises *is* to be postponed. (It is unlikely
1953 that the difference will break any apps, but postponing should be
1956 No real change, just a comment in the code.
1960 * ChangeLog: Updated ChangeLog for the day.
1961 * include/GL/freeglut_std.h, progs/demos/One/one.c, src/freeglut_ext.c,
1962 src/freeglut_font.c: Removal of all remaining TABs in the freeglut
1963 *.[ch] files. (I missed a few in the "one" demo, it seems, and some
1964 more crept back into freeglut_(ext|font).c, presumably due to my own
1965 edits when I forgot to use the "freeglut-c-mode" in EMACS.)
1966 * progs/demos/One/one.c: Moved glutInit*() functions ahead of
1967 glutInit(). (This is proper use of glutInit() in general, since it
1968 allows the user to override settings via {argc, argv} command-line
1970 * progs/demos/One/one.c: Style normalizations: Removed CRs and hard TABs
1972 * ChangeLog, src/freeglut_structure.c: Corrected the numbering of the
1973 ChangeLog (there were two (110)s).
1975 Added entries summarizing my commits since September or late August,
1976 for the benefit of those lacking both CVS and web access.
1977 * progs/demos/demos.dsw: Added CRs to the ends of all lines in MS
1978 developer studio demos.dsw file..
1982 * src/freeglut_main.c: John's fix for the minimize/close/maximize
1983 controls no longer working. WIN32 expected us to pass the message on
1984 up the chain (or do something else with it), rather than just throwing
1985 away the event, for a certain class of events. (See the diffs for more
1988 The code is also slightly reformatted from what was previously in the
1990 * freeglut.dsp, freeglut_static.dsp,
1991 progs/demos/CallbackMaker/CallbackMaker.dsp, progs/demos/demos.dsw: A
1992 *.dsp file for CallbackMaker in the demos.
1994 Plus updated *.dsp and *.dsw files to reflect the new freeglut header
1997 NOTE: The prior version of the *.dsw file does not in fact have CRs. I
1998 thought that it did. For consistancy, I am not putting them in in this
1999 version, either. (At least one person said that his MSVC++ system is
2000 happy with the current files. If there are problems, we can easily add
2001 the CRs, but that should be a separate commit...)
2002 * configure.in, progs/demos/CallbackMaker,
2003 progs/demos/CallbackMaker/CallbackMaker.c,
2004 progs/demos/CallbackMaker/Makefile.am,
2005 progs/demos/Fractals_random/fractals_random.c,
2006 progs/demos/Makefile.am: New demo from John: CallbackMaker.
2008 This demo shows the use of every callback that you can register with
2009 freeglut, and also generates event reports so that you can see what is
2010 happening to the program as it runs.
2012 Not much to look at, but both utilitarian and a practical example.
2014 Please double-check that I updated everything that needs to be
2015 updated. I reran autogen.sh and ./configure, and it built okay for me.
2017 * src/freeglut_structure.c: Hm. I thought that I already hit this file
2018 for style normalization. Oh well... Should be no functional changes.
2019 Should be pretty close to in-line with the style of changes that I've
2020 been making else- where.
2021 * src/freeglut_structure.c: Ooops. Forgot that we already had a call to
2022 fgClearCallBacks() in the code and added a second one. I just deleted
2024 * src/freeglut_structure.c: Added Nigel's suggested code to clear all
2025 but the destroy callback early on, leaving Destroy to be cleared later
2026 after the last possible point where it should be invoked.
2027 * src/freeglut_menu.c: Modified the menus to refer to {border} rather
2028 than {FREEGLUT_MENU_BORDER}, in fghDisplayMenuBox(). The local
2029 variable was already defined and used for some purposes, so we might
2030 as well use it throughout. It does serve to shorten and clarify the
2031 code a bit---though I have mixed feelings about creating aliases that
2034 Still, the variable already existed and was already used in places.
2035 (We could even move it into the freeglut state, or make it a {const
2038 Oh well. Stuff to ponder.
2039 * src/freeglut_cursor.c: Well, a couple of days have gone by, so I
2040 assume that items (a) and (b) in the freeglut_cursor.c file's "Open
2041 issues" comment are now satisfactor- ily closed.
2043 I also partially implemented some error-checking, using my limited
2044 understanding of how Xlib users are supposed to do this. (No one
2045 commented about the lack of error-checking, pro or con. Perhaps
2046 someone will care to comment now?)
2048 At present, it just will print out a warning, via fgWarning(). In part
2049 because I'm not sure what is best to do, and in part because failure
2050 to set the cursor type is probably not a fatal problem.
2052 2003-11-08 Christopher John Purnell
2054 * progs/demos/Fractals/Makefile.am,
2055 progs/demos/Fractals_random/Makefile.am,
2056 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Applied
2057 Braden McDaniel's non-srcdir build patch.
2061 * src/freeglut_menu.c: A first pass over freeglut_menu.c to bring it in
2062 line with the rest of freeglut's style. Mostly re-indenting and
2063 splitting long lines. For those that may be concerned: No, I didn't do
2064 any more arrangments of the form (CONST == a) rather than (a ==
2066 * progs/demos/Fractals_random/fractals_random.c: Altered the way that
2067 the {random} value (from 0..3) is chosen.
2069 Previously, it picked out two adjacent bits in the result of rand().
2070 Unfortunately, these adjacent bits (at least on NetBSD) have a certain
2071 amount of dependance. After a period (perhaps a thousand or so?), it
2072 starts to repeat the pattern of those two bits. (I think; I haven't
2073 actually tested that directly.) This presumably is locking it into a
2074 an an N-way attractor on the "snowflake", such that if you zoom in a
2075 ways, you will start to see some spots *quickly* are colored, and
2076 others are *never* colored.
2078 What I've done now is to pick up two widely-spaced bits in a single
2079 rand() call. (Perhaps we would do as well to pick up something like
2080 bit #16 from two consecutive rand() calls?) These widely-spaced bits
2081 have a lower statistical dependance on one another (if I can get away
2082 with using that term for an arithmetic operation; though since stats
2083 has more to do with sampling and less to do with true randomness, I
2086 The net effect, at leats on NetBSD, is far better snowflake if you
2091 * src/freeglut_main.c: From John:
2093 [This] implements the visible/invisible for Windows. It does NOT call
2094 the visibility callback, though.
2095 * src/freeglut_main.c: Stripped out the now truly extraneous {braces} in
2098 if( ... ) { INVOKE_WCB( ... ); }
2100 Check for compiling on WIN32.
2101 * src/freeglut_internal.h: Adopted Eero Pajarre's suggestion of using a
2102 do { ... } while rather than { ... } for the INVOKE_WCB() macro. This
2103 lets it be used "more like a function", in that:
2105 if( ... ) INVOKE_WCB( ... ); else ...
2108 * src/freeglut_main.c: Pure code janitoring: Shuffled the order of some
2109 of the case statements in the UNIX_X11 X event processing loop. (In
2110 general, it's nice to have case statements sorted, especially when you
2111 have a *huge* switch statement like this. That makes it easier to find
2112 the one that you're looking for, and to see if a certain case is
2114 * src/freeglut_main.c: Combined EnterNotify and LeaveNotify event
2115 processing in the UNIX_X11 event loop.
2116 * src/freeglut_main.c: Added ReparentNotify case to UNIX_X11 event loop,
2117 to catch the extraneous ReparentNotify event types (type 21).
2118 * src/freeglut_internal.h, src/freeglut_structure.c: Oh well, I might as
2119 well add the call to clear callbacks on window destruction. Also
2120 renamed the function to do this: fgClearCallBacks(). Ho-hum.
2121 * src/freeglut_internal.h, src/freeglut_structure.c: Added
2122 fgInitCallBacks() to freeglut_structure.c. (The function takes an
2123 {SFG_Window *}.) Added prototype to freeglut_internal.h. Added use of
2124 the function to the window initialization. (Don't count on calloc(),
2125 which sets all bits to 0.)
2126 * src/freeglut_gamemode.c: Style normalization; removal of
2127 say-nothing-useful comments.
2128 * src/freeglut_font.c: Normalized the style of freeglut_font.c No
2129 substantial alterations.
2130 * src/freeglut_ext.c: Somewhat normalized the style of this file.
2132 Also moved the "glutMouseWheelFunc" extension down into the
2133 "extensions" part of the table. (Purely internal organization. It will
2135 * src/freeglut_display.c: Further normalization of the code's style. No
2136 substantial changes.
2137 * src/freeglut_cursor.c: Split one last overlong line in
2139 * src/freeglut_cursor.c: Added GLUT_CURSOR_NONE support in UNIX_X11
2140 (well, NetBSD; you lot need to try it on others; (^&).
2142 Deallocated some resources that we are creating. VERY slight memory
2143 leak, but plugged now.
2145 These two complete the first two "Open issues" ( (a) and (b) ). The
2146 first one also completes X support for glutSetCursor(). If others can
2147 verify, we can fully demote the outstanding bug over this to
2150 I'll delete the dead Open issues and re-letter the others if someone
2151 will cross-check me. Or if no one says anything in a day or two. (^&
2152 * src/freeglut_cursor.c: Further normalized the style of the cursor
2154 * src/freeglut_callbacks.c: Slight style improvements. Two rules of
2155 thumb that are almost always good to apply:
2157 * Don't write a == CONST. Instead, write CONST == a. Or, more
2158 generally (in C like languages): Avoid putting an lvalue on the
2159 left-hand side of an == comparison. (For consistancy, I try to avoid
2160 lvalues on the left- hand side of any comparison---but == is the most
2163 (An "lvalue" is a value that can safely go on the left side of an "="
2164 assignment, of course. (^&)
2166 * Do not write if( !condition ) return; other_thing; return;
2168 (See page 18 of K&P's _The Elements of Programming Style_.)
2170 Instead, it is better to just write:
2172 if( condition ) other_thing; return;
2174 There are times when sacrificing structured programming (e.g., via
2175 multiple return statements) is okay. But, here, there is no apparent
2176 gain---indeed, there seems only loss---in the non-structured code.
2177 * src/freeglut_main.c: Grr. Forgot to enable the "freeglut" C
2178 programming mode in EMACS, and had a few TABs in the last commit. This
2180 * src/freeglut_main.c: Minor corrections to the UNIX_X11 mouse-wheel
2181 support. In part this reflects that {button} is already shifted to the
2182 GLUT numbering, and hence should be counted as 3&4, 5&6, etc.
2184 The other change was simply to clarify the computation of {direction}.
2185 The original code did some clever arithmetic. The new code is more
2186 straightforward, even if it requires more lines to express.
2190 * src/freeglut_main.c: Ooops. I screwed up on part of John's fixes.
2193 I think that I have his fix properly committed now. Mea culpa.
2194 * src/freeglut_callbacks.c, src/freeglut_internal.h,
2195 src/freeglut_main.c, src/freeglut_structure.c: Cleanup pass after
2196 committing callback conversion (from structure to array-of-pointers).
2197 Mostly deleted commented-out struct-based code. Also added some XXX
2198 comments that I though should be pondered. (My own pair of eyes, and
2199 one brain cell, were not sufficient at this time to decide what to do
2200 for those ponderables. (^&)
2201 * src/freeglut_callbacks.c, src/freeglut_init.c,
2202 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
2203 src/freeglut_misc.c, src/freeglut_structure.c: Converted the
2204 "Callbacks" structure (with named members holding individual callback
2205 pointers) to a "CallBacks" array in fgState. (This is to allow us to
2206 write a loop to clear all callbacks from windows when the window is
2207 dead/dying. Using this, we can safely assign NULL to each in a loop.)
2209 Support includes two new macros, FETCH_WCB() and INVOKE_WCB(). See
2210 freeglut_internal.h for more details there.
2212 Some typedefs of function pointer types were altered to make them more
2213 uniform (necessary for the macros).
2215 All references to window-based callbacks in freeglut are updated to
2218 Old usages will cause compile-time errors.
2220 As a side bonus, the new invocation macro sets the current window and
2221 checks pointers so that these common steps can be uniformly done on
2222 every window-based callback. This makes it easier to do things right.
2223 At the same time, the array notation (and now required associated
2224 casts) make it harder to bypass the macros and abuse the function
2225 pointers, in general.
2227 After this commit, I will go through the code and clean up dangling
2228 issues about formatting. This commit is just a "it now works, let's
2229 checkpoint it" type of affair.
2230 * src/freeglut_main.c: From John, a couple of lines needed to be changed
2231 to fix the mouse wheel support on WIN32.
2232 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2233 Includes mouse button, mouse motion, and mouse wheel support.
2237 * src/freeglut_menu.c: Multiple changes from John. Style issues, plus a
2238 bug-fix to check a pointer before deallocating some memory.
2240 He also removed one obsolete comment, and added some more comments.
2241 * src/freeglut_main.c: Some changes, mostly from John. Mostly style
2244 One bug fix from John: Execution state bug-fix in glutMainLoop(), per
2247 One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
2248 {ButtonPress} is a constant.
2249 * progs/demos/Fractals_random/fractals_random.c: Per John's emailed
2250 desire to have all files obey UNIX EOL conventions, I have stripped
2251 out carriage returns from this file.
2253 This is the *only* change, but every line is touched. If you want to
2254 see the real differences between older and newer versions, you will
2255 have to get local copies of each and first match their EOL
2257 * progs/demos/Lorenz/lorenz.c: Update from John:
2259 I [John] added a feature to check for memory leaks under Windows.
2260 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2262 I [John] converted everything to double precision to avoid compiler
2263 warnings. I also added a feature to check for memory leaks under
2264 Windows and removed a memory leak (surprise!).
2265 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
2266 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
2267 src/freeglut_gamemode.c, src/freeglut_geometry.c,
2268 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
2269 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
2270 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
2271 src/freeglut_structure.c, src/freeglut_teapot.c,
2272 src/freeglut_videoresize.c, src/freeglut_window.c: Got rid of the
2273 G_LOG_DOMAIN junk, per discussion on the mailing list.
2274 * src/freeglut_callbacks.c: Minor formatting quibbles. (The brain isn't
2275 up to anything more serious at the moment.)
2276 * src/freeglut_main.c: Missed a block where one level was 2-space
2279 Nit-picked a few other lines for consistancy.
2283 * src/freeglut_init.c: Fixed a memory leak (thanks for the correction,
2286 Smoothed over some code style issues while I was here, but left the
2287 init-string parsing alone for now.
2288 * freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw: Deleted 3 files
2289 (again?) from CVS, on John's request. Old/obsolete MSVC++ project
2290 files. (freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)
2291 * src/freeglut_main.c, src/freeglut_structure.c: * Indentation issues. *
2292 Pulled some common code into a nicely packaged function. * Found some
2294 * src/freeglut_main.c: Heh.
2296 Forgot to wrap the fgGetXModifiers() in a #if. Fixed.
2297 * src/freeglut_main.c: Extracted some common code to a subroutine, in
2298 glutMainLoopEvent(). (The common code was a snippet to compute X
2299 keyboard modifiers as a bit-mask of GLUT symbols.)
2300 * src/freeglut_main.c: Caught a few more little style issues.
2301 * src/freeglut_main.c: Added a "case" for an X event that we turn on but
2302 do not use. ({MapNotify}). We already caught {MappingNotify} and
2304 * src/freeglut_main.c: * Fixed a bug in the X11 handling of
2305 scrollwheel/mouse. The old code, I believe, checked if *either* a
2306 wheel or button callback was set, and then decided which to use---and
2307 unconditionally called it. I left the "either" check in, but added
2308 additional checks before actually doing the invocation. * Lots of
2309 reformatting. Massive. The usual suspects, though, and fairly trivial:
2310 Re-indenting to standard size, shuffling some spaces to match the
2311 freeglut "standard" of: if( ... ) ...and: func( ... )
2315 * src/freeglut_callbacks.c: Cleaned up one macro definition.
2317 Picked up an over-long line that I missed before.
2318 * src/freeglut_callbacks.c: Fit some long lines to 80 columns.
2319 * src/freeglut_cursor.c, src/freeglut_display.c,
2320 src/freeglut_gamemode.c, src/freeglut_geometry.c: Last of the hard
2321 TABs in the src/*.c files.
2322 * src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
2323 src/freeglut_menu.c, src/freeglut_state.c: En masse removal of most (I
2324 think) of the remaining hard TABs in files. There are still a couple
2325 of files that need to be hit.
2326 * src/freeglut_window.c: Picked up some stray TABs scattered in this
2328 * src/freeglut_window.c: Noted by XXX comments that the XFlush() calls
2329 probably shouldn't be there. Flushing the X protocol stack every
2330 little bit both adds clutter to the code and may impede performance.
2332 It seems that we should be able to get rid of these, though allowing
2333 client code to directly call glutMainLoopEvent() does make it a little
2336 Something to ponder.
2337 * src/freeglut_window.c: Polished off the say-nothing-new comments and
2338 lines-over-80-columns in freeglut_window.c
2340 There should be no functional changes.
2341 * src/freeglut_window.c: Missed a few say-nothing-new comments in
2342 fgOpenWindow(). Eeep. Should be better now. (^&
2343 * src/freeglut_window.c: Cleansed fgCloseWindow(): * say-nothing-new
2344 comments axed. * de-TABbed. * Made the white-space to be consistant.
2345 * src/freeglut_window.c: Cleaned up fgOpenWindow(): * Removed TABs. *
2346 Made indentation consistant. * Deleted say-nothing-new comments. *
2347 Changed an *error*check* from an assert to an if(). (The error-check
2348 was on window creation; we don't want to lose that if the user
2349 compiles with asserts deactivated. Also, assert()s really tell us more
2350 about programming errors, rather than run-time errors, so it is a
2351 little misleading to use assert() for error-checks, even if you can
2352 depend upon assert()s never being compiled away to null statements.) *
2353 Added some XXX comments for things that bear some rumination.
2354 * src/freeglut_window.c: Cleanup to fgSetWindow(). The usual suspects: *
2355 Removed tabs. * Made indentation consistant. * Killed off
2356 say-nothing-new comments.
2357 * src/freeglut_window.c: Cleanup to fgSetupixelFormat(). Should be no
2360 Code facelift included:
2362 * Consistant indentation. * Removal of all TABs (there were a bunch).
2363 * Fit to 80 columns.
2364 * src/freeglut_window.c: There should be no changes to code
2365 functionality, though a fair bit of little changes to the code
2368 * Fit the comments at the start of the file to fit 80 columns. * Noted
2369 an unusual feature of the ATTRIB() macro. * Added ATTRIB_VAL() macro
2370 which is really just two ATTRIB()s. This lets us put things like
2371 {ATTRIB (GLX_RED_SIZE); ATTRIB (1);} on one statement: {ATTRIB_VAL
2372 (GLX_RED_SIZE, 1);}. I did this to preserve some of the layout of
2373 information while also avoiding the nasty semi-visible ";" in the
2374 middle of a line of code. And by putting the {braces} in the macro
2375 definition, I was able to visually clean code of the form: if
2376 (condition) { ATTRIB( X ); ATTRIB( 1 ); } ...rewriting as: if
2377 (condition) ATTRIB_VAL( X, 1 ); * Eliminated a bunch of
2378 say-nothing-new comments in fgChooseVisual(). * Combined some
2379 semi-useful comments into a block comment summarizing a loop.
2383 * src/freeglut_structure.c: Finished off most of the issues with
2384 freeglut_structure.c, from a stylistic point of view (at least,
2385 insofar as: The original file's code was INCON- SISTANT. I did not
2386 remove the "!= NULL" stuff, did not address the shortest-branch-first
2387 issue for if-else statements, and left some rather ugly "if (x) {...
2388 return y} /* else do this */ return NULL;" garbage. This should, I
2389 think, be re-written as "if (x) return y; else return NULL;" or even
2390 better, "ret = NULL; if (x) ret = y; return ret;"
2392 In short, the code still has some issues, but I think that it's a bit
2395 (Oh, I also got rid of oustanding TABs.)
2396 * src/freeglut_structure.c: Eliminated most of the say-nothing-new
2399 Fit most of the code to no more than 80 columns.
2401 Raised some issues about completeness/correctness of trying to
2402 decrement the max-window-ID (apparently in order to partially recycle
2403 some window IDs to slightly slow the rate of growth of window IDs). (I
2404 didn't change what the code does, though.)
2406 The functionality of the code should be unchanged.
2407 * src/freeglut_main.c: Forgot to set {direction} explicitly to +/- 1 for
2408 freeglut mouse-wheel API on MS-WINDOWS. Oops.
2410 Now it should always report +/- 1 on MS-WINDOWS, per the spec.
2411 * src/freeglut_main.c: Minor fix to allow for multiple ticks to be
2412 received at one time by the WIN32 code. Take abs(direction) as the
2413 number of ticks, and count it down.
2415 <stdlib.h> *should* be included by freeglut_internal.h, I think, so it
2416 should be okay; otherwise add a suitable #include.
2417 * src/freeglut_main.c: Grrr. My attempt to commit got aborted, and the
2418 commit message was lost. Now I've lost track of what I said I'd done.
2421 * Fixed some issues with multiple wheels. * Noted in comments some
2422 issues about other-than-3-real-buttons. * Fixed formatting to fit 80
2423 columns. * Removed some BCPL/C++ style comments (//) that are not
2424 legal, and which, if memory servers, are not even strictly legal when
2425 disabled by preprocessor directives. E.g.,
2427 #if 0 not-syntactically-valid-C #endif
2429 ...is not legal. Though most cpp's will discard the bracketed material
2430 completely before the main C compiler pass has a chance to analyze the
2431 syntax. (MSVC++ and GCC both don't seem to mind the BCPL style
2432 comments in plain C, but let's keep the sources clean, eh?) * Fixed a
2433 problem that would have caused freeglut to report doubled wheel events
2436 Not tested other than compiling. Personally, I think that the
2437 interface is inherently broken at this point unless you are willing to
2438 get user- configuration. (Which would then solve the complaint that
2439 Steve had about computing the tick-size on behalf of applications.)
2440 I.e., there is NO WAY to know if we have the right buttons to start
2441 wheels at, or if there are any buttons after the first wheel(s), etc.
2442 We just have to guess---and if we are wrong, we can get varying
2443 degrees of brokeness.
2445 2003-10-29 Christopher John Purnell
2447 * src/freeglut_window.c: There is a problem with the way I did
2448 glutFullscreen() in my last commit. So I've copied the way the game
2449 mode does it. It's not ideal but it works. The glutGet() for the
2450 window border sizes will also have to be fixed at some point.
2451 * src/freeglut_window.c: Rewrote glutFullscreen(). It now correctly
2452 places the window in X11. It now uses system dependant code for more
2453 efficient use of windowing system calls.
2457 * src/freeglut_joystick.c: Should be no real changes to the code
2460 I missed a few lines that went past 80 columns. (^&
2462 Also made formatting more consistant.
2464 Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.
2465 * src/freeglut_joystick.c: Should be entirely superficial changes to
2468 * Fit lines to 80 columns. (It does get tiresome seeing long lines
2469 forced to break by the right-hand border of windows...(^&) *
2470 Eliminated say-nothing-new comments. * Made formatting more consistant
2471 in spots. * Eliminated some hard TAB characters.
2472 * src/freeglut_joystick.c: Added Thierry's change to include
2473 sys/param.h. This lets us pick out version numbers for OS releases
2474 corresponding to system headers.
2476 I modified it to also work with NetBSD; I cannot confirm if it is safe
2477 with any other systems, so it remains protected by a #if.
2478 * src/freeglut_state.c: Deleted some say-nothing-new comments.
2480 Added some XXX's where comments seemed to require future attention.
2482 Added some new comments with XXX's where future attention seems
2484 * src/freeglut_state.c: Deleted a bunch of say-nothing-new comments.
2485 Someday, there shall be an end to them.
2486 * src/freeglut_state.c: Previous changes were made without the freeglut
2487 major mode in EMACS. Re-tweaked some lines (mostly got rid of some
2488 TABs, but also resulted in some changed indentation).
2490 Reformatted a big comment to fit to 80 columns.
2492 Removed bogus references to "Linux". (UNIX, and/or X11 were relavent,
2493 and "UNIX/X11" was substituted for "Linux" in those places. This
2494 includes UNIX-alike systems.)
2495 * src/freeglut_state.c: Rewrote the TODO BEFORE THE STABLE RELEASE
2496 comment to fit to 80 columns.
2498 Cleanup of fghGetConfig(). (One return statement, simpler code.)
2500 Made glutSetOption() have a more consistant style---and also got its
2501 lines to stay under 80 columns.
2502 * src/freeglut_misc.c: Got the last of the say-nothing-new comments in
2505 (I would have picked them up before, but wanted the bug-fix and
2506 conversion-to-error-message changes to go in before I did more
2508 * src/freeglut_cursor.c, src/freeglut_main.c, src/freeglut_misc.c: *
2509 Fixed a bug that I introduced in fgWarning()/fgError(): I thought that
2510 ((a) || (b)) was defined to have value as: (a) if (a) != 0 (b) if (a)
2513 ...instead, it has value 0/1. This was causing a bug. It's probably
2514 just as well, since what I was trying to do definitely fell into the
2515 category of "clever code" rather than "clear code".
2519 * Made glutSetKeyRepeat() call fgError() if you go out of range. (The
2520 old code silently did nothing---not even a warning.)
2522 If it is really desirable to keep running, we should probably at least
2523 generate an fgWarning().
2525 * Deleted some say-nothing-new comments.
2527 * XXX added: Is glutSetKeyRepeat() deprecated?
2531 * include/GL/freeglut_ext.h, src/freeglut_callbacks.c,
2532 src/freeglut_ext.c, src/freeglut_internal.h, src/freeglut_main.c:
2533 Commit, mostly of work from John:
2535 * Removed some say-nothing-useful comments. * Added some tentative
2536 mouse-wheel support. * Fairly massive reformatting of code.
2538 I made some secondary changes to his changes:
2540 * One compilation error was fixed (missing close-paren + semicolon). *
2541 Deleted a few ore say-nothing-useful comments. * Some of John's code
2542 was strangely formatted to the point that it seemed completely out of
2543 place, so I took the liberty of reformatting it. Since I used GNU
2544 EMACS's <tab> key (which re-indents rather than inserts TAB
2545 characters), I had to propogate some indentation changes a little
2546 further than the bare necessity to match up with John's changes. (John
2547 seems to shoot for 2-space indents, while EMACS (and I, I confess)
2548 strongly prefer 4-space indents. The code that I was re-indenting had
2549 been put to 8-space indents, however.)
2551 I have *not* tested the code beyond compiling. I assume that John did
2552 (and that the compilation error was a result a minor change just
2553 before asking me to commit).
2554 * src/freeglut_cursor.c: Re-indentation style changes from John.
2556 There should be no alterations to how the code performs.
2558 (I modified how the X11 section of the set-cursor code is indented to
2559 slightly better match (IMHO) the rest of his changes.)
2563 * src/freeglut_menu.c: Converted a few "x != NULL" tests to "x" for
2566 I think that I've touched enough lines of source for one morning.
2567 * src/freeglut_menu.c: Cleaned up a little redundancy in a comment on
2568 the {menu_pen_*} variables.
2569 * src/freeglut_menu.c: Removed about 90 lines of say-nothing-new
2572 The code should be functionally unaltered by these changes.
2573 * src/freeglut_menu.c: Propogated a pointer-check from menu-attach to
2574 menu-detach. (Apparently, in some cases, the Menu member variable can
2577 Corrected the menu-attach code to make sure that both Window and Menu
2578 pointers are non-NULL (rather than "at least one").
2580 Rewrote button-checks to more simply and more clearly assert that the
2581 "menu button" is a valid button for menu actions: Instead of
2582 laboriously comparing against the three valid buttons (0, 1, 2 or
2583 GLUT_BUTTON_*), we do a simpler range-check and the upper bound is
2584 {FREEGLUT_MAX_MENUS}, allowing us to change the number of menuable
2585 buttons fairly easily in the future.
2587 Also deleted a few say-nothing-new comments.
2588 * src/freeglut_menu.c: Cosmetic changes (mostly deleted a few more
2589 say-nothing-new comments). The functionality of the code should be
2591 * src/freeglut_menu.c: Changed an "#elif TARGET_HOST_UNIX_X11" to
2592 "#else", since this simply governed menu aesthetics. I think that it's
2593 better to have a default that works than to break completely, should
2594 freeglut ever be ported to a new (non-WIN32, non-UNIX/X11) target.
2595 * src/freeglut_menu.c: Minor modifications to the menus:
2597 * Updated an old "TODO BEFORE STABLE" comment.
2599 * Expanded a comment re. some #define macros.
2601 * Made colors and font choice system dependant. The UNIX freeglut
2602 menus look more like UNIX GLUT menus, now. (This is PURELY a cosmetic
2603 change. But it achieves better compatibility visually.)
2604 * src/freeglut_main.c: Cleaned up glutMainLoop() a bit:
2606 * Deleted numerous say-nothing-new comments. * Reformatted a
2607 say-something-useful comment to fit on an 80-column display.
2608 * src/freeglut_main.c: Partially (re-?)unified some of the
2609 glutMainLoopEvent() code. The only code that really needs to be
2610 system-specific is the window event handling, which in MS-WINDOWS is
2611 tucked into a separate function. In UNIX/X11, it's all spilled out
2612 into glutMainLoopEvent() for some reason.
2614 If the X11 code could be tucked into another function,
2615 glutMainLoopEvent() could be platform-independant.
2619 * src/freeglut_main.c: Moved the idle callback out of
2620 glutMainLoopEvent() and into glutMainLoop(), per discussion on the
2621 list. The code looks okay, to me, though I remain less than wholly
2622 convinced that treating idles as special cases is the best way to go.
2623 Still, a case can be made for taking "non-event" idle callbacks out of
2624 the "event loop". From an organizational perspective, I think that
2625 it's an improvement, and it fixes a bug for at least one program.
2626 * src/freeglut_menu.c: Added John's text-positioning modification.
2628 The lines that he was altering were very oddly-split, so while I was
2629 at it, I repaired the line-break damage.
2630 * src/freeglut_joystick.c: Committed change from Nigel to fix the
2631 joystick bug. (The joystick code was not setting the GLUT window prior
2632 to calling callbacks.)
2634 Please verify. If so, this closes out, I think, the latter half of
2635 that bug report, so anyone with the means to modify/close bug reports
2636 should do so upon verification of the fix.
2637 * src/freeglut_main.c: Superficial cleanup of the code. Mostly taking
2642 /* * <Enslish recapituation of the single following C statement> */
2643 <single C statement>
2647 ... <single C statement>
2649 freeglut_main.c still has a lot of that in it, but it looks a bit
2651 * src/freeglut_init.c: Added some error-checking (particularly w.r.t.
2654 Deleted numerous 4-line "padding" sequences of C-as-English trans-
2655 literation comments.
2657 Re-indented some (but not all) code that is using 2-space indentation.
2658 (Most of the freeglut code seems to be using 4-space indentation.)
2660 I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
2661 filled with a ton of over-long lines and also appears to be in more
2662 flux than the rest of the code. (Well, I added one error-check to a
2664 * src/freeglut_font.c: Removed two more bogus "carriage return"
2665 references where the comments were in fact talking about a line feed
2666 (a.k.a. newline, LF, ^J, \n, ...).
2667 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
2668 Fixed the buglet about failing to report the program's name on error-
2669 messages. Please test. (Modified glutInit(), the state structure, and
2670 the warn/err functions.)
2672 2003-10-23 James Jones <puggles@users.sourceforge.net>
2674 * ChangeLog: Released 2.0.1
2676 2003-10-21 Christopher John Purnell
2678 * configure.in, include/GL/Makefile.am, include/GL/freeglut.h,
2679 include/GL/freeglut_std.h, include/GL/glut.h,
2680 progs/demos/Fractals/Makefile.am,
2681 progs/demos/Fractals_random/Makefile.am,
2682 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2683 src/Makefile.am: Added --disable-replace-glut option to autoconf
2686 2003-10-15 James Jones <puggles@users.sourceforge.net>
2688 * NEWS: Noted the release of 2.0.0
2689 * configure.in: Version bump
2693 * src/freeglut_font.c: Swept the freeglut_font.c for comment cleanup: *
2694 Got rid of the "rewrite C as English" comments. * Corrected several
2695 bogus references to "carriage returns" (in strings). The symbols were
2696 newlines or EOLs or LFs (\n). They were *not* carriage returns or CRs
2697 (\r). * Clarified the comments on glBitmap() calls.
2701 * progs/demos/Fractals/fractals.c,
2702 progs/demos/Fractals_random/fractals_random.c: Small bug-fix that's
2705 Modified the two Fractals* demos so that they only clear (for the
2706 random one) or redraw (for the non-random one) if there is need to do
2707 so. (E.g., pressing the space bar should not clear and redraw the
2708 random fractal since no parameters are altered.)
2709 * src/freeglut_cursor.c, src/freeglut_display.c: Removed the obsolete
2710 hack (or very ill-conceived dream), fgDisplayCursor().
2711 * src/freeglut_display.c: Cleaned up some of the style issues (mostly
2712 "fluff" comments) in freeglut_display.c.
2713 * src/freeglut_cursor.c: Comment-cleaning sweep.
2715 Mostly got rid of the say-it-in-English comments that were adding 1
2716 line of English and 2 or 3 lines of filler for each of several lines
2717 of C code. Updated a couple of other comments, and tweaked some
2719 * src/freeglut_callbacks.c: Cleaned up the comments a bit in the
2720 callbacks.c file (mostly removed some of the
2721 kill-4-lines-to-translate-one-line-of-C-into-English comments).
2725 * src/freeglut_cursor.c: Added all missing GLUT cursor types for X11.
2727 (Type NONE is not properly supported, yet.)
2729 Corrected behavior for the several old types: * Wrong glyphs. *
2730 Reversed glyphs (left/right confusion!)
2732 There are some remaining imperfections, but it's a lot closer to GLUT
2737 * src/freeglut_callbacks.c: Three tidying-up changes to the code of
2738 freeglut_callbacks.c; none of them are Earth-shattering, but as I
2739 swept through looking somewhat more systematically for errors, I
2740 picked these off. See the diff's for details.
2741 * src/freeglut_callbacks.c: Fixed a basic readability/style error in the
2742 code. (Two statements per line are almost never a good idea; in this
2743 case the combined line was past 80 columns.)
2744 * src/freeglut_callbacks.c: Added a safety-check on a memory allocation.
2745 (Timers were using dynamic memory allocation but NOT checking the
2747 * src/freeglut_menu.c: Committed two lines from John to help fix the
2749 * src/freeglut_callbacks.c: Check the glutDisplayFunc() callback for
2750 being a NULL pointer. This is illegal and is disallowed in GLUT 3.0+,
2751 so we disallow it too in freeglut 2.0.1+
2755 * progs/demos/Fractals/fractals.c,
2756 progs/demos/Fractals_random/fractals_random.c: Applied John's updated
2757 ReadConfigFile() changes to the fractals demos.
2758 * progs/demos/Fractals_random/fractals_random.c: Fixed: * glutInit()
2759 ordering w.r.t. glutInit*() and {argv} processing. * Aspect ratio. *
2760 Removed depth-buffer usage. (Also done for Fractals in previous
2762 * progs/demos/Fractals/fractals.c: A few minor changes: * glutInit*()
2763 calls should preceed glutInit(), per se, generally. This is so that
2764 glutInit()'s configuration (which picks up on user parameters) can
2765 override application defaults. * glutInit() should be called before
2766 ANY attempt to process {argv, argc}. This is because there may be
2767 GLUT/freeglut parameters (such as "-display" on X11). * If the window
2768 is tall and skinny, rather than short and squat, we need to handle
2769 aspect ratios differently.
2771 The first is a user-interface bug. The second is a serious bug
2772 (especially since the demo assumes that argv[1] contains a filename).
2773 The third is a display bug.
2777 * src/freeglut_main.c: Changed CreateNotify (in X11 ONLY) to act like a
2778 ConfigureNotify event.
2780 This is done so that subwindows on X11 will get "resize" events when
2781 they are created. Old GLUT did this---presumably by design in order to
2782 ensure that (a) All windows get notified of their size as soon as the
2783 window exists, and (b) probably more importantly, so that windows and
2784 sub-windows behave as much alike as possible. I believe that GLUT was
2785 right to do this, and I believe that compatibility requires this (I
2786 have a sample program that breaks in freeglut but not GLUT without
2789 I did not touch the Microsoft side, because I don't know what their OS
2790 does---nor if old GLUT was historically system-dependant about this.
2792 2003-10-08 Eric Sandall
2794 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:217,519,532: Fix menus
2795 to stay in the window (John Fay)
2799 * src/freeglut_menu.c: Several updates from John and myself.
2801 The broad outlines are:
2803 * Color schemes are now in variables, are closer to old GLUT, and are
2804 system dependant (as old GLUT did). * You can change the font to any
2805 bitmapped font more easily, which can aid in finding a better
2806 approximation. (Old GLUT does not seem to have used a GLUT font for
2807 the menus, which causes problems for us.) The menus rescale
2808 automatically, including the triangle "arrow" for sub-menus. * Menus
2809 have real borders, and the placement of highlighting is much improved.
2810 * src/freeglut_main.c: Fixed a bug in the menu callback behavior. Menus
2811 were not setting the current window correctly.
2813 2003-10-06 Eric Sandall
2815 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:328 Fix submenu
2818 2003-10-04 James Jones <puggles@users.sourceforge.net>
2820 * ChangeLog, src/freeglut_main.c, src/freeglut_structure.c: Tweaking for
2821 menu behavior in Linux regarding mouse whatnot - John Fay
2825 * src/freeglut_joystick.c: Applied a patch from "extraeme@netbsd.org" to
2826 add joystick support. Untested, but it compiles for me.
2828 Should also add Joystick support for older FreeBSD systems. Also
2830 * src/freeglut_main.c: Added support for more arbitrary number of mouse
2831 buttons (though only the first three can work with menus), in X. This
2832 closes a compatibility gap with old GLUT, and leaves us the option of
2833 supporting scroll-wheels properly.
2835 2003-09-27 Christopher John Purnell
2837 * progs/demos/Fractals/Makefile.am,
2838 progs/demos/Fractals_random/Makefile.am,
2839 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Don't
2842 2003-09-26 James Jones <puggles@users.sourceforge.net>
2844 * progs/demos/Makefile.am: Package the demos.dsw file.
2845 * progs/demos/demos.dsw: Demos workspace for MSVC users
2849 * src/freeglut_main.c: Corrected a bug w.r.t. display and joystick
2850 events. When getting ready to sleep, we need to go through ALL windows
2851 to check for pending joysticks and to check for pending redisplays. I
2852 was just going through all TOP- LEVEL windows. Eeek. This won't do.
2854 2003-09-23 Brian Paul
2856 * progs/demos/Fractals_random/fractals_random.c: added needClear flag to
2857 take care of initial window clear and window resize clears
2861 * src/freeglut_init.c: Per Nigel Stewart's comments, converted
2863 #ifdef TARGET_HOST_...
2869 in src/freeglut_init.c. These changes should not have any functional
2870 impact at this time, but you don't want bad examples lying around to
2871 trip people up later.
2872 * progs/demos/Fractals_random/fractals_random.c, src/freeglut_main.c,
2873 src/freeglut_window.c: Fixed: * GLUT_SINGLE now should behave more or
2874 less correctly. Thanks to Brian Paul!
2876 * Sleeping is now cognizant of outstanding redisplays.
2878 * Fractals_random has been restored more or less to as-before, save
2879 that it uses the more minimal glFlush() rather than glutSwapBuffers().
2880 glutSwapBuffers() was only required when freeglut was incorrectly
2881 handling promotion to double-buffering.
2885 * src/freeglut_main.c: Moved the #include/#ifdef/#define stuff up to the
2888 Changed #ifdef to #if, per Nigel(?)'s comment. Ooops.
2890 2003-09-22 Christopher John Purnell
2892 * progs/demos/Fractals/Makefile.am,
2893 progs/demos/Fractals_random/Makefile.am,
2894 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Fix to
2895 allow demos to compile before freeglut has been installed.
2897 2003-09-22 James Jones <puggles@users.sourceforge.net>
2899 * progs/demos/Fractals_random/fractals_random.c: Add an idle function to
2900 ensure that the screen gets drawn even when callbacks are not
2901 generated by the mouse/keyboard.
2903 2003-09-21 James Jones <puggles@users.sourceforge.net>
2905 * progs/demos/Fractals/fractals.c,
2906 progs/demos/Fractals_random/fractals_random.c: Note the possible
2907 buffer overflow in window_title
2908 * progs/demos/Fractals/fractals.c: Fix the window title.
2909 * progs/demos/Fractals_random/fractals_random.c: Fix window title, and
2910 ensure that the random integer is not forced to be zero (Thanks
2913 2003-09-20 James Jones <puggles@users.sourceforge.net>
2915 * src/freeglut_main.c: Richard Rauch's patch to ensure that freeglut
2916 does not use 100% CPU even while idling.
2917 * src/freeglut_font.c: Resolution for bug 809561 reported by Nigel
2918 Stewart, regarding a possible array underflow error of -1 in the event
2919 of "character" being zero.
2921 2003-09-14 Christopher John Purnell
2923 * configure.in, progs/demos/Fractals/Makefile.am,
2924 progs/demos/Fractals_random/Makefile.am,
2925 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2926 src/Makefile.am: Removed unused AC_PROG_RANLIB from configure.in Added
2927 passing of $(X_CFLAGS) to compiler.
2929 2003-09-14 James Jones <puggles@users.sourceforge.net>
2931 * include/GL/glut.h: Resolve bug 806008 -- let Microsoft's compiler know
2932 to use Windows libraries even if not using our project files.
2934 2003-09-13 James Jones <puggles@users.sourceforge.net>
2936 * ChangeLog: Taking care of keeping things mostly up-to-date
2937 * TODO: Most everything's been resolved for the 2.0.0 release.
2938 * src/freeglut_joystick.c: Thierry Thomas said that FreeBSD has no
2939 machine/joystick.h, instead a sys/joystick.h. I've made the change --
2940 here's hoping it works.
2941 * progs/demos/One/one.c: Removed the incorrect relative path for
2942 including freeglut.h
2943 * progs/demos/Fractals/Makefile.am,
2944 progs/demos/Fractals_random/Makefile.am,
2945 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Made all
2946 demos compile. Thanks to Thierry Thomas for reporting bug 802809,
2947 which alerted that *none* of the demos compiled automatically!
2948 * src/freeglut_main.c: Nigel Stewart's joystick fix (for hopefully all
2949 platforms), SourceForge bug 805481
2950 * progs/demos/Lorenz/lorenz.dsp, progs/demos/One/one.dsp: Fix location
2951 of the include files from a fixed to relative path. Closes bug 805477
2952 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp, freeglutstatic.dsw:
2953 Add dos line endings. Fixes bug 805476
2955 2003-09-10 Christopher John Purnell
2957 * src/freeglut_joystick.c: A minor fix to that last commit.
2958 * src/freeglut_joystick.c: Removed some remaining glib depandancy.
2960 2003-09-10 James Jones <puggles@users.sourceforge.net>
2962 * src/freeglut_main.c: Re-add catches for the case in which a menu
2963 callback destroys the menu. - John Fay
2965 2003-09-09 Christopher John Purnell
2967 * src/freeglut_main.c: More to fix a deinitialization related crash.
2968 * src/freeglut_structure.c: Fix for a deinitialization related crash.
2970 2003-09-08 James Jones <puggles@users.sourceforge.net>
2972 * src/freeglut_main.c, src/freeglut_structure.c: Menus should deallocate
2973 better now - John Fay
2975 2003-09-05 James Jones <puggles@users.sourceforge.net>
2977 * Makefile.am: Add freeglut_static.dsp to the releases
2979 2003-09-03 Christopher John Purnell
2981 * src/freeglut_gamemode.c: Moved #ifdef for non XFree86 X11 compile.
2983 2003-09-02 Christopher John Purnell
2985 * src/freeglut_window.c: Fix to stop fgSetWindow(NULL) crashing on X11.
2987 2003-08-29 James Jones <puggles@users.sourceforge.net>
2989 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
2990 These change a bunch of assignments to calls to set the current window
2991 correctly, and also (possibly) fixes most of the remaining menu
2993 * src/freeglut_main.c: Another typecast bugfix from John Fay
2995 2003-08-28 Christopher John Purnell
2997 * src/freeglut_init.c: Changed #ifdef to #if
2999 2003-08-28 James Jones <puggles@users.sourceforge.net>
3001 * src/freeglut_font.c: change the GLUT stroke function arguments from
3002 "const char *" to "const unsigned char *" - John Fay
3003 * include/GL/freeglut_ext.h, include/GL/glut.h: Changes stroke function
3004 arguments from "const char*" to "const unsigned char *" - John Fay
3006 2003-08-28 Christopher John Purnell
3008 * freeglut-1.3: Removing files from old freeglut-1.3 directory.
3010 2003-08-28 James Jones <puggles@users.sourceforge.net>
3012 * src/freeglut_callbacks.c, src/freeglut_geometry.c,
3013 src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
3014 src/freeglut_menu.c, src/freeglut_structure.c: Casting changes, John
3017 2003-08-27 James Jones <puggles@users.sourceforge.net>
3019 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
3020 src/freeglut_menu.c: Major overhaul to the menu system, by John Fay
3022 2003-08-27 Christopher John Purnell
3024 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3025 Added double underscores to the header included macros.
3027 2003-08-20 Christopher John Purnell
3029 * src/freeglut_gamemode.c: Minor typo fix
3031 2003-08-19 Christopher John Purnell
3033 * src/freeglut_gamemode.c: Moving that "#if TARGET_HOST_UNIX_X11" to the
3036 2003-08-17 Christopher John Purnell
3038 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
3039 src/freeglut_window.c: Game mode fixes from Bernhard Kaindl and Eric
3042 2003-08-05 Christopher John Purnell
3044 * src/Makefile.am, src/freeglut_menu.c, src/freeglut_window.c,
3045 src/mwmborder.c: Using override_redirect instead of motif wm hints. It
3046 now rasies the menu windows before showing them. Move the show to
3047 after the reshape and position so we don't get a flash of the menu
3048 window at it's old size and position.
3049 * src/mwmborder.c: I suspect a lot of people will not have motif
3052 2003-08-05 Eric Sandall
3054 * ChangeLog, src/Makefile.am, src/freeglut_window.c: (98)
3055 src/Makefile.am:34 Added mwmborder.c (99) src/freeglut_window.c:67
3056 Removed #included "mwmborder.c"
3057 * ChangeLog, src/freeglut_main.c: src/freeglut_main.c:816 and :1571, set
3058 the current window (John F. Fay)
3060 2003-08-04 Christopher John Purnell
3062 * src/freeglut_state.c: Added X11 code for
3063 glutGet(GLUT_WINDOW_BORDER_WIDTH) and
3064 glutGet(GLUT_WINDOW_HEADER_HEIGHT).
3065 * src/freeglut_internal.h, src/freeglut_state.c: Replacing
3066 glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on X11 with
3067 something that works. Also a minor correction to the xf86vidmode
3070 2003-08-04 James Jones <puggles@users.sourceforge.net>
3072 * src/freeglut_window.c: Keep the X11 decoration-zapping code confined
3073 to X11-using platforms! Oops!
3074 * src/freeglut_window.c, src/mwmborder.c: Menus' decorations are removed
3075 on Linux. Not sure if we want the mwmborder.c a separate file or not;
3076 doing it separate for right now. Makefile was not updated, since the
3077 .c is just #included.
3079 2003-08-03 Christopher John Purnell
3081 * configure.in: Got rid of configure warnings when using a newer
3084 2003-08-02 Christopher John Purnell
3086 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Putting
3087 stuff back that was undone with the menu code committed.
3089 2003-08-02 James Jones <puggles@users.sourceforge.net>
3091 * src/freeglut_callbacks.c, src/freeglut_display.c,
3092 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
3093 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
3094 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
3095 Major menu changes (they appear in their own window, have own
3096 rendering context) by John Fay and a little by James C. Jones. They
3097 work perfectly on Win32, and work... on Linux.
3099 2003-08-01 Christopher John Purnell
3101 * configure.in, src/Makefile.am, src/freeglut_glutfont_definitions.c,
3102 src/freeglut_internal.h: Added autoconf detection for the xf86 vid
3105 2003-08-01 Eric Sandall
3107 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c:551 Removed
3108 extra carriage return for Windows users (John F. Fay)
3109 * ChangeLog: Credit Dave Reed for fix
3110 * ChangeLog, src/freeglut_internal.h: src/freeglut_initial.c:91 Added
3111 check for SOLARIS OS
3113 2003-07-23 Christopher John Purnell
3115 * include/GL/glut.h, src/Makefile.am, src/freeglut_font.c,
3116 src/freeglut_glutfont_definitions.c: This should put an end to the
3117 font binary compatibility issue.
3119 2003-07-23 Eric Sandall
3121 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c Windowing
3123 * ChangeLog, doc/Makefile.am: doc/Makefile.am:4 Removed trailing
3124 backslash and added an empty last line
3126 2003-07-23 Brian Paul
3128 * doc/download.html: no change, testing CVS
3130 2003-07-22 Brian Paul
3132 * doc/download.html: no change, just testing CVS
3134 2003-07-22 Eric Sandall
3136 * ChangeLog, freeglut.lsm: freeglut.lsm:3 Removed 'beta' label for next
3137 release, thanks to Bernhard Kaindl.
3139 2003-07-21 Christopher John Purnell
3141 * src/Makefile.am: The version info had the revision and the age
3144 2003-07-21 Eric Sandall
3146 * ChangeLog, src/Makefile.am: src/Makefile.am:38 Changed versioning to
3147 11:0:8 thanks to Bernhard Kaindl
3149 2003-07-17 Eric Sandall
3151 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Applied John F. Fay's
3152 fixes to freeglut.dsp and freeglut_static.dsp
3153 * ChangeLog, src/freeglut_state.c: Changed the overlay
3154 (freeglut_state.c:662) to return FALSE, as it's not imp lemented yet
3156 2003-07-12 Andreas Umbach <marvin@dataway.ch>
3158 * src/Makefile.am: renamed freeglut library to glut, bumped version info
3160 * configure.in: bumped version number to 2.0.0
3161 * Makefile.am, configure.in, doc/Makefile.am, include/GL/Makefile.am,
3162 progs/Makefile.am, progs/demos/Fractals/Makefile.am,
3163 progs/demos/Fractals_random/Makefile.am,
3164 progs/demos/Lorenz/Makefile.am, progs/demos/Makefile.am,
3165 progs/demos/One/Makefile.am, src/Makefile.am: changes for make dist
3166 * freeglut13.plg: MSVC generated file
3168 2003-07-11 Christopher John Purnell
3170 * include/GL/glut.h, src/freeglut_font.c: Fix for the font binary
3171 compatibility problem.
3173 2003-07-10 Christopher John Purnell
3175 * src/Makefile.am: Changed to build libfreeglut.so.2.0.0
3177 2003-07-10 James Jones <puggles@users.sourceforge.net>
3179 * TODO, freeglut.dsp, freeglut_static.dsp: Changes to TODO, Windows
3180 files - from John Fay
3181 * progs/demos/Fractals_random/Fractals_random.dsp: Changes by John Fay
3182 * progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c:
3183 Changes to the Fractals demo by John Fay
3184 * progs/demos/One/one.dsp: Initial project file from John Fay
3185 * progs/demos/Lorenz/lorenz.c, progs/demos/Lorenz/lorenz.dsp:
3186 Modifications from John Fay
3188 2003-07-07 Christopher John Purnell
3190 * src/freeglut_main.c: glutMainLoopEvent() was not closing windows
3191 properly. Moved call to fgCloseWindows() from glutMainLoop() to the
3192 end of glutMainLoopEvent().
3194 2003-07-03 Eric Sandall
3196 * ChangeLog, src/freeglut_misc.c: Removed unused char *ptr from
3199 2003-07-02 Christopher John Purnell
3201 * src/freeglut_main.c: It was crashing on and event for a unknown
3204 2003-07-02 Brian Paul
3206 * src/freeglut_misc.c: rewrite of glutExtensionSupported - works
3209 2003-07-02 Eric Sandall
3211 * ChangeLog: * Removed tests directory
3212 * ChangeLog, Makefile.am, configure.in, progs/demos/One,
3213 progs/demos/One/Makefile.am, progs/demos/One/one.c, tests: * Removed
3214 genfonts/genstrokes code, updated configure.in and Makefile.in
3216 * Moved tests/one.c into progs/demos/One/one.c, updated configure.in
3218 * genfonts: Removed genfonts
3220 2003-07-02 Christopher John Purnell
3222 * genfonts/to_stroke.y: Added some semicolons that yacc was warning
3225 2003-07-01 James Jones <puggles@users.sourceforge.net>
3227 * AUTHORS: John Fay commanded me to add my name to the file. He's crazy,
3230 2003-07-01 Eric Sandall
3232 * ChangeLog, src/freeglut_misc.c: Fixed the 'ptr + len' problem in
3235 2003-07-01 Brian Paul
3237 * doc/freeglut_user_interface.html: version bumps
3238 * tests/Makefile.am: bump version to 2.0
3239 * src/Makefile.am, src/freeglutdll.def: bump versions to 2.0
3240 * src/freeglut_gamemode.c: xf86VidMode error checking (Andrew
3243 2003-06-30 Brian Paul
3245 * progs/demos/Lorenz, progs/demos/Lorenz/lorenz.c,
3246 progs/demos/Lorenz/lorenz.dsp: Lorenz attractor demo (John Fay)
3247 * freeglut.dsp, freeglut_static.dsp: updates from John Fay
3249 2003-06-28 Eric Sandall
3251 * ChangeLog, include/GL/Makefile.am: Now installs freeglut_ext.h and
3252 glut.h to /usr/include/GL (was missing before)
3254 2003-06-27 Brian Paul
3256 * include/GL/freeglut_ext.h, src/freeglut_init.c,
3257 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_state.c,
3258 src/freeglut_stroke_mono_roman.c: XF86 game mode fixes, context
3259 sharing option. (John Fay)
3261 2003-06-25 Eric Sandall
3263 * ChangeLog: Added another of my changes (freeglut.kdevelop) and fixed
3264 the version number for my MS VS change (*.dsp)
3266 2003-06-25 Brian Paul
3268 * src/freeglut_internal.h: version bumps
3269 * freeglut.lsm, include/GL/glut.h, src/freeglut_stroke_mono_roman.c,
3270 src/freeglut_stroke_roman.c: Assorted version 2.0.0 updates (John
3272 * doc/freeglut_user_interface.html: updated version, italicize freeglut
3275 2003-06-25 Eric Sandall
3277 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Added 'freeglut_ext.c'
3278 to the project files 'freeglut.dsp' and 'freeglut_static.dsp' (New
3281 2003-06-24 Andreas Umbach <marvin@dataway.ch>
3283 * ChangeLog: Fixed autogen.sh and removed aclocal.m4
3284 * aclocal.m4: this file is autogenerated by aclocal
3285 * autogen.sh: fixed aclocal / autoheader order; some cosmetics
3287 2003-06-24 Eric Sandall
3289 * freeglut.kdevelop: Project file for Gideon (KDevelop 3.0)
3291 2003-06-23 Eric Sandall
3293 * ChangeLog, Makefile.am, TODO, configure.in, freeglut.dsp,
3294 freeglut.kdevprj, freeglut13.dsp, freeglut13.plg, freeglut_static.dsp,
3295 freeglutdll.dsp, src, src/Makefile.am, src/freeglut_callbacks.c,
3296 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
3297 src/freeglut_font.c, src/freeglut_font_data.c,
3298 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
3299 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
3300 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_overlay.c,
3301 src/freeglut_state.c, src/freeglut_stroke_mono_roman.c,
3302 src/freeglut_stroke_roman.c, src/freeglut_structure.c,
3303 src/freeglut_teapot.c, src/freeglut_videoresize.c,
3304 src/freeglut_window.c, src/freeglutdll.def, src/templates,
3305 src/templates/cpp_template, src/templates/header_template,
3306 tests/Makefile.am: Changed all references to the 'freeglut-1.3'
3307 directory to 'src', copied 'freeglut-1.3' to 'src' and added all files
3308 from 'src' to the repository (TODO #34).
3309 * ChangeLog: Updated ChangeLog with my aclocal.m4 change
3310 * aclocal.m4: Updated aclocal.m4 with aclocal 1.7.3 (was created with
3313 2003-06-23 Brian Paul
3315 * freeglut-1.3/freeglut_geometry.c: adjusted precision (John Fay)
3316 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3317 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3318 freeglut-1.3/freeglut_teapot.c, include/GL/freeglut_ext.h,
3319 include/GL/glut.h: Assorted updates from John Fay.
3321 2003-06-20 Eric Sandall
3323 * TODO: Updated TODO from John Fay
3325 2003-06-20 Brian Paul
3327 * progs, progs/demos, progs/demos/Fractals,
3328 progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c,
3329 progs/demos/Fractals/fractals.dat, progs/demos/Fractals_random,
3330 progs/demos/Fractals_random/Fractals_random.dsp,
3331 progs/demos/Fractals_random/fractals.dat,
3332 progs/demos/Fractals_random/fractals_random.c: Fractal demo (John Fay)
3334 2003-06-20 Eric Sandall
3336 * ChangeLog: Added the autogen.sh addition to ChangeLog
3337 * autogen.sh: Initial version of autogen.sh, tested here and creates the
3340 2003-06-20 Brian Paul
3342 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_state.c:
3343 Windows patches (Eero Pajarre)
3344 * NEWS: list the 1.4 release (fill in date) - this is a cvs check-in
3347 2003-06-19 Don Heyse <dheyse@hotmail.com>
3349 * freeglut-1.3/freeglut_joystick.c: Oops, missed the
3350 fghJoystickRawRead() fix for FreeBSD.
3352 2003-06-19 Brian Paul
3354 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3355 freeglut-1.3/freeglut_ext.c, freeglut-1.3/freeglut_internal.h,
3356 freeglut-1.3/freeglut_main.c: s/FreeGLUT/freeglut/
3358 2003-06-19 Don Heyse <dheyse@hotmail.com>
3360 * freeglut-1.3/freeglut_joystick.c: Applied tthierry's patch to fix
3361 compiling on FreeBSD.
3363 2003-06-19 Brian Paul
3365 * freeglut-1.3/freeglut_internal.h: added VERSION_MAJOR/MINOR/PATCH
3366 * doc/freeglut_user_interface.html: restore text lost from previous
3368 * include/GL/glut.h: s/FREEGLUT_VERSION_1_3/FREEGLUT_VERSION_1_4/
3370 2003-06-19 Eric Sandall
3372 * include/GL/freeglut_ext.h, include/GL/glut.h: GLUT_VERSION updates
3375 2003-06-18 Eric Sandall
3377 * AUTHORS: Forgot a file...looked so innocous just sitting there... :)
3378 * ChangeLog, doc/freeglut_user_interface.html,
3379 freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_ext.c,
3380 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_menu.c,
3381 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_teapot.c,
3382 freeglut-1.3/freeglut_window.c, include/GL/freeglut_ext.h: * Hopefully
3383 I did THIS one right (used 'cvs update' to Merge)
3385 Authors - The first update in quite a while
3387 ChangeLog - Added the recent changes
3389 freeglut_callbacks.c - Added Aleksandar Donev's menu destruction
3392 freeglut_internal.h - Added the user data to the structures and made
3393 the menu state/status callbacks window-independent
3395 freeglut_menu.c - Removed several OpenGL compiler warnings and added
3396 A. Donev's menu user data functions
3398 freeglut_structure.c - Added Aleksandar Donev's menu destruction
3401 freeglut_teapot.c - Removed or suppressed several compiler warnings
3403 freeglut_window.c - Updated the window positioning code and added A.
3404 Donev's window user data
3406 freeglut_ext.h - Added the menu destruction callback and user data
3408 * freeglut-1.3/freeglut_ext.h: * Removed freeglut_ext.h (wasn't supposed
3411 2003-06-18 Brian Paul
3413 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_internal.h,
3414 freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h,
3415 include/GL/glut.h: Added FREEGLUT_VERSION_1_3. Added GLUT_VERSION for
3416 glutGet(). Added glutGet() documentation.
3417 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_ext.h,
3418 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_internal.h,
3419 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_state.c,
3420 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3421 remove DOS-style CR characters
3422 * doc/freeglut_user_interface.html: added glutGetProcAddress and
3424 * ChangeLog: added glutGetProcAddress() and GLUT_FPS
3426 2003-06-17 Brian Paul
3428 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3429 freeglut-1.3/freeglut_internal.h: restore GLUT_FPS env var feature
3430 lost in previous check-in
3432 2003-06-17 Eric Sandall
3434 * ChangeLog: * Updated ChangeLog
3435 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: Set
3436 #4: * Fixes a couple of compiler warnings and other bugs. *
3437 freeglut_main.c: Removes a compiler warning * freeglut_structure.c:
3438 Sets the current window before calling the window closure callback *
3439 Possibly other changes
3440 * freeglut-1.3/freeglut_ext.h: * Rest of Set #3
3441 * freeglut-1.3/freeglut_state.c: Set #3: Fixes for window positioning
3443 * freeglut-1.3/freeglut_init.c: Eero Pajarre's GLUT_ICON code for
3445 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3446 freeglut-1.3/freeglut_window.c: First group of patches: Adds
3447 single-buffered rendering (or its emulation) in Windows.
3449 2003-06-17 Brian Paul
3451 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3452 freeglut-1.3/freeglut_internal.h: added GLUT_FPS env var option
3453 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_ext.c,
3454 include/GL/freeglut_ext.h: added glutGetProcAddress()
3456 2003-06-12 Don Heyse <dheyse@hotmail.com>
3458 * freeglut-1.3/freeglut_main.c: Fix the keyboard up callback and a
3460 * freeglut-1.3/freeglut_structure.c: Set the current window before
3461 calling the window closure callback.
3462 * freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h: John's
3463 window positioning corrections.
3464 * freeglut-1.3/freeglut_init.c: Eero Pajarre's icon code.
3465 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3466 freeglut-1.3/freeglut_window.c: Single buffered rendering for Windows.
3468 2003-06-02 Don Heyse <dheyse@hotmail.com>
3470 * doc/freeglut_user_interface.html: John Documented InitWindowPosition
3471 extensions and added some kbd fn info.
3472 * ChangeLog: Documented Johns changes from May 03.
3473 * freeglut-1.3/freeglut_state.c: Do not allow glutGet to reposition the
3474 window 1 pixel toward bottom right.
3475 * freeglut-1.3/freeglut_main.c: Pass mouse pos to Windows kbd callback.
3476 Resequenced a few things for UNIX.
3478 2003-03-23 Christopher John Purnell
3480 * freeglut-1.3/freeglut_gamemode.c: Applied patch to fix GameMode issues
3481 supplied by Bernhard Kaindl.
3483 2003-03-12 Don Heyse <dheyse@hotmail.com>
3485 * include/GL/glut.h: Switch to ANSI C comments.
3486 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3487 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_geometry.c,
3488 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_joystick.c,
3489 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c,
3490 freeglut-1.3/freeglut_window.c: Switch to ANSI C comments. Removed
3491 always true tests on unsigned char. Single buffering fix..
3493 2003-02-13 Don Heyse <dheyse@hotmail.com>
3495 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp: Switching to John
3496 Fays version of the VC++ project files.
3498 2003-02-08 Steve Baker <steve@sjbaker.org>
3500 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_joystick.c:
3501 Removed erroneous GPL license comments.
3503 2003-02-07 Don Heyse <dheyse@hotmail.com>
3505 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3506 freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_font_data.c,
3507 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3508 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3509 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3510 freeglut-1.3/freeglut_stroke_mono_roman.c,
3511 freeglut-1.3/freeglut_stroke_roman.c, freeglut-1.3/freeglut_teapot.c,
3512 freeglut-1.3/freeglut_videoresize.c: Moved freeglut_internal.h to the
3513 freeglut source code private directory.
3514 * freeglut-1.3/freeglut_structure.c: SubWindow border thickness fix.
3515 Overlay changes in glutGet.
3516 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3517 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_window.c: Johns
3518 changes for layers, fgSetWindow, and fgSetupPixelFormat.
3519 * freeglut-1.3/freeglut_font.c: John fixed a bug that make bitmap font
3520 one pixel wider than its drawn.
3521 * freeglut-1.3/freeglut_internal.h, include/GL/freeglut_internal.h:
3522 Moved freeglut_internal.h to the private directory with the other
3524 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3525 Broke freeglut.h into glut.h and freeglut_ext.h
3527 2003-01-06 Don Heyse <dheyse@hotmail.com>
3529 * freeglut-1.3/freeglutdll.def: Exports file for Win32 dll. One EXPORT
3530 for each FGAPI line in freeglut.h
3532 2003-01-04 Steve Baker <steve@sjbaker.org>
3534 * aclocal.m4, freeglut-1.3/freeglut_joystick.c: Cleanup joystick
3537 2002-12-10 Don Heyse <dheyse@hotmail.com>
3539 * freeglut.dsw, freeglutdll.dsp: Allow DLL and static library build on
3541 * include/GL/freeglut.h: Added check for FREEGLUT_DLL to allow static &
3542 DLL build on Windows.
3544 2002-12-04 Don Heyse <dheyse@hotmail.com>
3546 * freeglut-1.3/freeglut_font_data.c: More bitmap font spacing fixes from
3549 2002-11-29 Don Heyse <dheyse@hotmail.com>
3551 * freeglut-1.3/freeglut_init.c: Fixed Win95 crash when getenv("DISPLAY")
3553 * freeglut-1.3/freeglut_font_data.c: The lowercase t in helvetica12 was
3555 * freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c:
3556 Adjusted character spacing on a few fonts.
3557 * ChangeLog: Many updates from John Fay.
3558 * freeglutstatic.dsw: Added Visual C++ 6 Static library project for John
3561 2002-11-28 Don Heyse <dheyse@hotmail.com>
3563 * freeglut.dsp: Visual C++ 6 project file for static freeglut lib.
3564 * include/GL/freeglut.h, include/GL/freeglut_internal.h: Many updates
3565 from John Fay. (freeglut.h may need a small change to allow Win32 DLL
3567 * freeglut-1.3/freeglut_geometry.c: Many updates from John Fay.
3568 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3569 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3570 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3571 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3572 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3573 freeglut-1.3/freeglut_stroke_mono_roman.c,
3574 freeglut-1.3/freeglut_stroke_roman.c,
3575 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3576 Many updates from John Fay.
3577 * freeglut-1.3/freeglut_joystick.c: Fixes from freeglut_portable patch.
3578 Memory leak fix from John. Return_if_fail fix.
3580 2002-11-26 Don Heyse <dheyse@hotmail.com>
3582 * doc/freeglut_user_interface.html: Added on behalf of John Fay.
3584 2002-10-22 Don Heyse <dheyse@hotmail.com>
3586 * freeglut-1.3/freeglut_geometry.c: Implemented tetrahedra, octahedra,
3587 dodecahedra, and icosahedra. Checked in on behalf of John F. Fay
3588 <john.fay@eglin.af.mil>.
3590 2002-05-20 Don Heyse <dheyse@hotmail.com>
3592 * freeglut-1.3/freeglut_font.c: Fixed previous fix so it compiles.
3594 2002-05-20 Christopher John Purnell
3596 * freeglut-1.3/freeglut_font.c: My bad.
3598 2002-05-18 Christopher John Purnell
3600 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_font.c,
3601 freeglut-1.3/freeglut_stroke_mono_roman.c,
3602 freeglut-1.3/freeglut_stroke_roman.c, genfonts/Roman_M.src,
3603 genfonts/lex.l, genfonts/to_stroke.y, genfonts/wfont.h,
3604 include/GL/freeglut.h, include/GL/freeglut_internal.h: Added stroke
3607 2002-05-17 Christopher John Purnell
3609 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3610 freeglut-1.3/freeglut_overlay.c, freeglut-1.3/freeglut_teapot.c,
3611 freeglut-1.3/freeglut_videoresize.c, tests/one.c: Removed some DOS
3614 2002-05-16 Christopher John Purnell
3616 * freeglut-1.3/freeglut_main.c: Removed one last glib call.
3618 2002-01-20 Steve Baker <steve@sjbaker.org>
3620 * README, freeglut-1.3/.deps/freeglut_callbacks.P,
3621 freeglut-1.3/.deps/freeglut_cursor.P,
3622 freeglut-1.3/.deps/freeglut_display.P,
3623 freeglut-1.3/.deps/freeglut_font.P,
3624 freeglut-1.3/.deps/freeglut_font_data.P,
3625 freeglut-1.3/.deps/freeglut_gamemode.P,
3626 freeglut-1.3/.deps/freeglut_geometry.P,
3627 freeglut-1.3/.deps/freeglut_init.P,
3628 freeglut-1.3/.deps/freeglut_joystick.P,
3629 freeglut-1.3/.deps/freeglut_main.P,
3630 freeglut-1.3/.deps/freeglut_menu.P,
3631 freeglut-1.3/.deps/freeglut_misc.P,
3632 freeglut-1.3/.deps/freeglut_overlay.P,
3633 freeglut-1.3/.deps/freeglut_state.P,
3634 freeglut-1.3/.deps/freeglut_structure.P,
3635 freeglut-1.3/.deps/freeglut_teapot.P: Removed a bunch of '.P' files
3636 that don't belong in the CVS archive.
3638 2001-08-05 Christopher John Purnell
3640 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_main.c,
3641 freeglut-1.3/freeglut_window.c, include/GL/freeglut_internal.h: Added
3642 keyup events code. Added missing specal keys. Made menu callbacks
3644 * freeglut-1.3/freeglut_window.c: More position tweeks.
3646 2001-08-04 Christopher John Purnell
3648 * freeglut-1.3/freeglut_main.c, include/GL/freeglut.h: Fixed redisplay
3649 bug. Fixed modifier values.
3650 * freeglut-1.3/freeglut_window.c: Improved window positioning.
3652 2001-07-30 Christopher John Purnell
3654 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: A
3657 2001-07-30 Andreas Umbach <marvin@dataway.ch>
3659 * freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_main.c: one more
3661 * include/GL/freeglut_internal.h: removed glib dependencies from win32
3662 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3663 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_window.c: -
3664 removed glib dependencies from win32 code
3666 2001-07-29 Christopher John Purnell
3668 * freeglut-1.3/freeglut_structure.c: Fixed bug list code.
3669 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3670 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3671 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3672 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3673 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3674 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3675 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c,
3676 genfonts/Makefile.am, genfonts/genfonts.c, genfonts/genstroke.c,
3677 include/GL/freeglut.h, include/GL/freeglut_internal.h: Removed glib
3679 * configure.in, freeglut-1.3/Makefile.am, genfonts/Makefile.am: The
3680 build system now looks for X.
3682 2001-07-27 Steve Baker <steve@sjbaker.org>
3684 * doc, doc/download.html, doc/freeglut.html, doc/freeglut_logo.png,
3685 doc/index.html, doc/ogl_sm.png, doc/progress.html, doc/structure.html:
3687 * genfonts/.deps, tests/.deps: Removed some more files that don't belong
3689 * configure, freeglut-1.3/Makefile, freeglut-1.3/Makefile.in,
3690 genfonts/Makefile, genfonts/Makefile.in, include/GL/Makefile,
3691 include/GL/Makefile.in, include/Makefile, include/Makefile.in,
3692 tests/Makefile, tests/Makefile.in: Removed files checked in in error.
3693 * freeglut-1.3/.deps, freeglut-1.3/.deps/freeglut_callbacks.P,
3694 freeglut-1.3/.deps/freeglut_cursor.P,
3695 freeglut-1.3/.deps/freeglut_display.P,
3696 freeglut-1.3/.deps/freeglut_font.P,
3697 freeglut-1.3/.deps/freeglut_font_data.P,
3698 freeglut-1.3/.deps/freeglut_gamemode.P,
3699 freeglut-1.3/.deps/freeglut_geometry.P,
3700 freeglut-1.3/.deps/freeglut_init.P,
3701 freeglut-1.3/.deps/freeglut_joystick.P,
3702 freeglut-1.3/.deps/freeglut_main.P,
3703 freeglut-1.3/.deps/freeglut_menu.P,
3704 freeglut-1.3/.deps/freeglut_misc.P,
3705 freeglut-1.3/.deps/freeglut_overlay.P,
3706 freeglut-1.3/.deps/freeglut_state.P,
3707 freeglut-1.3/.deps/freeglut_structure.P,
3708 freeglut-1.3/.deps/freeglut_teapot.P,
3709 freeglut-1.3/.deps/freeglut_videoresize.P,
3710 freeglut-1.3/.deps/freeglut_window.P, freeglut-1.3/Makefile,
3711 freeglut-1.3/Makefile.in: Initial revision
3712 * ., AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
3713 TODO, acconfig.h, aclocal.m4, configure, configure.in, freeglut-1.3,
3714 freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3715 freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3716 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3717 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3718 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3719 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3720 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3721 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_structure.c,
3722 freeglut-1.3/freeglut_teapot.c, freeglut-1.3/freeglut_videoresize.c,
3723 freeglut-1.3/freeglut_window.c, freeglut-1.3/templates,
3724 freeglut-1.3/templates/cpp_template,
3725 freeglut-1.3/templates/header_template, freeglut.dsw,
3726 freeglut.kdevprj, freeglut.lsm, freeglut13.dsp, freeglut13.plg,
3727 genfonts, genfonts/.deps, genfonts/.deps/genfonts.P,
3728 genfonts/.deps/genstroke.P, genfonts/Makefile, genfonts/Makefile.am,
3729 genfonts/Makefile.in, genfonts/Roman.src, genfonts/Roman_M.src,
3730 genfonts/genfonts.c, genfonts/genstroke.c, include, include/GL,
3731 include/GL/Makefile, include/GL/Makefile.am, include/GL/Makefile.in,
3732 include/GL/freeglut.h, include/GL/freeglut_internal.h,
3733 include/Makefile, include/Makefile.am, include/Makefile.in,
3734 install-sh, mkinstalldirs, stamp-h, stamp-h.in, tests, tests/.deps,
3735 tests/.deps/one.P, tests/Makefile, tests/Makefile.am,
3736 tests/Makefile.in, tests/one.c: Initial revision