1 2009-06-11 Sven Panne <sven.panne@aedion.de>
3 * include/GL/freeglut_std.h: Disable the ATEXIT_HACK for Watcom, their
4 "exit" function has a different calling convention, leading to
7 2009-05-24 Sven Panne <sven.panne@aedion.de>
9 * freeglut_static_vs2008.vcproj,freeglut_vs2008.vcproj,
10 freeglut_vs2008.sln,freeglut_vs2008_static.sln: Move all files related
11 to Visual Studio 2008 into 2 directories, one for the normal DLL
12 build, and one for the static build. We should do this for other IDEs,
15 2009-05-22 Sven Panne <sven.panne@aedion.de>
17 * include/GL/freeglut_std.h: Avoid warnings when the ATEXIT_HACK is used
18 with GCC, making the hack even uglier.
20 * include/GL/freeglut_std.h,src/freeglut_init.c,src/freeglut_internal.h,
21 src/freeglut_menu.c,src/freeglut_window.c,src/freeglutdll.def: Added the
22 ugly ATEXIT_HACK from GLUT 3.7, making freeglut binary compatible with the
23 GLUT DLLs out in the wild.
25 * src/freeglutdll.def: Removed obsolete lines. Fixed version number.
27 * freeglut_vs2008.vcproj: Use our module definition file, so we get
28 undecorated names in the resulting DLL, just like the classic GLUT DLL
31 2009-04-05 Sven Panne <sven.panne@aedion.de>
33 * Makefile.am: Added more project/workspace/... files to distribution.
34 * .cvsignore,doc/.cvsignore,include/.cvsignore,include/GL/.cvsignore,
35 progs/.cvsignore,progs/demos/.cvsignore,
36 progs/demos/CallbackMaker/.cvsignore,progs/demos/Fractals/.cvsignore,
37 progs/demos/Fractals_random/.cvsignore,progs/demos/Lorenz/.cvsignore,
38 progs/demos/One/.cvsignore,progs/demos/shapes/.cvsignore,
39 src/.cvsignore: Removed remnants of CVS.
41 2009-03-30 Sven Panne <sven.panne@aedion.de>
43 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make the example fully
46 2009-03-27 Sven Panne <sven.panne@aedion.de>
48 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make Visual C happy by
49 including stddef.h and explicitly marking some literals as float.
51 2009-03-26 Sven Panne <sven.panne@aedion.de>
53 * src/freeglut_init.c,src/freeglut_input_devices.c: Unbreak the build:
54 C++ style comments are not allowed in ISO C90
56 2009-03-19 John F. Fay <john.fay.ctr@eglin.af.mil>
58 * src/freeglut_input_devices.c: Fixing "freeglut_input_devices.c" for
59 MSVS2005 and later per e-mail from Diederick Niehorster dated Thu
62 2009-03-17 John F. Fay <john.fay.ctr@eglin.af.mil>
64 * src/freeglut_init.c, src/freeglut_input_devices.c: Removing some build
65 warnings from deprecated functions for VS2008 per e-mail from
66 Diederick Niehorster dated Tue 3/10/2009
67 * freeglut_static_vs2008.vcproj, freeglut_vs2008.sln,
68 freeglut_vs2008.vcproj,
69 progs/demos/CallbackMaker/CallbackMakerStatic_vs2008.vcproj,
70 progs/demos/CallbackMaker/CallbackMaker_vs2008.vcproj,
71 progs/demos/Fractals/FractalsStatic_vs2008.vcproj,
72 progs/demos/Fractals/Fractals_vs2008.vcproj,
73 progs/demos/Fractals_random/Fractals_randomStatic_vs2008.vcproj,
74 progs/demos/Fractals_random/Fractals_random_vs2008.vcproj,
75 progs/demos/Lorenz/lorenzStatic_vs2008.vcproj,
76 progs/demos/Lorenz/lorenz_vs2008.vcproj,
77 progs/demos/One/oneStatic_vs2008.vcproj,
78 progs/demos/One/one_vs2008.vcproj, progs/demos/demos_vs2008.sln,
79 progs/demos/shapes/shapesStatic_vs2008.vcproj,
80 progs/demos/shapes/shapes_vs2008.vcproj,
81 progs/demos/smooth_opengl3/smooth_opengl3Static_vs2008.vcproj,
82 progs/demos/smooth_opengl3/smooth_opengl3_vs2008.vcproj: Adding Visual
83 Studio 2008 solution and project files
85 2009-03-16 Sven Panne <sven.panne@aedion.de>
87 * src/freeglut_init.c,src/freeglut_window.c: Set the default number of
88 samples per pixel to 4 and actually use the value set with
89 glutSetOption(GLUT_MULTISAMPLE,...) in Windows code. Previously the
90 Windows code used a hardwired value of 4 and the GLX code had a
91 default of 0, neither made much sense. Similarly, set the default
92 number of auxiliary buffers to 1 and use that value when GLUT_AUX is
93 used. Note: There latter token has the same value as GLUT_AUX1, and
94 for historical reasons we seem to have 2 APIs to set the number of
95 auxiliary buffers: Explicitly using GLUT_AUX1 ... GLUT_AUX4, and using
96 a combination of GLUT_AUX with glutSetOption. The default of 1 ensures
97 consistent behaviour in both cases.
98 * src/freeglut_state.c: Added GLUT_AUX and GLUT_MULTISAMPLE as possible
99 parameters for glutGet, making things more symmetric with
101 * src/freeglutdll.def: Added missing API entries.
103 2009-03-10 John F. Fay <john.fay.ctr@eglin.af.mil>
105 * progs/demos/demos.dsw: Adding the "smooth_opengl3" demo
107 2009-03-09 John F. Fay <john.fay.ctr@eglin.af.mil>
109 * include/GL/freeglut_std.h: Making the definition of
110 "WIN32_LEAN_AND_MEAN" conditional to enhance compatibility with GLEW
111 per suggestion by Diederick C. Niehorster in e-mail dated Mon 3/9/2009
113 * progs/demos/Fractals/fractals.c: Setting the "fractals" demo initial
114 number of levels to 4 per suggestion from Diederick C. Niehorster
115 [diederick@niehorster.eu] in e-mail dated Mon 3/9/2009 5:29 AM
117 2009-03-01 John F. Fay <john.fay.ctr@eglin.af.mil>
119 * progs/demos/CallbackMaker/CallbackMaker.c,
120 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Fixing
121 Microsoft compatibility with the new "vsnprintf" by putting an
122 underscore in front of it if WIN32 is defined but __CYGWIN__ is not
124 2009-03-01 Sven Panne <sven.panne@aedion.de>
126 * configure.ac: We do not depend on GLU anymore
127 * README.win32: Added notes for building under Cygwin
128 * src/Makefile.am: To build shared libraries on Windows, one has to
129 declare explicitly that there are no undefined symbols during linking.
130 No idea why, but this seems to be the only way to enable this on
131 Cygwin via -mno-cygwin. Hopefully this won't cause problems on other
132 platforms (which has to be tested).
133 * progs/demos/smooth_opengl3/smooth_opengl3.c: Windows fun again: Use
134 the correct calling convention for OpenGL extension entries.
136 2009-02-28 Sven Panne <sven.panne@aedion.de>
138 * progs/demos/smooth_opengl3/smooth_opengl3.c: When -mno-cygwin is used,
139 we get ancient GL headers, so be a bit more conservative.
140 * progs/demos/Fractals_random/fractals_random.c,
141 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c:
142 _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin
143 doesn't provide them.
144 * src/freeglut_window.c: Do not try to destroy a GLX context when there
145 is none, e.g. when glXCreateContextAttribsARB is not there.
146 * src/freeglut_joystick.c: Use snprintf or _snprintf instead of the
147 potentially dangerous sprintf to avoid warnings.
149 NOTE: Due to excessive use of #ifdefs, the joystick code is on the
150 border of being unmaintainable! I could only check that it compiles
151 cleanly on my Linux box. Others should test this on their platforms
152 (Windows, Mac OS X, *BSD) to make sure that nothing has been broken.
153 * progs/demos/CallbackMaker/CallbackMaker.c,
154 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Use
155 vsnprintf instead of the potentially dangerous sprintf to avoid
156 warnings. Using snprintf directly would be a little bit more tricky,
157 because once again Microsoft decided to avoid followind standards and
158 provide _snprintf instead. We could use this, too, but this would
159 require an additional autoconf check, which I'd like to avoid, if
162 Note: If VS *still* issues warnings, but this time about vsnprintf,
163 somebody should add some pragmas or whatever is needed to shut up that
164 warning, it would be silly.
165 * progs/demos/Lorenz/lorenz.c: Position the distance message closer to
166 the middle of the window, it has been far, far off to the upper right.
167 * src/freeglut_internal.h: Synched version number with configure.ac. We
168 should better remove this redundancy and calculate this from
169 configure.ac directly.
171 2009-02-19 John F. Fay <john.fay.ctr@eglin.af.mil>
173 * progs/demos/smooth_opengl3/smooth_opengl3.dsp,
174 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Fixing the
175 DOS/Linux line ending problems in the progs/demos/smooth_opengl3
178 2009-02-18 John F. Fay <john.fay.ctr@eglin.af.mil>
180 * src/freeglut_window.c: Fixing a build error caused by a variable
181 declaration being out of place
183 2009-02-15 Sven Panne <sven.panne@aedion.de>
185 * progs/demos/smooth_opengl3/smooth_opengl3.c: Final changes to make the
186 example fully OpenGL-3.0-compliant:
188 * Use vertex attribute arrays.
190 * Use our own projection matrix.
192 * Do not use deprecated vertex/fragment shader variables.
193 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use GLSL shaders (still
194 1.20, though). Dump GL info.
195 * progs/demos/smooth_opengl3/smooth_opengl3.c: Added a commandline
196 option for 'classic' contexts. Aesthetic changes.
197 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use VBOs in new example.
198 Added a few comments.
200 2009-02-14 Sven Panne <sven.panne@aedion.de>
202 * configure.ac, progs/demos/Makefile.am, progs/demos/smooth_opengl3,
203 progs/demos/smooth_opengl3/Makefile.am,
204 progs/demos/smooth_opengl3/smooth_opengl3.c,
205 progs/demos/smooth_opengl3/smooth_opengl3.dsp,
206 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Initial version
207 of a fully OpenGL-3.0-compliant of the famous smooth.c from the Red
208 Book. What has been done already:
210 * Explicitly request a forward-compatible 3.0 context
212 * Report GL errors, if any, at a few crucial places
214 * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf
216 What remains to be done:
218 * Use vertex shaders and fragment shaders
220 * Use vertex buffer objects
222 2009-02-13 Sven Panne <sven.panne@aedion.de>
224 * README: Mention autogen.sh
225 * src/freeglut_window.c: Synchronized WGL behavior with GLX
226 implementation: Do not call the new context creation API when it is
227 not required. Fixing a bug in a previous commit on the way... :-}
228 * src/freeglut_internal.h, src/freeglut_window.c: More refactorings:
229 Removed useless return value. Simplified control structures even more.
230 * src/freeglut_window.c: Refactoring only (replace nested conditionals
231 with guard clauses), making the normal path of execution much clearer.
232 * configure.ac: We have added some API entries, so we have to update
233 library version information conforming to
234 http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
235 * autogen.sh, configure.ac: Avoid CR\LF vs. LF troubles when using
236 TortoiseSVN plus Cygwin.
237 * .: Ignore config.lt, too. It seems to be generated by recent
240 2009-02-13 John F. Fay <john.fay.ctr@eglin.af.mil>
242 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
243 Adding OpenGL 3.0 context detection for Windows per e-mail from Paul
244 Martz dated Thu 2/12/2009 9:03 AM (more or less)
246 2009-02-03 John F. Fay <john.fay.ctr@eglin.af.mil>
248 * README: Adding some instructions about building on a *nix platform to
250 * include/GL/freeglut_ext.h, src/freeglut_main.c: Removing some errant
251 tabs, fixing ticket #2137721, and adding special-key capability to
252 recognizing the NumLock, Delete, and keypad '5' keys
253 * src/freeglut_joystick.c, src/freeglut_main.c: A further response to
254 bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment
255 by Nigel Stewart on that bug report
257 2009-02-02 John F. Fay <john.fay.ctr@eglin.af.mil>
259 * src/freeglut_internal.h, src/freeglut_joystick.c: Fixing bug [ 1804696
260 ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel
263 2008-11-20 Sven Panne <sven.panne@aedion.de>
265 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Yet
266 another try to make the font definitions compile on all platforms.
268 2008-11-17 John F. Fay <john.fay.ctr@eglin.af.mil>
270 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Allowing
271 "freeglut" to compile without errors under *nix. Before this, there
272 were problems with conflicting definitions of the GLUT font
275 2008-11-06 Sven Panne <sven.panne@aedion.de>
277 * src/freeglut_main.c: Ooops, forgot one file in the previous commit
278 (fix for "--without-x").
279 * configure.ac: Use autoconf to detect gettimeofday instead of broken
282 Note: freeglut compiles under Cygwin now, even when "--without-x" is
283 used for configuration.
284 * configure.ac: We need to link against winmm under Cygwin when
285 --without-x is used to get timeBeginPeriod, timeEndPeriod, joyGetPosEx
287 * src/freeglut_window.c: Fixed first parameter of CreateWindow call,
288 used for multisampling on Windows. It compiles, but it is otherwise
291 2008-11-05 Sven Panne <sven.panne@aedion.de>
293 * src/freeglut_misc.c: Be conservative about the presence of
295 * src/freeglut_glutfont_definitions.c, src/freeglut_stroke_mono_roman.c,
296 src/freeglut_stroke_roman.c: freeglut_internal.h needs some GL types,
297 but it is not self-contained. TODO: Move freeglut.h #include into
298 freeglut_internal.h itself?
299 * src/freeglut_window.c: Removed the annoying "Unable to create direct
300 context rendering..." warning, it served no real purpose, and on some
301 platforms there simply is no such thing as a direct context.
302 * progs/demos/CallbackMaker, progs/demos/Fractals,
303 progs/demos/Fractals_random, progs/demos/Lorenz, progs/demos/One,
304 progs/demos/shapes: Ignore *.exe
305 * src/freeglut_ext.c: Handle new glutInitContext* API entries in
307 * src/freeglut_internal.h: Make freeglut compile under Cygwin, which has
308 an ancient GLX header
310 2008-11-02 Sven Panne <sven.panne@aedion.de>
312 * include/GL/freeglut_ext.h, src/freeglut_init.c,
313 src/freeglut_internal.h, src/freeglut_state.c, src/freeglut_window.c:
314 Added OpenGL 3.0 context creation API entries
316 glutInitContextVersion, glutInitContextFlags
318 and their related constants
320 GLUT_INIT_MAJOR_VERSION GLUT_INIT_MINOR_VERSION GLUT_INIT_FLAGS
322 GLUT_DEBUG GLUT_FORWARD_COMPATIBLE
324 Note that this works with GLX only currently, the glutInitContext* API
325 entries have no effect for WGL yet.
327 TODO: Centralize the context creation code for WGL (the harder part)
328 and use the new wglCreateContextAttribsARB API entry (the easy part,
329 re-use most of the GLX code).
330 * src/freeglut_window.c: Refactored GLX context creation into a single
331 function, centralizing things to be changed for OpenGL 3.0 context
332 creation and removing some cut-n-paste.
333 * src/freeglut_ext.c, src/freeglut_internal.h: Make a
334 wgl/glXGetProcAddress abstraction available internally. We will need
335 this to get the new context creation function.
336 * src/freeglut_misc.c: Do not depend on GLU, it will vanish in the
337 future, at least in its current form.
338 * src/freeglut_internal.h: Removed superfluous #includes.
339 * configure.ac: Fix for bug #1709675 ("probably not be so
340 ISO-conformant"): The C compiler flag -Werror is not used by default
341 anymore, a separate configure flag --enable-warnings-as-errors has
342 been introduced for this purpose, which is off by default.
343 * configure.ac: Added AM_PROG_CC_C_O to configure.ac, removing a warning
344 during autogen.sh. This flag seems to be necessary for per-target
345 flags (used in demo programs) nowadays.
347 2008-07-21 John F. Fay <john.fay.ctr@eglin.af.mil>
349 * configure.ac, src/Makefile.am: Implementing a patch from Jocelyn
350 Frechot (thank you, Jocelyn) that "should enable the XInput extension
351 management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
353 2008-07-10 John F. Fay <john.fay.ctr@eglin.af.mil>
355 * src/freeglut_ext.c: Adding "glutExit" to the functions in
356 "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot
357 dated Tue 7/8/2008 12:26 PM
359 2008-04-05 John F. Fay <john.fay.ctr@eglin.af.mil>
361 * src/freeglut_main.c: Adding "SC_MONITORPOWER" and other new options to
362 the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
364 2007-12-02 John F. Fay <john.fay.ctr@eglin.af.mil>
366 * include/GL/freeglut_ext.h, src/freeglut_display.c, src/freeglut_ext.c,
367 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
368 src/freeglut_state.c, src/freeglut_window.c: Adding
369 "glutFullScreenToggle" for X11 -- still needs implementation in
370 Windows (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
372 2007-12-01 John F. Fay <john.fay.ctr@eglin.af.mil>
374 * src/freeglut_window.c: Fixing the window position for asynchronous X11
375 implementations (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
377 2007-11-26 John F. Fay <john.fay.ctr@eglin.af.mil>
379 * progs/demos/Fractals/fractals.c: Making a demo program that uses
382 2007-11-12 John F. Fay <john.fay.ctr@eglin.af.mil>
384 * include/GL/freeglut_ext.h, src/freeglut_ext.c, src/freeglut_init.c,
385 src/freeglut_internal.h, src/freeglut_state.c,
386 src/freeglut_structure.c, src/freeglut_window.c: Implementing Jocelyn
387 Frechot's changes -- see e-mail of Thursday, 11/8/2007 9:12 AM.
389 2007-10-02 John F. Fay <john.fay.ctr@eglin.af.mil>
391 * src/freeglut_joystick.c: Removing more Win64 build warnings from
394 2007-09-30 John F. Fay <john.fay.ctr@eglin.af.mil>
396 * src/freeglut_main.c: Removing the final compiler warning when building
397 on Win75 -- thank you, Antonio Mattos.
399 2007-09-29 John F. Fay <john.fay.ctr@eglin.af.mil>
401 * src/freeglut_cursor.c: Removing the remaining compiler warnings from
402 the cursor code, thanks to Antonio Mattos of Brazil. The double
403 type-casting is needed because of a bug in the new MSVC; there is a
404 discussion on the web on this subject.
406 2007-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
408 * src/freeglut_cursor.c: Changing the cursor definition macro for newer
409 versions of MSVC -- thanks to "Mattos" of Brazil
410 * src/freeglut_window.c: More changes for Jocelyn Frechot's
411 multisampling changes. The library builds now. It still needs some
412 testing with sample cases under X11.
414 2007-09-23 John F. Fay <john.fay.ctr@eglin.af.mil>
416 * src/freeglut_window.c: Fixing a remaining bug in the multisampling
417 change ... there may be more ...
419 2007-09-22 John F. Fay <john.fay.ctr@eglin.af.mil>
421 * src/freeglut_internal.h, src/freeglut_state.c,
422 src/freeglut_structure.c, src/freeglut_window.c: Putting in Jocelyn
423 Frechot's X11 visual context changes. THIS WILL BREAK THE BUILD as I
424 am unable to test it on a Linux machine here. Somebody please test it
427 2007-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
429 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c:
430 Removing compiler warnings in MSVC 2005 build
431 * include/GL/freeglut_ext.h, src/freeglut_init.c: Implementing Larry
432 Ramey's "glutExit" feature (see e-mails from him on 11/9/05, 6/28/06)
434 2007-09-19 John F. Fay <john.fay.ctr@eglin.af.mil>
436 * include/GL/freeglut_std.h, src/freeglut_window.c: Implementing first
437 part of Windows version of "GLUT_CAPTIONLESS" and "GLUT_BORDERLESS"
438 per feature request "[ 1197016 ] need GLUT_CAPTIONLESS window option".
439 Needs more work; menus are slightly mispositioned, X11 version does
440 not support it, banner appears at beginning but disappears on window
441 resize. But this is a start.
442 * src/freeglut_main.c: Fixing Linux key-repeat mode bug reported in "[
443 1796845 ] Keyboard events are lost when key repeat is enabled."
444 * src/freeglut_joystick.c: Fixing a build error on SuSE described in bug
445 report "[ 1792047 ] freeglut_joystick.c error"
447 2007-09-18 John F. Fay <john.fay.ctr@eglin.af.mil>
449 * src/freeglut_window.c: Implementing feature request "[ 947118 ] Popup
450 menu is hidden under the TOPMOST window"
451 * src/freeglut_menu.c: Adding Takeshi Nishimura's Feature Request "[
452 1045202 ] Cope with a menu with many items" -- sorry it took so long.
453 * src/freeglut_window.c: Addressing Feature Request #1307049 that
454 "freeglut" should return 0 if "glutGetWindow" is called without a
455 prior call to "glutInit", rather than terminating on error.
456 * freeglut.dep, freeglut.mak, freeglut_static.dep, freeglut_static.mak:
457 Added Windows "nmake" Makefiles and dependency files for the two
458 "freeglut" projects in accordance with Feature Request #1454543
460 2007-09-16 John F. Fay <john.fay.ctr@eglin.af.mil>
462 * src/freeglut_window.c: Fixing bug #1688954, submitted in Marcy '07. I
463 changed "FREEGLUT" to _T("FREEGLUT") and nothing changed on my Windows
464 XP system. If this will allow it to work on Vista, then in it goes.
465 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
466 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
467 Fixing bug report #1052151 from October 2004.
469 2006-11-28 John F. Fay <john.fay.ctr@eglin.af.mil>
471 * FrequentlyAskedQuestions: Adding a Frequently Asked Questions file
473 2006-09-28 Joe Krahn <krahn@niehs.nih.gov>
475 * src/freeglut_state.c, src/freeglut_window.c: Removed incorrect comment
476 about internal WGL/ARB definitions. I actually had put those comments
477 in because I had meant to go back and re-check the WGL extension. But,
478 maybe locally defined extensions should be kept in a separate include
481 2006-09-27 Joe Krahn <krahn@niehs.nih.gov>
483 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
484 progs/demos/CallbackMaker/CallbackMaker.dsp,
485 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
486 progs/demos/Fractals/Fractals.dsp,
487 progs/demos/Fractals/FractalsStatic.dsp,
488 progs/demos/Fractals_random/Fractals_random.dsp,
489 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
490 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
491 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
492 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
493 progs/demos/shapes/shapesStatic.dsp: Undo svn:eol-style=CR/LF for MSVC
496 2006-09-26 Joe Krahn <krahn@niehs.nih.gov>
498 * include/GL/freeglut_std.h, src/freeglut_joystick.c,
499 src/freeglut_state.c, src/freeglut_window.c: Added
500 FREEGLUT_LIB_PRAGMAS to control MS library pragmas, and fixed NOMINMAX
502 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
503 progs/demos/CallbackMaker/CallbackMaker.dsp,
504 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
505 progs/demos/Fractals/Fractals.dsp,
506 progs/demos/Fractals/FractalsStatic.dsp,
507 progs/demos/Fractals_random/Fractals_random.dsp,
508 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
509 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
510 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
511 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
512 progs/demos/shapes/shapesStatic.dsp: Added svn:eol-style=CRLF property
513 to MSVC project/workspace files.
515 2006-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
517 * src/freeglut_window.c: Fixing a typo bug in the display mode checking
518 (removing multisampling if it is not supported)
520 2006-09-25 Joe Krahn <krahn@niehs.nih.gov>
522 * src/freeglut_state.c: Fixed a small mistake in the previous commit for
524 * src/freeglut_state.c: Added proper support for number of mouse buttons
525 in X11, and a keyboard in Windows CE. Also, several glutGet results
526 returning TRUE/FALSE were changed to 1/0, because the actual return
527 type is int (although they are technically the same in practice).
529 2006-09-24 Joe Krahn <krahn@niehs.nih.gov>
531 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
532 Converted Time counter to a uniform unsigned long it value. The
533 initialized flag was redundant with the main Initialized flag, and
534 conversion of timeval to milliseconds in POSIX makes the code cleaner.
535 Timeval has a longer range, but the time value is already limited by
538 2006-09-23 Joe Krahn <krahn@niehs.nih.gov>
540 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
541 Removed WindowState.IsGameMode; it is redundant with
542 Structure.GameModeWindow
544 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
546 * src/freeglut_state.c, src/freeglut_window.c: Adding support for the
547 multisampling query per bug report 1274193
548 * ChangeLog, src/freeglut_main.c: Fixing Bug #1398196 - Windows message
551 2006-09-21 Joe Krahn <krahn@niehs.nih.gov>
553 * src/freeglut_cursor.c: test (comment edited)
555 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
557 * ChangeLog, src/freeglut_init.c: Adding temporary fix to
558 "glutInitDisplayString" to ignore numerical assignments
559 * ChangeLog, src/freeglut_window.c: Adding multisampling to *nix and
560 Windows; also some other pixel format enhancements to Windows
561 * ChangeLog, progs/demos/CallbackMaker/CallbackMaker.c: Enhancing the
563 * ChangeLog, src/freeglut_cursor.c, src/freeglut_display.c,
564 src/freeglut_ext.c, src/freeglut_gamemode.c,
565 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
566 src/freeglut_input_devices.c, src/freeglut_internal.h,
567 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
568 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_teapot.c,
569 src/freeglut_teapot_data.h, src/freeglut_window.c: Joe Krahn's changes
570 to "TARGET_HOST" defined constants
571 * ChangeLog, src/freeglut_internal.h, src/freeglut_joystick.c,
572 src/freeglut_main.c, src/freeglut_window.c: Fixing two minor bugs,
574 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
575 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
576 Changing "GameMode" to "GameModeWindow ... and testing whether I can
579 2006-08-05 Sven Panne <sven.panne@aedion.de>
581 * ChangeLog, progs/demos/Fractals/fractals.c,
582 progs/demos/Fractals_random/fractals_random.c,
583 progs/demos/Lorenz/lorenz.c: Check fgets for return value to avoid
585 * freeglut.spec: Fixed typo in date
586 * freeglut.spec: Updated build requirements for SuSE 10.1
588 2005-10-12 Sven Panne <sven.panne@aedion.de>
590 * ., .cvsignore: Ooops, forgot to ingore INSTALL and install-sh in
592 * ChangeLog, include/GL/freeglut_ext.h, include/GL/freeglut_std.h: Moved
593 GLUT_INIT_STATE to <GL/freeglut_ext.h>, it is not part of the original
595 * ., .cvsignore, ChangeLog, INSTALL, autogen.sh, install-sh,
596 mkinstalldirs: Simply use autoreconf in autogen.sh, it is much simpler
597 and the recommended way in the autotools documentation. Removed
598 INSTALL, install-sh and mkinstalldirs, they are either unused or
599 automatically generated by autogen.sh.
601 2005-10-06 John F. Fay <john.fay.ctr@eglin.af.mil>
603 * include/GL/freeglut_ext.h: Allowing compilation of Windows version by
604 removing DLL decorations from deprecated joystick interface extensions
605 * src/freeglut_window.c: Implementing Stereo in Windows
607 2005-09-07 Sven Panne <sven.panne@aedion.de>
609 * ChangeLog, src/Makefile.am: Use target-specific *_CPPFLAGS, not the
611 * ChangeLog, autogen.sh: Use -Wall for automake to catch some buglets,
612 deprecated stuff, etc.
614 2005-09-04 Sven Panne <sven.panne@aedion.de>
616 * ChangeLog, autogen.sh: Silenced autogen.sh
618 2005-08-31 John F. Fay <john.fay.ctr@eglin.af.mil>
620 * freeglut.rc, freeglut.tgt, freeglut.wpj, freeglut_static.tgt:
621 Necessary files for Open Watcom support
622 * src/freeglut_internal.h: Adding Open Watcom support
623 * ChangeLog, README.win32: Documenting support for Open Watcom
624 * include/GL/freeglut_std.h: Implementing WATCOM support
626 2005-07-14 Sven Panne <sven.panne@aedion.de>
628 * src/freeglut_input_devices.c: Nuked useless bit-fiddling, pointed out
629 by John. I was a bit too quick to cut-n-paste the cfmakeraw()
630 definition into our code... :-]
631 * ChangeLog, src/freeglutdll.def: Synched the DLL definitions with
633 * ChangeLog, src/freeglut_cursor.c: Fixed the GLUT_CURSOR_INHERIT logic
636 Note that this commit is untested, but at least it looks better than
637 before. We really a need a cursor test program.
639 2005-07-13 John F. Fay <john.fay.ctr@eglin.af.mil>
641 * src/freeglut_cursor.c: Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
643 2005-07-13 Sven Panne <sven.panne@aedion.de>
645 * ChangeLog, configure.ac: Improve autoconf magic: To detect headers
646 like GL/gl.h, it might be necessary to temporarily use the X11 flags
647 found by AC_PATH_XTRA.
648 * ChangeLog, src/freeglut_joystick.c: Avoid gcc warnings for some
649 joystick code (e.g. on Solaris).
650 * src/freeglut_input_devices.c: Tiny cleanup only...
651 * ChangeLog, src/freeglut_input_devices.c: Solaris doesn't have
652 cfmakeraw, but it is only a convenience function for some
653 bit-fiddling, anyway.
655 2005-07-08 Sven Panne <sven.panne@aedion.de>
657 * ChangeLog, include/GL/freeglut_ext.h, src/freeglut_ext.c,
658 src/freeglut_internal.h: Made all the "glutJoystickXXX" functions part
659 of the freeglut extensions. If this is not what we want, we can easily
660 #ifdef this away again...
661 * ChangeLog, src/freeglut_geometry.c: Made a few global arrays "static",
662 avoiding namespace pollution. The only externally visible symbols
663 should either be from the GLUT API ("glutXXX") or internal freeglut
664 entities ("fgYYY"). Reformatted things a bit on the way.
666 2005-07-06 Sven Panne <sven.panne@aedion.de>
668 * ChangeLog, src/freeglut_main.c: We only have pending redisplay
669 callbacks when the window wants to be redisplayed *and* it is visible.
670 Otherwise we won't redraw, anyway, and immediately discover that
671 there's still something to do, etc. etc., leading to 100% CPU load.
672 * ChangeLog, src/freeglut_main.c: Removed redundant code.
673 * ChangeLog, src/freeglut_init.c: X11 only: Destroy the global menu
674 rendering context when deinitializing. The visual/context handling for
675 menus is still rather obscure, though...
676 * progs/demos/Lorenz/lorenz.c: Reverting previous commit: %lf is a valid
677 format specifier for the scanf familiy of functions only, not for the
680 2005-07-05 John F. Fay <john.fay.ctr@eglin.af.mil>
682 * src/freeglut_main.c: Implementing the new menu context variable names
684 * src/freeglut_internal.h: Changing a comment ... nothing big.
685 * progs/demos/Lorenz/lorenz.c: Fixing output formats ... nothing big
687 2005-07-05 Sven Panne <sven.panne@aedion.de>
689 * ChangeLog, src/freeglut_state.c, src/freeglut_window.c: X11 only: Free
690 XVisualInfo structures when they are not needed anymore, fixing a
691 space leak. Not perfect for menus yet...
692 * src/freeglut_internal.h, src/freeglut_window.c: Tiny change to make
693 grep's life easier: Rename the fields of the menu context. Not really
694 worth a ChangeLog entry...
696 IMHO it looks like we could kill the whole MenuContext stuff, it is of
697 no use currently and some things look strange, like e.g. having a
698 context per menu. The latter is not OK when a menu is attached to
701 2005-07-02 Sven Panne <sven.panne@aedion.de>
703 * ChangeLog, src/freeglut_init.c, src/freeglut_internal.h,
704 src/freeglut_main.c, src/freeglut_state.c: Handle modifiers in
705 MotionNotify events, too. This fixes bug #1227920 (glutGetModifiers
706 not set/allowed in mouse callbacks). In addition, some related cleanup
708 * ChangeLog, src/freeglut_joystick.c: Partial fixes for bug #1218900
709 (freeglut-2.4.0 on FreeBSD).
710 * ChangeLog, Makefile.am: Remove wrong "execute" bits when creating a
711 distribution. This fixes bug #961938 (Executable bit set on non exe
713 * configure.ac: Tiny cosmetic change, not worth a ChangeLog entry.
714 * ChangeLog: Added John's missing ChangeLog entry.
716 2005-07-01 John F. Fay <john.fay.ctr@eglin.af.mil>
718 * freeglut.dsp, freeglut_static.dsp: Adding the
719 \"freeglut_input_devices.c\" file to the Windows project files
721 2005-07-01 Sven Panne <sven.panne@aedion.de>
723 * ChangeLog, configure.ac, src/Makefile.am: Some steps toward
724 compilation under MinGW. Note that there are still linking troubles
726 * src/freeglut_internal.h: Fixed #ifdef for ChangeDisplaySettingsEx
728 * ChangeLog, src/freeglut_input_devices.c: Silenced a signed/unsigned
729 mismatched via a cast.
730 * ChangeLog, src/freeglut_internal.h: MinGW is lacking a prototype for
731 ChangeDisplaySettingsEx, so supply one in this case. Note that this
732 should better be handled via autoconf than via cpp.
733 * ChangeLog, Makefile.am: Removed redundant files from EXTRA_DIST.
735 2005-06-30 Sven Panne <sven.panne@aedion.de>
737 * src/freeglut_main.c: Ooops, forgot to set the current window in the
738 last commit. I'll have to test better before comitting... :-]
739 * ChangeLog, src/freeglut_main.c: When a window is iconified, only an
740 UnmapNotify is sent, not a VisibilityNotify, so we have to handle the
741 window status callback in the former case, too. This fixes bug #763442
742 (Call the visibility callback when minimizing a window).
743 * ChangeLog, src/freeglut_main.c: Cleaned up
744 CreateNotify/ConfigureNotify handling.
745 * src/freeglut_main.c: Ooops, forgot to dump a few fields in some
747 * ChangeLog, configure.ac, src/freeglut_main.c: Added --enable-debug
748 configure flag. Currently it only turns on X11 event tracing, but in
749 the future we could add more.
751 Note: freeglut_main.c could benefit from some restructuring to clean
752 up the #ifdefs and cut down the sizes of some extremely long
754 * ., .cvsignore: Ignore files generated during RPM build.
756 2005-06-23 John F. Fay <john.fay.ctr@eglin.af.mil>
758 * doc/freeglut_user_interface.html: Fixing the documentation regarding
759 callbacks and geometry shape additions
760 * progs/demos/Fractals/Fractals.dsp,
761 progs/demos/Fractals/FractalsStatic.dsp,
762 progs/demos/Fractals_random/Fractals_random.dsp,
763 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
764 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
765 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
766 progs/demos/shapes/shapes.dsp, progs/demos/shapes/shapesStatic.dsp:
767 Adding separate static library and DLL demonstration program projects
768 * progs/demos/CallbackMaker/CallbackMaker.dsp,
769 progs/demos/CallbackMaker/CallbackMakerStatic.dsp: Adding separate
770 demo program projects for static library and DLL versions
771 * progs/demos/demos.dsw: Adding support for separate static library demo
773 * ChangeLog: Keeping current ...
774 * src/freeglut_input_devices.c: New file for Joe Krahn\'s dials input
777 2005-06-22 John F. Fay <john.fay.ctr@eglin.af.mil>
779 * src/freeglut_geometry.c: Fixing a bug in the Sierpinski sponge code
780 that made the application crash if called with number of levels < 0
781 * src/Makefile.am, src/freeglut_init.c, src/freeglut_internal.h,
782 src/freeglut_joystick.c, src/freeglut_state.c: Joe Krahn\'s input
783 (dials) device implementation.
785 2005-06-14 Sven Panne <sven.panne@aedion.de>
787 * ChangeLog, freeglut.spec: Added an RPM spec file based on the one
788 shipped with SuSE 9.3.
790 2005-06-10 James Jones <puggles@users.sourceforge.net>
792 * ChangeLog, configure.ac: Release of 2.4.0
794 2005-06-02 James Jones <puggles@users.sourceforge.net>
796 * ChangeLog, configure.ac, src/freeglut_internal.h: 2.4.0 Release
799 2005-05-26 John F. Fay <john.fay.ctr@eglin.af.mil>
801 * src/freeglut_main.c: Takeshi Nishimura\'s changes to make the Windows
802 mouse wheel/button mapping match that of X11; also fixing a typo in
803 the associated mouse callback argument list
805 2005-05-26 James Jones <puggles@users.sourceforge.net>
807 * ChangeLog, configure.ac: 2.4.0 RC4 updates
808 * src/freeglut_main.c: Fix joysticks so they are polled by their timer
809 correctly. (Dan Torop)
811 2005-05-24 Sven Panne <sven.panne@aedion.de>
813 * ChangeLog, src/freeglut_gamemode.c: The original glutEnterGameMode()
814 returns the window id of the game mode window, not TRUE/FALSE, we
815 should better follow that. Note that most man pages claim that this
816 function returns void, but this is definitely wrong.
817 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_main.c: When
818 switching to game mode under X11, no ConfigureNotify event will happen
819 and consequently no reshape callback will ever be called via the
820 normal mechanism. To fix this, note that the game mode window needs to
821 be resized and handle this before redraw.
823 2005-05-22 Sven Panne <sven.panne@aedion.de>
825 * ChangeLog, src/freeglut_ext.c: Guarantee consistency of
826 names/addresses in glutGetProcAddress by using a macro. In addition,
827 this avoids any non-constant initializer issues which might be raised
828 when using WinDoze GCCs. The additional code overhead is negligible,
829 at least for x86 (a few instructions per name).
830 * ChangeLog, configure.ac: Lowering minimum autoconf version required.
832 2005-05-20 James Jones <puggles@users.sourceforge.net>
834 * ChangeLog: Tag for 2.4.0 RC3
837 2005-05-19 Sven Panne <sven.panne@aedion.de>
839 * src/freeglut_gamemode.c: Fixed SF bug #1204256: Off-by-one error in
840 X11 mode switching. The code which changes the X11 video mode has an
841 off-by-one error, resulting in a wrong mode or segfault. I've
842 refactored the code slighty to make it hopefully clearer what's going
843 on and corrected some #ifdefs on the way. Now at least the "One" demo
845 * src/freeglut_window.c: Fixed SF bug #1204261: Mini space leak when
846 creating an X11 window (X11 text property values have to be freed
849 2005-05-18 John F. Fay <john.fay.ctr@eglin.af.mil>
851 * src/freeglut_gamemode.c: Removing a C++ comment and simplifying the
854 2005-05-17 John F. Fay <john.fay.ctr@eglin.af.mil>
856 * src/freeglut_gamemode.c: Misiek\'s changes to fix Game Mode--getting
857 display settings under Windows and setting the window size correctly
858 on all operating systems.
860 2005-05-16 James Jones <puggles@users.sourceforge.net>
862 * ChangeLog: Mark for 2.4 RC 2
864 2005-05-13 John F. Fay <john.fay.ctr@eglin.af.mil>
866 * src/freeglut_menu.c: Removing two unused variables so this will
867 compile on Linux with -Wall
869 2005-05-12 John F. Fay <john.fay.ctr@eglin.af.mil>
871 * ChangeLog: Updating the ChangeLog ...
872 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c:
873 Takeshi Nishimura\'s menu changes--menus should now work properly. Use
874 the GLUT \"GLUTmech\" and \"walker\" demos to test them.
875 * src/freeglut_main.c: Takeshi Nishimura\'s menu fixes
877 2005-05-09 James Jones <puggles@users.sourceforge.net>
879 * ChangeLog, Makefile.am, configure.ac: Freeglut 2.4.0 Release Candidate
882 2005-05-06 Sven Panne <sven.panne@aedion.de>
884 * ChangeLog, progs/demos/shapes/shapes.c: Fixed a cuboctahedron vertex,
885 implemented wire mode for that shape.
886 * ChangeLog, progs/demos/shapes/shapes.c, src/freeglut_internal.h,
887 src/freeglut_main.c: Necessary compilation fixes for newer GCCs (e.g.
888 3.3.5, 4.0). Side effect: The shapes demo has a new 'i' key now.
890 2005-05-05 John F. Fay <john.fay.ctr@eglin.af.mil>
892 * ChangeLog: Updated the ChangeLog again ...
894 2005-05-04 John F. Fay <john.fay.ctr@eglin.af.mil>
896 * progs/demos/shapes/shapes.c: Replacing the original \"freeglut\"
897 \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many
898 thanks to the OpenGLUT community for writing it. The copyright notice
899 stays in the program.
900 * src/freeglut_main.c: Changing hard-coded constant (number of mouse
901 buttons = 3) to a \"glutDeviceGet\" call in two places under X11
902 * src/freeglutdll.def: Changing the version number from 2.0 to 2.4.0 ...
903 do we need to add any new interface functions?
904 * src/freeglut_internal.h: Removing an unused variable
905 * src/freeglut_window.c: Adding a comment on why \"freeglut\" differs
906 from GLUT in a particular way
907 * src/freeglut_joystick.c: Removing an unused function
908 * src/freeglut_init.c: Making the \"key repeat\" initialization
909 consistent with the rest of its usage; also making the
910 \"initDisplayString\" ever-so-slightly mroe general
911 * ChangeLog, TODO, src/freeglut_window.c: Updating the ChangeLog and
912 TODO files in preparation for the upcoming release
914 2005-04-29 John F. Fay <john.fay.ctr@eglin.af.mil>
916 * src/freeglut_joystick.c: Adding a \"TODO\" comment about dynamically
917 allocating joystick buttonj and axis arrays
918 * ChangeLog: Updationg the ChangeLog ...
920 2005-04-28 John F. Fay <john.fay.ctr@eglin.af.mil>
922 * README.win32: Adding a \"README.Win32\" file with instructions on how
923 to install \"freeglut\" under Windows.
924 * src/freeglut_main.c: Adding Window Exit event handling to the Windows
925 code; also adding a note that eventually it would be good to handle
926 the Window Entry event
928 2005-04-27 John F. Fay <john.fay.ctr@eglin.af.mil>
930 * src/freeglut_window.c: Fixing bug [ 1111218 ] fullscreen not working
931 Better late than never.
932 * src/freeglut_init.c: Fixing Bug Report [ 1160442 ]
933 glutGet(GLUT_ELAPSED_TIME) is too granular
935 2005-04-26 John F. Fay <john.fay.ctr@eglin.af.mil>
937 * src/freeglut_internal.h, src/freeglut_structure.c: Fixing the
938 typecasts on the callback fetches and invocations to allow
939 \"freeglut\" to compile with GCC 4.0
940 * src/freeglut_menu.c: Fixing erroneous implementation of Takeshi\'s fix
941 * src/Makefile.am: Changing include path from relative to absolute to
942 support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
943 * LISEZ_MOI: Adding \"LISEZ-MOI\", the French version of \"README\"
945 2005-04-25 John F. Fay <john.fay.ctr@eglin.af.mil>
947 * ChangeLog: Updating the ChangeLog ... it seems to be something of a
948 stepchild if we\'re not careful.
950 2005-04-22 John F. Fay <john.fay.ctr@eglin.af.mil>
952 * src/freeglut_menu.c: Yuri D\'Elia\'s changes to get the virtual
953 maximum screen extent instead of the actual screen size.
954 * src/freeglut_gamemode.c: Yuri D\'Elia\'s changes to the game mode
956 * src/freeglut_structure.c: Change a hard-coded number to a defined
957 constant and add some initializations
958 * src/freeglut_cursor.c: Removing duplicate cursor code. This and the
959 previous change (in freeglut_main.c) apparently got combined.
960 * ChangeLog: Updating the ChangeLog to reflect activity over the past
962 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
963 src/freeglut_display.c, src/freeglut_gamemode.c,
964 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
965 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
966 src/freeglut_window.c: Trying again to change \"fgStructure.Window\"
967 to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to
968 \"fgStructure.CurrentMenu\" for easier maintenance.
970 2005-04-15 John F. Fay <john.fay.ctr@eglin.af.mil>
972 * ChangeLog: Updating the ChangeLog as a means of testing pCVSc
973 * src/freeglut_internal.h: Testing!
975 2005-03-23 Brian Paul
977 * include/GL/freeglut_ext.h: added comment about AUX flags
979 2005-02-16 Brian Paul
981 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
982 src/freeglut_structure.c, src/freeglut_window.c: fixes for menus being
983 attached to multiple buttons/windows (John Fay)
984 * src/freeglut_callbacks.c: added error check (John Fay)
986 2005-02-15 Brian Paul
988 * src/freeglut_init.c, src/freeglut_window.c: AUX buffers for Windows
991 2005-02-11 Brian Paul
993 * include/GL/freeglut_ext.h, src/freeglut_init.c, src/freeglut_window.c:
994 Aux color buffer support. Pass one of GLUT_AUX[1234] to
995 glutInitDisplayMode. Only implemented/tested on GLX, not Windows.
996 * include/GL/freeglut_ext.h, src/freeglut_ext.c,
997 src/freeglut_internal.h: Fix object/function pointer inconsistencies
998 which are a problem for gcc 3.4.2. Added GLUTproc type, returned by
999 glutGetProcAddress().
1001 2005-01-23 Sven Panne <sven.panne@aedion.de>
1003 * configure.ac: autoconf 2.58 is enough
1004 * src/freeglut_callbacks.c, src/freeglut_internal.h: Stylistic change
1005 only (added "do { ... } while( 0 )" around multi-statement macros)
1006 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: Testing
1007 for errno.h is overkill. :-)
1008 * src/freeglut_cursor.c, src/freeglut_main.c: Windows platforms only:
1009 Merged some cursor-related code from John Fay (with minor changes)
1011 2005-01-05 Sven Panne <sven.panne@aedion.de>
1013 * src/freeglut_ext.c, src/freeglut_font.c, src/freeglut_main.c,
1014 src/freeglut_state.c, src/freeglut_window.c: Hopefully removed all
1015 damage done by commits without merge
1016 * ChangeLog, src/freeglut_cursor.c: Reworked the X11 part of
1017 glutSetCursor, fixing bug #764187 (Variable mouse pointers don't work)
1018 on the way: * Use slightly more compatible cursor shapes for
1019 GLUT_CURSOR_RIGHT_ARROW and GLUT_CURSOR_LEFT_ARROW. * Refactored and
1020 fixed the erroneous code for GLUT_CURSOR_NONE. * Removed the incorrect
1021 use of XFreeCursor and use a cache of cursors instead. Cursors are
1022 never freed now, we could do this e.g. via reference countig if this
1023 is really needed. * Fixed error handling. * Unknown cursor types are
1024 an error now. * Now the window state always corresponds to the wanted
1025 cursorID, even in the case of GLUT_CURSOR_FULL_CROSSHAIR.
1027 NOTE: I am not sure where the cursor cache should really reside,
1028 currently it is simply a file-local variable.
1030 2005-01-03 Sven Panne <sven.panne@aedion.de>
1032 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1033 mode matching code, memory leaks, fullscreen), i.e. issue warnings
1034 when XF86VidModeFOO fails.
1035 * ChangeLog, src/freeglut_gamemode.c: (234) Fixed part of bug #926883
1036 (Video mode matching code, memory leaks, fullscreen): Now we first try
1037 to get an exact mode match, ignoring the refresh rate if none could be
1038 found. This way the X11 part and the WinDoze behave similarly. NOTE:
1039 We still don't behave like GLUT, because it has a wider notion of
1040 "best" match. We have to refactor and extend freeglut quite a bit to
1042 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1043 mode matching code, memory leaks, fullscreen), i.e. memory leak caused
1044 by not freeing the mode lines returned by XF86VidModeGetAllModeLines
1045 * ChangeLog, src/freeglut_window.c: Improved error message a bit when no
1046 suitable visual could be found (X11 only).
1047 * configure.ac, src/freeglut_internal.h, src/freeglut_main.c: autoconf'd
1049 * src/freeglut_joystick.c: Removed redundant #include
1050 * ChangeLog, configure.ac, src/freeglut_joystick.c, src/freeglut_main.c:
1051 autoconf'd <errno.h> handling and removed an unused '#include
1053 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: autoconf'd
1054 <limits.h> and <sys/param.h> handling, removing MIN/MAX macros on the
1056 * src/freeglut_internal.h: Cosmetics.
1057 * configure.ac, src/freeglut_joystick.c: autoconf'd <fcntl.h> and
1058 <sys/ioctl.h> handling
1059 * src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c:
1060 Improved <sys/typed.h> / <unistd.h> handling as suggested by the
1062 * configure.ac, progs/demos/Lorenz/lorenz.c, src/freeglut_internal.h,
1063 src/freeglut_main.c: Fixed <sys/time.h> / <time.h> handling as
1064 suggested by the autoconf docs.
1065 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1066 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1067 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1068 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1069 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1070 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
1071 src/freeglut_structure.c, src/freeglut_teapot.c,
1072 src/freeglut_videoresize.c, src/freeglut_window.c: Moved '#include
1073 "config.h"' to freeglut_internal.h, we will need it there soon and it
1074 makes everything a bit shorter.
1075 * ChangeLog: Resurrected my recent additions which were nuked by the
1076 previous commit, adding the latest change on the way. :-(
1077 * acconfig.h: Removed acconfig.h, it is deprecated and we don't need it.
1078 * src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1079 src/freeglut_structure.c: Make it compile again with "-Wall -pedantic
1080 -Werror", redoing quite a few things I've fixed already a few days
1081 ago. Have today's commits been done by copying instead of merging? :-(
1083 2005-01-03 James Jones <puggles@users.sourceforge.net>
1085 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1086 src/freeglut_window.c: Changes remove duplicate menu code from
1087 "freeglut_window.c" and put it into one place in "freeglut_menu.c"
1088 where it belongs. - John Fay
1089 * ChangeLog: General ChangeLog Updates
1090 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1091 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1092 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1093 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1094 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1095 src/freeglut_structure.c, src/freeglut_teapot.c,
1096 src/freeglut_teapot_data.h, src/freeglut_window.c: Adding
1097 initialization checking to all GLUT interface functions and removing
1098 asserts from the rest of the code - John Fay
1100 2005-01-01 Sven Panne <sven.panne@aedion.de>
1102 * ChangeLog, src/Makefile.am: Added missing files from "src"
1103 subdirectory to dist.
1104 * AUTHORS: Synched with project member list on SourceForge
1105 * ChangeLog, Makefile.am, configure.ac: Modernized configure.ac a bit
1106 and added a rule to Makefile.am to update libtool. Note that all gcc
1107 compiler warnings are now on by default.
1108 * ChangeLog, include/GL/freeglut_std.h,
1109 progs/demos/CallbackMaker/CallbackMaker.c,
1110 progs/demos/Fractals_random/fractals_random.c,
1111 progs/demos/Lorenz/lorenz.c, progs/demos/One/one.c,
1112 src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1113 src/freeglut_teapot_data.h: Make "gcc -Wall -pedantic -Werror" happy.
1114 * ., .cvsignore: Ignore files generated by autoscan.
1115 * ChangeLog, INSTALL, configure.ac, configure.in: Renamed "configure.in"
1116 to the officially preferred "configure.ac".
1117 * stamp-h, stamp-h.in: Removed unused stamp-h* files, configure
1118 generates them (a single stamp-h1, to be exact).
1119 * ChangeLog, Makefile.am: Added eMbedded Visual Tools project/workspace
1120 files to distribution.
1121 * ., .cvsignore: Ignore distribution tar files
1123 2004-12-31 Sven Panne <sven.panne@aedion.de>
1125 * ChangeLog, src/freeglut_main.c: Fixed first bug of #1064195 (two
1126 things when using signals): Don't issue a warning about select when a
1127 non-blocked signal was caught. This makes sense and is more compatible
1129 * ChangeLog, src/freeglut_font.c: Fixed bug #1040435 (glutBitmapString()
1131 * ChangeLog: Alas, the ChangeLog has not the usual ChangeLog format, so
1132 tell (X)Emacs about that fact.
1133 * ChangeLog, src/freeglut_window.c: Fixed bug #1045054 (KeyReleaseMask
1135 * ChangeLog, src/freeglut_state.c: Fixed bug #1087642
1136 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
1137 * ChangeLog, src/freeglut_ext.c: Fixed bug #1079530 (glutGetProcAddress
1138 and geometric objects).
1139 * ., .cvsignore, doc, doc/.cvsignore, include, include/.cvsignore,
1140 include/GL, include/GL/.cvsignore, progs, progs/.cvsignore,
1141 progs/demos, progs/demos/.cvsignore, progs/demos/CallbackMaker,
1142 progs/demos/CallbackMaker/.cvsignore, progs/demos/Fractals,
1143 progs/demos/Fractals/.cvsignore, progs/demos/Fractals_random,
1144 progs/demos/Fractals_random/.cvsignore, progs/demos/Lorenz,
1145 progs/demos/Lorenz/.cvsignore, progs/demos/One,
1146 progs/demos/One/.cvsignore, progs/demos/shapes,
1147 progs/demos/shapes/.cvsignore, src, src/.cvsignore: Improved
1150 2004-12-17 James Jones <puggles@users.sourceforge.net>
1152 * src/freeglut_cursor.c, src/freeglut_display.c,
1153 src/freeglut_internal.h, src/freeglut_menu.c, src/freeglut_misc.c,
1154 src/freeglut_window.c: Some assertion changes / removals from Dr. John
1157 2004-10-06 Brian Paul
1159 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1160 src/freeglut_joystick.c, src/freeglut_state.c: joystick init fixes
1163 2004-10-05 Brian Paul
1165 * src/freeglut_main.c: updated comments (John Fay)
1166 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_window.c:
1167 improved comments and mouse coord adjustments (John Fay)
1168 * src/freeglut_init.c: more clean-ups, fixes from John Fay
1170 2004-09-23 Brian Paul
1172 * src/freeglut_font.c, src/freeglut_stroke_mono_roman.c,
1173 src/freeglut_stroke_roman.c: font updates from John Fay
1174 * src/freeglut_main.c: more updates from John Fay
1175 * src/freeglut_geometry.c, src/freeglut_init.c: assorted updates from
1178 2004-09-15 James Jones <puggles@users.sourceforge.net>
1180 * src/freeglut_init.c: Fix to glutInit() command-line argument
1181 compaction - Patch #1027724 from takeshi2
1183 2004-09-13 Brian Paul
1185 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1186 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1187 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_state.c,
1188 src/freeglut_window.c: more updates from John Fay
1189 * src/freeglut_cursor.c, src/freeglut_gamemode.c,
1190 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1191 src/freeglut_joystick.c, src/freeglut_main.c,
1192 src/freeglut_structure.c, src/freeglut_teapot.c,
1193 src/freeglut_window.c: some function renaming, etc (John Fay)
1195 2004-09-10 Brian Paul
1197 * src/freeglut_callbacks.c, src/freeglut_init.c,
1198 src/freeglut_internal.h, src/freeglut_main.c: joystick updates from
1200 * src/freeglut_cursor.c, src/freeglut_font_data.c,
1201 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1202 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1203 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1204 src/freeglut_stroke_mono_roman.c, src/freeglut_stroke_roman.c,
1205 src/freeglut_structure.c, src/freeglut_teapot.c,
1206 src/freeglut_window.c: updated comments from John Fay
1208 2004-08-11 James Jones <puggles@users.sourceforge.net>
1210 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
1211 Fix a game mode crashing bug, conditional compilation for Windows, and
1212 comment out some diagnostic prints (John Fay)
1214 2004-08-05 James Jones <puggles@users.sourceforge.net>
1216 * src/freeglut_window.c: Implements Richard Rauch's request that the
1217 warning about indirect rendering contexts be suppressed for his BSD
1219 * src/freeglut_teapot_data.h: Someone used C++ style comments in a C
1220 file... tisk tisk...
1221 * src/freeglut_font.c: Bugfix for "glutBitmapString" so that it now
1222 handles end-of-line characters properly (Richard Rauch)
1223 * README: Incremental update ... (John Fay)
1225 2004-06-29 Brian Paul
1227 * src/freeglut_structure.c: give menu windows the title 'freeglut menu'
1229 * src/freeglut_window.c: move glXMakeCurrent() to after the point where
1230 the window's title is set (helps Chromium)
1232 2004-05-13 James Jones <puggles@users.sourceforge.net>
1234 * freeglut.dsp, freeglut_static.dsp: Add one more header file to MSVC
1237 2004-05-12 James Jones <puggles@users.sourceforge.net>
1239 * include/GL/freeglut_ext.h, include/GL/freeglut_std.h: John Fay:
1240 Direct/indirect rendering context change, fix a bug that somebody
1241 reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove
1242 a false deprecation of a function.
1243 * src/freeglut_main.c: John Fay: A bug fix re: behavior of the code when
1244 the user clicks the "x" to close a window, and commentary to a message
1245 type with fixes for a Windows event processing bug.
1246 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_state.c,
1247 src/freeglut_window.c: John Fay: Implement the modified logic of the
1248 direct/indirect rendering context.
1249 * src/freeglut_font.c, src/freeglut_font_data.c: John Fay: Implement the
1250 upper end of the bitmapped fonts (beyond ASCII code 127). The fonts
1251 are very close to the GLUT fonts.
1252 * src/freeglut_teapot.c, src/freeglut_teapot_data.h: John Fay: These
1253 files implement the teapot for WINCE.
1254 * src/freeglut_internal.h: John Fay: Remove some obsolete defined
1256 * freeglut.dsp, freeglut_static.dsp: John Fay: Add
1257 "freeglut_glutfont_definitions.c" to the build and tell it to look in
1258 the "include" directory for the <GL/freeglut.h> file.
1260 2004-03-28 Steve Baker <steve@sjbaker.org>
1262 * progs/demos/shapes/shapes.c: Removed unnecessary initialisation.
1263 * progs/demos/shapes/shapes.c: Added a cullface test.
1267 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_init.c,
1268 src/freeglut_main.c: removed .cpp file (using LoadLibrary() instead)
1269 removed modified gx.h file cleaned up all // and tabs
1273 * src/freeglut_main.c: Prevent exceeding array bounds in X11 key-repeat
1278 * freeglut_evc4.vcp, src/freeglut_ext.c, src/freeglut_gx.cpp,
1279 src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c,
1280 src/freeglut_state.c, src/freeglut_window.c: replaced all tabs with 4
1281 spaces replaced all // with /* */ block fixed freeglut_gx.cpp file
1282 with #if TARGET_HOST_WINCE
1286 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_state.c:
1287 Whitespace conversion - tabs to 4 spaces
1288 * src/freeglut_window.c: Revert X11 fgCloseWindow to 1.38 pre-offscreen
1293 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_main.c: fixed
1294 mouse position and keyboard mapping. added c-wrapper cpp file for
1296 * freeglut_evc4.vcp, freeglut_evc4.vcw, include/GL/freeglut_std.h,
1297 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
1298 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1299 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1300 src/freeglut_state.c, src/freeglut_window.c: added support for
1301 WindowsCE (building on top of klimt)
1305 * src/freeglut_main.c: Repeat-key handling for Win32 Utilise both
1306 FreeGLUT state and per-window filtering modes
1310 * ChangeLog: Forgot to update the ChangeLog for the benefit of those who
1311 do not have CVS or Web access.
1312 * configure.in, include/GL/freeglut_ext.h, src/freeglut_internal.h,
1313 src/freeglut_window.c: Completed removal of all support for the
1314 offscreen rendering.
1316 If you wish to do offscreen supportin a portable manner, you will no
1317 longer be able to do so with current versions of freeglut.
1318 * progs/demos/Makefile.am: Removed Makefile support for the offscreen
1320 * progs/demos/One/one.c, progs/demos/offscreen: Removed offscreen demo
1325 * src/Makefile.am: Provide local include path to automake for
1330 * src/freeglut_window.c: Code formatting tweak
1331 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1332 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c:
1333 Resolution of X11 key-repeat handling
1335 glutSetKeyRepeat is global to all FreeGLUT windows in the application
1336 glutIgnoreKeyRepeat is a per-window over-ride
1338 To avoid nasty global X11 state interaction, or GLUT-style event queue
1339 filtering - the approach in FreeGLUT is to use the current key state
1340 XQueryKeymap to detect and ignore KeyRelease/KeyPress pairs that are
1344 http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
1345 http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml
1346 * src/freeglut_callbacks.c, src/freeglut_cursor.c, src/freeglut_ext.c,
1347 src/freeglut_font.c, src/freeglut_font_data.c,
1348 src/freeglut_gamemode.c, src/freeglut_geometry.c,
1349 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1350 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1351 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1352 Stripped out tabs and end-of-line whitespace Differences are in
1357 * src/freeglut_window.c: Resolve [ 853044 ] FreeGLUT menus on Win32 in
1358 task bar and ALT-TAB list CreateWindowEx(WS_EX_TOOLWINDOW,...)
1359 extended style suppresses the popup menu window from the taskbar or
1364 * src/freeglut_init.c: ignoreKeyRepeat mode in FreeGLUT is TRUE by
1365 default For compatibility with GLUT, the mode should be FALSE by
1366 default This issues was probably undetected until now because
1367 ignoreKeyRepeat didn't yet work.
1368 * src/freeglut_main.c: Resolved bug #869765 glutIgnoreKeyRepeat() Fix
1369 (Win32) glutIgnoreKeyRepeat now behaves correctly on Win32
1370 * src/freeglut_internal.h: C++ style comment converted to C style
1372 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1373 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1374 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1375 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_joystick.c,
1376 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1377 src/freeglut_overlay.c, src/freeglut_state.c,
1378 src/freeglut_structure.c, src/freeglut_teapot.c,
1379 src/freeglut_videoresize.c, src/freeglut_window.c: Include freeglut
1380 header via <GL/freeglut.h> rather than "../include/GL/freeglut.h" This
1381 allows some additional flexibility with file layout. It should be the
1382 responsibility of the build environment, rather than at source level.
1383 This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.
1387 * src/freeglut_joystick.c: According to John F. Fay: The variable
1388 "num_axes" should be "joy->num_axes".
1392 * src/freeglut_gamemode.c: Removed nonstandard #warning constructs.
1393 Converted to XXX comments. (These are warnings about gamemode features
1394 not working the same on some systems as on others. The semantics of
1395 gamemode are dubious, since it was never formally documented, and has
1396 for a long time worked in different ways on different systems, so it
1397 is arguable that there is nothing really wrong with systems that don't
1398 support resolution-changes.)
1399 * src/freeglut_callbacks.c: Fixed the bug where glutDisplayFunc() was
1400 effectively invoking glutPostRedsiplay(). This is wrong on the face of
1401 it, and may be at root for some of the annoying "timing" issues we've
1402 had with redisplay events being called inappopriately.
1406 * progs/demos/offscreen/Makefile.am: I had rubbed the
1407 offscreen/Makefile.am off from the shapes demo. I forgot to remove a
1408 couple of references to the shapes.c and shapes.dsp (.dsw?) files.
1409 * configure.in, include/GL/freeglut_ext.h, progs/demos/Makefile.am,
1410 progs/demos/offscreen, progs/demos/offscreen/Makefile.am,
1411 progs/demos/offscreen/offscreen.c: Added "offscreen" demo, a very
1412 simple program that produces an onscreen window and, upon command,
1413 renders a similar offscreen display and writes the result to disk.
1415 Also, modified the build structure for UNIX_X11 to autobuild the demo.
1416 (Not done for WIN32 at this time.)
1418 Also, forgot to previously commit the updated freeglut_ext.h include.
1423 * src/freeglut_window.c: Minor comment adjustments.
1427 * src/freeglut_geometry.c: Refinements to comments
1431 * src/freeglut_joystick.c: Normalized the style of the new joystick a
1433 * src/freeglut_main.c: For some reason, the X "expose" event handler was
1434 *directly* calling the display handler in the client. (Okay, it was
1435 calling a function that operates on the window handle.)
1437 If you have any complexity to the display code, this can be painful to
1438 watch. I can't think of a good reason to do the display immediately,
1439 so I fixed the code to do a glutPostRedisplay().
1440 * src/freeglut_joystick.c: A commit on behalf of John (in turn, and in
1441 part, also on behalf of Thierry).
1443 * Renamed some of the old PLIB functions to have glut* prefixes. (I
1444 guess that there is some thought about exporting them to the API.)
1446 * Changes from Thierry for FreeBSD support, and/or results of testing?
1448 * I re-merged an XXX comment re. NetBSD/amd64 and propogated a comment
1449 on a duplicated #define for FreeBSD. We need the GNU autoconfig stuff
1450 to be updated by someone who groks it, now.
1454 * src/freeglut_init.c: Commit of John's tidying-up of a comment, closing
1455 out an XXX comment that I wrote. Thanks, John.
1459 * src/freeglut_window.c: ...AND a tab snuck into my changes for
1460 GLUT_OFFSCREEN support. Mea culpa.
1461 * src/freeglut_joystick.c: Removed a ^M that snuck into the #pragma for
1462 the new joystick code.
1463 * src/freeglut_window.c: Ooops. We don't want people to be able to
1464 create a subwindow of an offscreen window. (^& This is no longer
1467 (Actually, it would be nice if it would work, but I don't think that
1468 you can subwindow a pixmap in UNIX_X11, and assume that subwindowing
1469 offscreen doesn't work on WIN32, either.)
1470 * ChangeLog: Added entries for the joystick updates and the offscreen
1471 experimental support.
1472 * src/freeglut_joystick.c: Changed a couple of XXX comments. Added a new
1473 one. These all the nest of #ifs in the BSD section of the new joystick
1475 * progs/demos/CallbackMaker/CallbackMaker.c: "Heavy editing" by John to
1476 his CallbackMaker demo.
1477 * src/freeglut_joystick.c: John added a #pragma to the joystick code for
1479 * src/freeglut_internal.h, src/freeglut_window.c: Adds GLUT_OFFSCREEN as
1480 a display mode option. This includes:
1482 * Recognizing the mode when you call glutCreateWindow(). (Offscreen
1483 looks and acts like a top-level window in many ways.)
1485 * During the life of the offscreen "window", various window-management
1486 functions are modified to respect offscreen status.
1488 (Excepting reshaping windows, there is not much useful interpretation
1489 for managment of offscreen areas. Reshaping is possibly more work than
1490 it's worth to support, and GLUT specs allow us to ignore the request.)
1492 * Cleanup for "offscreen" windows is a little different than for
1495 Windows still don't start up quite ideally. Offscreen windows should
1496 probably get a reshape event, but not a display.
1500 * src/freeglut_init.c, src/freeglut_joystick.c: Big import of updated
1501 joystick code from PLIB, with permission from Steve Baker. Most of the
1502 adaptation done by John, with a little bit of testing and changes by
1503 Thierry Thomas and myself. Seems to compile on:
1505 WIN32 Red Hat LINUX FreeBSD NetBSD/amd64
1509 * src/freeglut_main.c: Close a bug whereby events can be delayed
1510 arbitrarily long if they get caught between the socket and the
1511 client-side queue on X, sometime after glutMainLoopEvent()'s loop
1512 quits and before the sleep code is invoked.
1516 * src/freeglut_main.c: Ammended a comment on fgCheckJoystickCallback().
1517 * src/freeglut_main.c: Minor style normalizations to minimize the diffs
1518 between *now* and from before John's changes. No functional changes:
1520 * Removed some hard TABs introduced. * Removed some
1521 spaces-at-end-of-line introduced. * A couple of function calls were
1524 I did this separately only because I don't like messing with other
1525 people's commits. (I don't like feeling like the style police, either,
1526 but when I mess with the commit, there's no room for reverting my
1527 interference if it is deemed undesirable...)
1528 * src/freeglut_main.c: Some changes from John.
1530 The main attraction seems to be correcting a bug with the action-on-
1535 * src/freeglut_main.c, src/freeglut_window.c: Win32 glutIconifyWindow()
1536 patch contributed by John F. Fay Restrict resize callbacks to visible
1537 windows When iconified via glutIconifyWindow(), don't pass (0,0) to
1538 resize callback Note that minimising the window via the menu or
1539 minimise button is not yet resolved.
1543 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
1544 Split a few overlong lines.
1546 Adjusted some spacing in a few spots to be more consistant with
1547 freeglut style. Including one unindented if() body.
1549 Eliminated a dead variable.
1550 * src/freeglut_joystick.c: Changed several #ifdef's to proper #if's.
1552 * src/freeglut_main.c: Hm... I thought that I committed this last night.
1555 This is Nigel's modified fgSleepForEvents(), essentially. Take 2.
1559 * include/GL/freeglut_std.h: Three supported win32 compilation
1560 environments: MSVC, Cygwin and MingW32 #pragma is specific to MS
1562 * src/freeglut_internal.h: Explicitly cast function pointer to (void *)
1563 in SET_WCB since all callbacks stored as void pointers suppress gcc
1564 -Wall -pendantic "noise"
1565 * src/freeglut_structure.c: Typesafe handling of temporary window
1566 destroy callback Move assignment out of while test, scope temporary
1567 inside loop Be explicit about assignment/comparison in if test for gcc
1568 peace of mind suppress gcc -Wall -pendantic "noise"
1569 * src/freeglut_internal.h: Three supported win32 compilation
1570 environments: MSVC, Cygwin and MingW32 The windows mmsystem header
1571 need only be included internally to freeglut strdup vs _strdup is
1572 specific to the MS compiler
1573 * src/freeglut_font.c: strlen expects (char *), rather than (unsigned
1574 char *) suppress gcc -Wall -pendantic "noise"
1575 * src/freeglut_cursor.c: Replace assignment of array to struct with
1576 field-by-field assignment suppress gcc -Wall -pendantic "noise"
1577 * src/freeglut_menu.c: glutBitmapString and glutBitmapLength expect
1578 (unsigned char *) rather than (char *) suppress gcc in -Wall
1580 * src/freeglut_joystick.c: Replace #ifdef WIN32 with #ifdef
1581 TARGET_HOST_WIN32, as per FreeGLUT convention
1582 * src/freeglut_init.c: fgState.FPSInterval is unsigned int (GLuint),
1583 environment variable GLUT_FPS can be negative
1584 * src/freeglut_window.c: OpenGL context is not made current on Win32
1585 until fgSetWindow is called. This resolves severe problems observed in
1587 * src/freeglut_window.c: #pragma message is only understood my MS
1588 compiler #if defined(_MSC_VER) .. #endif
1589 * src/freeglut_state.c: Resolve bug 864978 - GLUT_OWNS_JOYSTICK
1591 * src/freeglut_main.c: Tidy nested if/else to suppress gcc -Wall
1592 -pedantic noise gcc suggests explicit braces to avoid ambiguous `else'
1596 * progs/demos/CallbackMaker/CallbackMaker.c,
1597 progs/demos/Fractals/fractals.c,
1598 progs/demos/Fractals_random/fractals_random.c: Configuring with
1599 "--enable-warnings" broke three demos: * CallbackMaker defined, but
1600 did not use, the Joystick() function (a callback for the freeglut
1601 joystick interface). I uncommented the callback-registration. I assume
1602 that it was commented out because it was spammy. (freeglut does
1603 joysticks by polling with a timer.) Perhaps a longer interval than
1604 10ms would be advisable?
1606 * fractals.c used strcpy() without getting the prototype. Added
1607 #include <string.h> at the top.
1609 * fractals_random.c had the same problem as fractals.c.
1613 * src/freeglut_main.c: Moved the window-resize code so that it happens
1614 whenever there is a pending resize for the window, whether or not the
1615 window is visible or in need of a redisplay. The resize is now done
1616 before the visibility and need-to-redisplay checks.
1620 * src/freeglut_structure.c: Got rid of those int/ptr warnings on AMD64.
1621 (The code was casting an {int} to a pointer, and later retrieving the
1622 int by another cast. It should be safe provided that pointers are at
1623 least as big as {int}, but GCC was giving warnings on my system,
1625 * src/freeglut_main.c, src/freeglut_structure.c: Several
1626 test-on-assignment cases have been converted to stop GCC from
1627 complaining about if( a = get_a_value_for_a( ) ) type code.
1631 * src/freeglut_internal.h: Ooops, left some cruft in a comment in the
1632 header when committing the last patch. Cleaned up.
1633 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1634 src/freeglut_structure.c: Wrote SET_WCB() to set a window callback.
1635 This lets us out of using the FETCH_WCB() as an lvalue (which it
1636 shouldn't, since the value of the FETCH is cast to the correct
1637 function-pointer type).
1639 2003-12-15 James Jones <puggles@users.sourceforge.net>
1641 * progs/demos/Fractals/Fractals.dsp: Change the destination directory of
1642 the debug version to "Debug" (John Fay)
1644 2003-12-13 James Jones <puggles@users.sourceforge.net>
1646 * ChangeLog: Release 2.2.0
1650 * src/freeglut_main.c, src/freeglut_window.c: Stripped out TABs that got
1653 There were no changes other than replacing about 10 to 12 TABs with a
1654 visually-suitable number of spaces, so this can probably be blindly
1655 treated as equivalent to the previous versions of the two affected
1658 2003-12-11 Christopher John Purnell
1660 * src/freeglut_internal.h, src/freeglut_structure.c: The deferred window
1661 destruction code was destroying the windows in reverse order. This
1662 cased a crash when the call to glutDestroyWindow() for a sub windows
1663 was immediately followed by a call to glutDestroyWindow() for it's
1664 parent. fgCloseWindows() would call fgDestroyWindow() for the parent
1665 first fgDestroyWindws() would recurse over the children and then
1666 fgCloseWindows() would call fgDestroyWindow() again for the child.
1668 I've replaced the single linked list with one of our two way link list
1669 structures. I've also moved it into fgStructure because that seemed
1670 the consistent thing to do.
1672 I said the the deferred windows destruction causes more problems then
1675 2003-12-11 James Jones <puggles@users.sourceforge.net>
1677 * progs/demos/CallbackMaker/Makefile.am: Include project file in the
1679 * ChangeLog: Updates for 2.2.0 RC2
1680 * progs/demos/demos.dsw: Add shapes to the Visual C workspace.
1681 * progs/demos/shapes/Makefile.am: Package the visual C project file with
1683 * configure.in: Set the version to 2.2.0
1684 * src/freeglut_gamemode.c, src/freeglut_main.c, src/freeglut_window.c:
1685 Nigel Stewart's Win32 window-sizing fix for game mode
1686 * progs/demos/One/one.c: Disable/enable lighting in the "one.c" demo
1688 * progs/demos/CallbackMaker/CallbackMaker.dsp: Add some essentials to
1689 get this program to compile (Nigel)
1690 * src/freeglut_internal.h: Update to reflect 2.2.0 release
1691 * ChangeLog: Note the release of 2.2.0 RC1
1695 * src/freeglut_structure.c, src/freeglut_window.c: John correctly
1696 observed that the initialization {OldHeight} and {OldWidth} in the
1697 window structure should be done for both windows and sub-windows, and
1698 the easiest way to do this is in the
1699 freeglut_structure.c:fgCreateWindow() code. So, transplant one line.
1703 * src/freeglut_main.c: Commit of John's change to stop an infinite-loop
1704 condition when the only windows left are freeglut menu windows, and
1705 correctly calls exit() if we drop out of the main loop without having
1706 requested any freeglut extensions to glutMainLoop() handling.
1710 * progs/demos/shapes/shapes.c, progs/demos/shapes/shapes.dsp: Two from
1713 * Updated shapes.c. I think that it's just reformatting and the
1714 addition of some comments.
1716 * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project
1717 file for building shapes on WIN32 with MSVC++.
1719 2003-12-03 Christopher John Purnell
1721 * configure.in: Added an option to enable gcc compiler warnings. I've
1722 explicitly excluded the one about adding parentheses.
1726 * src/freeglut_main.c: Touched up several comments, pointing up things
1727 that may be worth reflect- ing upon in the future.
1728 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1729 Hrm. I misunderstood the purpose of {window->State.Width} and
1730 {...Height}. Those are *not* records of the old values, but rather of
1731 the *desired* *new* values, hence it was inappropriate to use them in
1732 ConfigureNotify X11 event handling. Doing so introduced some new
1735 So, I created OldHeight and OldWidth in the window State structure,
1736 and *those* do what I require.
1738 I also stripped out the obsolete comment about getting extra/bogus
1739 reshape events. (Though I maintain that an application should be
1740 robust against them, freeglut should no longer generate them if the
1741 window has not changed size since last reported.)
1745 * src/freeglut_main.c: Changed Create/ConfigureNotify handling in
1748 * Just need to call GETWINDOW() once. Ooops. Heh. * Update
1749 {window->State} with the new size of the window. * If the window-size
1750 has NOT changed, then do NOT call the Reshape event.
1751 * src/freeglut_main.c: Added an "XXX" earmark for post-release
1752 contemplation. (The point is definitely in need of consideration, I
1753 believe, but is not immediately a major bug, so I'd rather not mess
1754 with it at the risk of postponing a release "soon".)
1755 * src/freeglut_main.c: Ensure that the time-out for sleeping is never
1757 * src/freeglut_main.c: Fixed a bug for UNIX_X11 where window reshape
1758 events were causing freeglut to mark the window as *needing* a reshape
1759 (which during general display callback handling would result in
1760 effectively a glutReshapeWindow()).
1762 The code is now system-dependant. It should be abstracted to a
1763 function, but is presently copied in two places. Sorry.
1765 Also, inverted the order of the associated if()/else check (in both
1766 WIN32 and UNIX_X11 branches) since the former "else" part was a
1767 one-line callback invocation.
1769 This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.
1771 2003-12-01 Christopher John Purnell
1773 * src/freeglut_internal.h: Added missing prototype for new list
1776 2003-11-28 Christopher John Purnell
1778 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1779 src/freeglut_structure.c: Timer optimizations. Made the list of
1780 pendinig timers ordered. Added a free list of used timer structures.
1781 * src/freeglut_callbacks.c: Timer optimizations.
1782 * src/freeglut_window.c: Fixed windows compilation problem with last
1785 2003-11-27 Christopher John Purnell
1787 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
1788 src/freeglut_structure.c, src/freeglut_window.c: Window close fix. The
1789 default behaiour should now be the same as with glut.
1793 * src/freeglut_init.c: Added change from Nigel to have resize events
1794 cause redraw events in WIN32. Also slightly reshuffled comments to
1795 deal with line-wrap issues.
1799 * src/freeglut_main.c: John reported, and fixed, a problem that recent
1800 changes caused for the Lorenz demo (seems to be WIN32 specific).
1801 * src/freeglut_structure.c: Update from John: Removed the freeglut hack
1802 of decrementing the highst-window-ID marker when the highest window is
1803 deleted. (This was a half-way measure for an idea that was decided to
1804 be dubious in the first place.)
1805 * configure.in, progs/demos/Makefile.am, progs/demos/shapes,
1806 progs/demos/shapes/Makefile.am, progs/demos/shapes/shapes.c: Added a
1807 new demo (from Nigel) showing some of the basic GLUT geometry shapes.
1808 "shapes" is the name of the demo.
1809 * include/GL/freeglut_ext.h, src/freeglut_geometry.c: Commit of work
1812 Massive rework of the geometric primitive code. Includes a new
1813 primitive (cylinder; solid and wireframe) and corresponding update to
1814 freeglut_ext.h for the prototype.
1815 * src/freeglut_internal.h, src/freeglut_main.c,
1816 src/freeglut_structure.c: More work from John (sorry for
1819 * We forgot to bump our version number in freeglut_internal.h It is
1820 now at 2.0.2 (actually, I think that 2.1.0 might be a better choice),
1821 which is presumably going to be our next formal release. 2.0.1 is
1822 incorrectly identified as 2.0.0 in the header.
1824 * A typo in a comment has been corrected ("than"/"that").
1826 * Numerous "manual" checks for callbacks are omitted now, since
1827 INVOKE_WCB() does this for us. These were holdovers from the
1828 pre-INVOKE_WCB() days. There may be some very subtle changes in
1829 freeglut behavior, since freeglut used to test the callbacks a little
1830 earlier in some cases and may have skipped some minor things (like
1831 changes to the current window) in some special cases, otherwise. It is
1832 not believed that any documented behavior is broken, and it is
1833 unlikely---not to say impossible---that any extant applications will
1834 detect the change. It is even possible that there is no external
1835 behavioral change in freeglut.
1837 This also significantly simplifies some sections of code that used to
1838 have conditional execution. "Unconditional code is simpler code" as
1839 one of the comments used to say.
1841 * Lots of XXX commentary is now removed. Some of it was obsoleted by
1842 other changes, some by changes from John.
1843 * src/freeglut_internal.h, src/freeglut_main.c,
1844 src/freeglut_structure.c: Change from John (I removed a couple of
1845 spaces from a couple of lines in his freeglut_internal.h file where
1846 they were wrapping in EMACS; otherwise, the files are exactly as he
1849 The change unifies the WIN32 and UNIX_X11 code by defining our own
1850 window-handle-type in freeglut_internal.h. This let John rip out some
1851 #if garbage in several places. The result is clearer code.
1857 * src/freeglut_font.c, src/freeglut_geometry.c,
1858 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1859 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1860 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1861 src/freeglut_window.c: Numerous style normalizations from John:
1863 * Convert "return( value );" to "return value;" * Normalize spacing
1864 around semicolons. * Remove extraneous parens. * Split multi-statement
1865 lines into multiple lines. (Mostly things of the form: "if( condition
1867 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1868 All changes are from John, except for: (a) I re-inserted the meat of a
1869 comment that I still feel is relavent. (b) I fixed a compile-time
1870 error in the UNIX_X11 code where a variable is declared after
1871 executable code in a block without creating a new sub-block for the
1874 Changes from John include: (a) Style revision. (b) Changes to postpone
1875 the handling of window resizes.
1877 Lots of lines were changed, but I think that thos two cover the ground
1878 that he hit. See the diffs for details.
1880 2003-11-18 Christopher John Purnell
1882 * src/freeglut_cursor.c, src/freeglut_ext.c, src/freeglut_geometry.c,
1883 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1884 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
1885 Lots of stuff that John F. Fay pointed out. Plus some changes to
1886 remove gcc warnings.
1888 2003-11-17 Christopher John Purnell
1890 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1891 src/freeglut_state.c, src/freeglut_structure.c: Fix spelling mistake
1892 in a variable name. Added a comment for John Fay. Added the copyright
1893 notice for XParseGeometry source.
1895 2003-11-16 Christopher John Purnell
1897 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1898 src/freeglut_state.c, src/freeglut_structure.c: Made Modifers variable
1899 global as per glut classic.
1900 * src/freeglut_init.c: Removed old unused glutInitDisplayString code.
1901 Reformated new glutInitDisplayString and XParseGeometry code.
1902 * src/freeglut_init.c: Use XParseGeometry for better geometry parsing.
1903 Moved geometry parsing to after fgInitialize() so we can use the
1904 screen size to correctly calculate negative positions in the geometry
1905 string. Copied the code for XParseGeometry from the X11 sources for
1906 use in the Win32 version. freeglut now passes test1 of the glut test
1909 2003-11-15 Christopher John Purnell
1911 * src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1912 src/freeglut_main.c, src/freeglut_structure.c, src/freeglut_window.c:
1913 Removed the state variable BuildingAMenu. Instead pass a new parameter
1914 isMenu to fgCreateWindow(). Elsewhere use window->IsMenu.
1915 * src/freeglut_init.c: freeglut_assert_ready is going to have to go at
1916 some point. But for now I've moved setting fgState.Initalized to
1918 * src/freeglut_callbacks.c, src/freeglut_display.c,
1919 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1920 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1921 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1922 src/freeglut_window.c: Replace TRUE with GL_TRUE and FALSE with
1923 GL_FALSE where the type is GLboolean.
1927 * src/freeglut_main.c, src/freeglut_menu.c: Normalized the spacing
1928 around symbols, for the most part. Ho-hum.
1930 2003-11-15 Christopher John Purnell
1932 * src/freeglut_main.c: Added a call to fgDeinitialize() before the call
1933 to exit() in fgError().
1937 * src/freeglut_joystick.c: Style normalizations to the joystick code.
1939 2003-11-15 Christopher John Purnell
1941 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1942 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1943 Added a new state variable "Initalized". Replaced referenced to
1944 Time.Set with this new variable where appropriate. fgElapsedTime() now
1945 set the start time if Time.Set is false. Moved
1946 glutGet(GLUT_ELAPSED_TIME) handling to before the assert.
1950 * src/freeglut_internal.h: Normalized the internal header's style a bit.
1951 * src/freeglut_init.c: Plowed one more file this morning. Still just
1952 trivial formatting issues.
1954 And I left alone the "INIT DISPLAY STRING PARSING" section, since it
1955 still appears to be in flux.
1956 * src/freeglut_font.c, src/freeglut_gamemode.c: Yet more trivial style
1959 Sorry, but that's all that I'm up to at the moment. On the plus,
1960 excepting the font_data file (which I've been skipping), up through
1961 this file, I think that the code style is pretty close to uniform.
1962 * src/freeglut_font.c: Minor style corrections.
1963 * src/freeglut_display.c: Minor spacing quibble.
1964 * src/freeglut_cursor.c: Added a brief explanatory note to the X code
1965 for GLUT_CURSOR_NONE.
1967 Corrected the indentation of a block of code.
1968 * src/freeglut_window.c: Noted one of a few cases where we do something
1969 immediately that could more efficiently be postponed, quite
1970 easily---and which GLUT promises *is* to be postponed. (It is unlikely
1971 that the difference will break any apps, but postponing should be
1974 No real change, just a comment in the code.
1978 * ChangeLog: Updated ChangeLog for the day.
1979 * include/GL/freeglut_std.h, progs/demos/One/one.c, src/freeglut_ext.c,
1980 src/freeglut_font.c: Removal of all remaining TABs in the freeglut
1981 *.[ch] files. (I missed a few in the "one" demo, it seems, and some
1982 more crept back into freeglut_(ext|font).c, presumably due to my own
1983 edits when I forgot to use the "freeglut-c-mode" in EMACS.)
1984 * progs/demos/One/one.c: Moved glutInit*() functions ahead of
1985 glutInit(). (This is proper use of glutInit() in general, since it
1986 allows the user to override settings via {argc, argv} command-line
1988 * progs/demos/One/one.c: Style normalizations: Removed CRs and hard TABs
1990 * ChangeLog, src/freeglut_structure.c: Corrected the numbering of the
1991 ChangeLog (there were two (110)s).
1993 Added entries summarizing my commits since September or late August,
1994 for the benefit of those lacking both CVS and web access.
1995 * progs/demos/demos.dsw: Added CRs to the ends of all lines in MS
1996 developer studio demos.dsw file..
2000 * src/freeglut_main.c: John's fix for the minimize/close/maximize
2001 controls no longer working. WIN32 expected us to pass the message on
2002 up the chain (or do something else with it), rather than just throwing
2003 away the event, for a certain class of events. (See the diffs for more
2006 The code is also slightly reformatted from what was previously in the
2008 * freeglut.dsp, freeglut_static.dsp,
2009 progs/demos/CallbackMaker/CallbackMaker.dsp, progs/demos/demos.dsw: A
2010 *.dsp file for CallbackMaker in the demos.
2012 Plus updated *.dsp and *.dsw files to reflect the new freeglut header
2015 NOTE: The prior version of the *.dsw file does not in fact have CRs. I
2016 thought that it did. For consistancy, I am not putting them in in this
2017 version, either. (At least one person said that his MSVC++ system is
2018 happy with the current files. If there are problems, we can easily add
2019 the CRs, but that should be a separate commit...)
2020 * configure.in, progs/demos/CallbackMaker,
2021 progs/demos/CallbackMaker/CallbackMaker.c,
2022 progs/demos/CallbackMaker/Makefile.am,
2023 progs/demos/Fractals_random/fractals_random.c,
2024 progs/demos/Makefile.am: New demo from John: CallbackMaker.
2026 This demo shows the use of every callback that you can register with
2027 freeglut, and also generates event reports so that you can see what is
2028 happening to the program as it runs.
2030 Not much to look at, but both utilitarian and a practical example.
2032 Please double-check that I updated everything that needs to be
2033 updated. I reran autogen.sh and ./configure, and it built okay for me.
2035 * src/freeglut_structure.c: Hm. I thought that I already hit this file
2036 for style normalization. Oh well... Should be no functional changes.
2037 Should be pretty close to in-line with the style of changes that I've
2038 been making else- where.
2039 * src/freeglut_structure.c: Ooops. Forgot that we already had a call to
2040 fgClearCallBacks() in the code and added a second one. I just deleted
2042 * src/freeglut_structure.c: Added Nigel's suggested code to clear all
2043 but the destroy callback early on, leaving Destroy to be cleared later
2044 after the last possible point where it should be invoked.
2045 * src/freeglut_menu.c: Modified the menus to refer to {border} rather
2046 than {FREEGLUT_MENU_BORDER}, in fghDisplayMenuBox(). The local
2047 variable was already defined and used for some purposes, so we might
2048 as well use it throughout. It does serve to shorten and clarify the
2049 code a bit---though I have mixed feelings about creating aliases that
2052 Still, the variable already existed and was already used in places.
2053 (We could even move it into the freeglut state, or make it a {const
2056 Oh well. Stuff to ponder.
2057 * src/freeglut_cursor.c: Well, a couple of days have gone by, so I
2058 assume that items (a) and (b) in the freeglut_cursor.c file's "Open
2059 issues" comment are now satisfactor- ily closed.
2061 I also partially implemented some error-checking, using my limited
2062 understanding of how Xlib users are supposed to do this. (No one
2063 commented about the lack of error-checking, pro or con. Perhaps
2064 someone will care to comment now?)
2066 At present, it just will print out a warning, via fgWarning(). In part
2067 because I'm not sure what is best to do, and in part because failure
2068 to set the cursor type is probably not a fatal problem.
2070 2003-11-08 Christopher John Purnell
2072 * progs/demos/Fractals/Makefile.am,
2073 progs/demos/Fractals_random/Makefile.am,
2074 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Applied
2075 Braden McDaniel's non-srcdir build patch.
2079 * src/freeglut_menu.c: A first pass over freeglut_menu.c to bring it in
2080 line with the rest of freeglut's style. Mostly re-indenting and
2081 splitting long lines. For those that may be concerned: No, I didn't do
2082 any more arrangments of the form (CONST == a) rather than (a ==
2084 * progs/demos/Fractals_random/fractals_random.c: Altered the way that
2085 the {random} value (from 0..3) is chosen.
2087 Previously, it picked out two adjacent bits in the result of rand().
2088 Unfortunately, these adjacent bits (at least on NetBSD) have a certain
2089 amount of dependance. After a period (perhaps a thousand or so?), it
2090 starts to repeat the pattern of those two bits. (I think; I haven't
2091 actually tested that directly.) This presumably is locking it into a
2092 an an N-way attractor on the "snowflake", such that if you zoom in a
2093 ways, you will start to see some spots *quickly* are colored, and
2094 others are *never* colored.
2096 What I've done now is to pick up two widely-spaced bits in a single
2097 rand() call. (Perhaps we would do as well to pick up something like
2098 bit #16 from two consecutive rand() calls?) These widely-spaced bits
2099 have a lower statistical dependance on one another (if I can get away
2100 with using that term for an arithmetic operation; though since stats
2101 has more to do with sampling and less to do with true randomness, I
2104 The net effect, at leats on NetBSD, is far better snowflake if you
2109 * src/freeglut_main.c: From John:
2111 [This] implements the visible/invisible for Windows. It does NOT call
2112 the visibility callback, though.
2113 * src/freeglut_main.c: Stripped out the now truly extraneous {braces} in
2116 if( ... ) { INVOKE_WCB( ... ); }
2118 Check for compiling on WIN32.
2119 * src/freeglut_internal.h: Adopted Eero Pajarre's suggestion of using a
2120 do { ... } while rather than { ... } for the INVOKE_WCB() macro. This
2121 lets it be used "more like a function", in that:
2123 if( ... ) INVOKE_WCB( ... ); else ...
2126 * src/freeglut_main.c: Pure code janitoring: Shuffled the order of some
2127 of the case statements in the UNIX_X11 X event processing loop. (In
2128 general, it's nice to have case statements sorted, especially when you
2129 have a *huge* switch statement like this. That makes it easier to find
2130 the one that you're looking for, and to see if a certain case is
2132 * src/freeglut_main.c: Combined EnterNotify and LeaveNotify event
2133 processing in the UNIX_X11 event loop.
2134 * src/freeglut_main.c: Added ReparentNotify case to UNIX_X11 event loop,
2135 to catch the extraneous ReparentNotify event types (type 21).
2136 * src/freeglut_internal.h, src/freeglut_structure.c: Oh well, I might as
2137 well add the call to clear callbacks on window destruction. Also
2138 renamed the function to do this: fgClearCallBacks(). Ho-hum.
2139 * src/freeglut_internal.h, src/freeglut_structure.c: Added
2140 fgInitCallBacks() to freeglut_structure.c. (The function takes an
2141 {SFG_Window *}.) Added prototype to freeglut_internal.h. Added use of
2142 the function to the window initialization. (Don't count on calloc(),
2143 which sets all bits to 0.)
2144 * src/freeglut_gamemode.c: Style normalization; removal of
2145 say-nothing-useful comments.
2146 * src/freeglut_font.c: Normalized the style of freeglut_font.c No
2147 substantial alterations.
2148 * src/freeglut_ext.c: Somewhat normalized the style of this file.
2150 Also moved the "glutMouseWheelFunc" extension down into the
2151 "extensions" part of the table. (Purely internal organization. It will
2153 * src/freeglut_display.c: Further normalization of the code's style. No
2154 substantial changes.
2155 * src/freeglut_cursor.c: Split one last overlong line in
2157 * src/freeglut_cursor.c: Added GLUT_CURSOR_NONE support in UNIX_X11
2158 (well, NetBSD; you lot need to try it on others; (^&).
2160 Deallocated some resources that we are creating. VERY slight memory
2161 leak, but plugged now.
2163 These two complete the first two "Open issues" ( (a) and (b) ). The
2164 first one also completes X support for glutSetCursor(). If others can
2165 verify, we can fully demote the outstanding bug over this to
2168 I'll delete the dead Open issues and re-letter the others if someone
2169 will cross-check me. Or if no one says anything in a day or two. (^&
2170 * src/freeglut_cursor.c: Further normalized the style of the cursor
2172 * src/freeglut_callbacks.c: Slight style improvements. Two rules of
2173 thumb that are almost always good to apply:
2175 * Don't write a == CONST. Instead, write CONST == a. Or, more
2176 generally (in C like languages): Avoid putting an lvalue on the
2177 left-hand side of an == comparison. (For consistancy, I try to avoid
2178 lvalues on the left- hand side of any comparison---but == is the most
2181 (An "lvalue" is a value that can safely go on the left side of an "="
2182 assignment, of course. (^&)
2184 * Do not write if( !condition ) return; other_thing; return;
2186 (See page 18 of K&P's _The Elements of Programming Style_.)
2188 Instead, it is better to just write:
2190 if( condition ) other_thing; return;
2192 There are times when sacrificing structured programming (e.g., via
2193 multiple return statements) is okay. But, here, there is no apparent
2194 gain---indeed, there seems only loss---in the non-structured code.
2195 * src/freeglut_main.c: Grr. Forgot to enable the "freeglut" C
2196 programming mode in EMACS, and had a few TABs in the last commit. This
2198 * src/freeglut_main.c: Minor corrections to the UNIX_X11 mouse-wheel
2199 support. In part this reflects that {button} is already shifted to the
2200 GLUT numbering, and hence should be counted as 3&4, 5&6, etc.
2202 The other change was simply to clarify the computation of {direction}.
2203 The original code did some clever arithmetic. The new code is more
2204 straightforward, even if it requires more lines to express.
2208 * src/freeglut_main.c: Ooops. I screwed up on part of John's fixes.
2211 I think that I have his fix properly committed now. Mea culpa.
2212 * src/freeglut_callbacks.c, src/freeglut_internal.h,
2213 src/freeglut_main.c, src/freeglut_structure.c: Cleanup pass after
2214 committing callback conversion (from structure to array-of-pointers).
2215 Mostly deleted commented-out struct-based code. Also added some XXX
2216 comments that I though should be pondered. (My own pair of eyes, and
2217 one brain cell, were not sufficient at this time to decide what to do
2218 for those ponderables. (^&)
2219 * src/freeglut_callbacks.c, src/freeglut_init.c,
2220 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
2221 src/freeglut_misc.c, src/freeglut_structure.c: Converted the
2222 "Callbacks" structure (with named members holding individual callback
2223 pointers) to a "CallBacks" array in fgState. (This is to allow us to
2224 write a loop to clear all callbacks from windows when the window is
2225 dead/dying. Using this, we can safely assign NULL to each in a loop.)
2227 Support includes two new macros, FETCH_WCB() and INVOKE_WCB(). See
2228 freeglut_internal.h for more details there.
2230 Some typedefs of function pointer types were altered to make them more
2231 uniform (necessary for the macros).
2233 All references to window-based callbacks in freeglut are updated to
2236 Old usages will cause compile-time errors.
2238 As a side bonus, the new invocation macro sets the current window and
2239 checks pointers so that these common steps can be uniformly done on
2240 every window-based callback. This makes it easier to do things right.
2241 At the same time, the array notation (and now required associated
2242 casts) make it harder to bypass the macros and abuse the function
2243 pointers, in general.
2245 After this commit, I will go through the code and clean up dangling
2246 issues about formatting. This commit is just a "it now works, let's
2247 checkpoint it" type of affair.
2248 * src/freeglut_main.c: From John, a couple of lines needed to be changed
2249 to fix the mouse wheel support on WIN32.
2250 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2251 Includes mouse button, mouse motion, and mouse wheel support.
2255 * src/freeglut_menu.c: Multiple changes from John. Style issues, plus a
2256 bug-fix to check a pointer before deallocating some memory.
2258 He also removed one obsolete comment, and added some more comments.
2259 * src/freeglut_main.c: Some changes, mostly from John. Mostly style
2262 One bug fix from John: Execution state bug-fix in glutMainLoop(), per
2265 One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
2266 {ButtonPress} is a constant.
2267 * progs/demos/Fractals_random/fractals_random.c: Per John's emailed
2268 desire to have all files obey UNIX EOL conventions, I have stripped
2269 out carriage returns from this file.
2271 This is the *only* change, but every line is touched. If you want to
2272 see the real differences between older and newer versions, you will
2273 have to get local copies of each and first match their EOL
2275 * progs/demos/Lorenz/lorenz.c: Update from John:
2277 I [John] added a feature to check for memory leaks under Windows.
2278 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2280 I [John] converted everything to double precision to avoid compiler
2281 warnings. I also added a feature to check for memory leaks under
2282 Windows and removed a memory leak (surprise!).
2283 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
2284 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
2285 src/freeglut_gamemode.c, src/freeglut_geometry.c,
2286 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
2287 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
2288 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
2289 src/freeglut_structure.c, src/freeglut_teapot.c,
2290 src/freeglut_videoresize.c, src/freeglut_window.c: Got rid of the
2291 G_LOG_DOMAIN junk, per discussion on the mailing list.
2292 * src/freeglut_callbacks.c: Minor formatting quibbles. (The brain isn't
2293 up to anything more serious at the moment.)
2294 * src/freeglut_main.c: Missed a block where one level was 2-space
2297 Nit-picked a few other lines for consistancy.
2301 * src/freeglut_init.c: Fixed a memory leak (thanks for the correction,
2304 Smoothed over some code style issues while I was here, but left the
2305 init-string parsing alone for now.
2306 * freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw: Deleted 3 files
2307 (again?) from CVS, on John's request. Old/obsolete MSVC++ project
2308 files. (freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)
2309 * src/freeglut_main.c, src/freeglut_structure.c: * Indentation issues. *
2310 Pulled some common code into a nicely packaged function. * Found some
2312 * src/freeglut_main.c: Heh.
2314 Forgot to wrap the fgGetXModifiers() in a #if. Fixed.
2315 * src/freeglut_main.c: Extracted some common code to a subroutine, in
2316 glutMainLoopEvent(). (The common code was a snippet to compute X
2317 keyboard modifiers as a bit-mask of GLUT symbols.)
2318 * src/freeglut_main.c: Caught a few more little style issues.
2319 * src/freeglut_main.c: Added a "case" for an X event that we turn on but
2320 do not use. ({MapNotify}). We already caught {MappingNotify} and
2322 * src/freeglut_main.c: * Fixed a bug in the X11 handling of
2323 scrollwheel/mouse. The old code, I believe, checked if *either* a
2324 wheel or button callback was set, and then decided which to use---and
2325 unconditionally called it. I left the "either" check in, but added
2326 additional checks before actually doing the invocation. * Lots of
2327 reformatting. Massive. The usual suspects, though, and fairly trivial:
2328 Re-indenting to standard size, shuffling some spaces to match the
2329 freeglut "standard" of: if( ... ) ...and: func( ... )
2333 * src/freeglut_callbacks.c: Cleaned up one macro definition.
2335 Picked up an over-long line that I missed before.
2336 * src/freeglut_callbacks.c: Fit some long lines to 80 columns.
2337 * src/freeglut_cursor.c, src/freeglut_display.c,
2338 src/freeglut_gamemode.c, src/freeglut_geometry.c: Last of the hard
2339 TABs in the src/*.c files.
2340 * src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
2341 src/freeglut_menu.c, src/freeglut_state.c: En masse removal of most (I
2342 think) of the remaining hard TABs in files. There are still a couple
2343 of files that need to be hit.
2344 * src/freeglut_window.c: Picked up some stray TABs scattered in this
2346 * src/freeglut_window.c: Noted by XXX comments that the XFlush() calls
2347 probably shouldn't be there. Flushing the X protocol stack every
2348 little bit both adds clutter to the code and may impede performance.
2350 It seems that we should be able to get rid of these, though allowing
2351 client code to directly call glutMainLoopEvent() does make it a little
2354 Something to ponder.
2355 * src/freeglut_window.c: Polished off the say-nothing-new comments and
2356 lines-over-80-columns in freeglut_window.c
2358 There should be no functional changes.
2359 * src/freeglut_window.c: Missed a few say-nothing-new comments in
2360 fgOpenWindow(). Eeep. Should be better now. (^&
2361 * src/freeglut_window.c: Cleansed fgCloseWindow(): * say-nothing-new
2362 comments axed. * de-TABbed. * Made the white-space to be consistant.
2363 * src/freeglut_window.c: Cleaned up fgOpenWindow(): * Removed TABs. *
2364 Made indentation consistant. * Deleted say-nothing-new comments. *
2365 Changed an *error*check* from an assert to an if(). (The error-check
2366 was on window creation; we don't want to lose that if the user
2367 compiles with asserts deactivated. Also, assert()s really tell us more
2368 about programming errors, rather than run-time errors, so it is a
2369 little misleading to use assert() for error-checks, even if you can
2370 depend upon assert()s never being compiled away to null statements.) *
2371 Added some XXX comments for things that bear some rumination.
2372 * src/freeglut_window.c: Cleanup to fgSetWindow(). The usual suspects: *
2373 Removed tabs. * Made indentation consistant. * Killed off
2374 say-nothing-new comments.
2375 * src/freeglut_window.c: Cleanup to fgSetupixelFormat(). Should be no
2378 Code facelift included:
2380 * Consistant indentation. * Removal of all TABs (there were a bunch).
2381 * Fit to 80 columns.
2382 * src/freeglut_window.c: There should be no changes to code
2383 functionality, though a fair bit of little changes to the code
2386 * Fit the comments at the start of the file to fit 80 columns. * Noted
2387 an unusual feature of the ATTRIB() macro. * Added ATTRIB_VAL() macro
2388 which is really just two ATTRIB()s. This lets us put things like
2389 {ATTRIB (GLX_RED_SIZE); ATTRIB (1);} on one statement: {ATTRIB_VAL
2390 (GLX_RED_SIZE, 1);}. I did this to preserve some of the layout of
2391 information while also avoiding the nasty semi-visible ";" in the
2392 middle of a line of code. And by putting the {braces} in the macro
2393 definition, I was able to visually clean code of the form: if
2394 (condition) { ATTRIB( X ); ATTRIB( 1 ); } ...rewriting as: if
2395 (condition) ATTRIB_VAL( X, 1 ); * Eliminated a bunch of
2396 say-nothing-new comments in fgChooseVisual(). * Combined some
2397 semi-useful comments into a block comment summarizing a loop.
2401 * src/freeglut_structure.c: Finished off most of the issues with
2402 freeglut_structure.c, from a stylistic point of view (at least,
2403 insofar as: The original file's code was INCON- SISTANT. I did not
2404 remove the "!= NULL" stuff, did not address the shortest-branch-first
2405 issue for if-else statements, and left some rather ugly "if (x) {...
2406 return y} /* else do this */ return NULL;" garbage. This should, I
2407 think, be re-written as "if (x) return y; else return NULL;" or even
2408 better, "ret = NULL; if (x) ret = y; return ret;"
2410 In short, the code still has some issues, but I think that it's a bit
2413 (Oh, I also got rid of oustanding TABs.)
2414 * src/freeglut_structure.c: Eliminated most of the say-nothing-new
2417 Fit most of the code to no more than 80 columns.
2419 Raised some issues about completeness/correctness of trying to
2420 decrement the max-window-ID (apparently in order to partially recycle
2421 some window IDs to slightly slow the rate of growth of window IDs). (I
2422 didn't change what the code does, though.)
2424 The functionality of the code should be unchanged.
2425 * src/freeglut_main.c: Forgot to set {direction} explicitly to +/- 1 for
2426 freeglut mouse-wheel API on MS-WINDOWS. Oops.
2428 Now it should always report +/- 1 on MS-WINDOWS, per the spec.
2429 * src/freeglut_main.c: Minor fix to allow for multiple ticks to be
2430 received at one time by the WIN32 code. Take abs(direction) as the
2431 number of ticks, and count it down.
2433 <stdlib.h> *should* be included by freeglut_internal.h, I think, so it
2434 should be okay; otherwise add a suitable #include.
2435 * src/freeglut_main.c: Grrr. My attempt to commit got aborted, and the
2436 commit message was lost. Now I've lost track of what I said I'd done.
2439 * Fixed some issues with multiple wheels. * Noted in comments some
2440 issues about other-than-3-real-buttons. * Fixed formatting to fit 80
2441 columns. * Removed some BCPL/C++ style comments (//) that are not
2442 legal, and which, if memory servers, are not even strictly legal when
2443 disabled by preprocessor directives. E.g.,
2445 #if 0 not-syntactically-valid-C #endif
2447 ...is not legal. Though most cpp's will discard the bracketed material
2448 completely before the main C compiler pass has a chance to analyze the
2449 syntax. (MSVC++ and GCC both don't seem to mind the BCPL style
2450 comments in plain C, but let's keep the sources clean, eh?) * Fixed a
2451 problem that would have caused freeglut to report doubled wheel events
2454 Not tested other than compiling. Personally, I think that the
2455 interface is inherently broken at this point unless you are willing to
2456 get user- configuration. (Which would then solve the complaint that
2457 Steve had about computing the tick-size on behalf of applications.)
2458 I.e., there is NO WAY to know if we have the right buttons to start
2459 wheels at, or if there are any buttons after the first wheel(s), etc.
2460 We just have to guess---and if we are wrong, we can get varying
2461 degrees of brokeness.
2463 2003-10-29 Christopher John Purnell
2465 * src/freeglut_window.c: There is a problem with the way I did
2466 glutFullscreen() in my last commit. So I've copied the way the game
2467 mode does it. It's not ideal but it works. The glutGet() for the
2468 window border sizes will also have to be fixed at some point.
2469 * src/freeglut_window.c: Rewrote glutFullscreen(). It now correctly
2470 places the window in X11. It now uses system dependant code for more
2471 efficient use of windowing system calls.
2475 * src/freeglut_joystick.c: Should be no real changes to the code
2478 I missed a few lines that went past 80 columns. (^&
2480 Also made formatting more consistant.
2482 Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.
2483 * src/freeglut_joystick.c: Should be entirely superficial changes to
2486 * Fit lines to 80 columns. (It does get tiresome seeing long lines
2487 forced to break by the right-hand border of windows...(^&) *
2488 Eliminated say-nothing-new comments. * Made formatting more consistant
2489 in spots. * Eliminated some hard TAB characters.
2490 * src/freeglut_joystick.c: Added Thierry's change to include
2491 sys/param.h. This lets us pick out version numbers for OS releases
2492 corresponding to system headers.
2494 I modified it to also work with NetBSD; I cannot confirm if it is safe
2495 with any other systems, so it remains protected by a #if.
2496 * src/freeglut_state.c: Deleted some say-nothing-new comments.
2498 Added some XXX's where comments seemed to require future attention.
2500 Added some new comments with XXX's where future attention seems
2502 * src/freeglut_state.c: Deleted a bunch of say-nothing-new comments.
2503 Someday, there shall be an end to them.
2504 * src/freeglut_state.c: Previous changes were made without the freeglut
2505 major mode in EMACS. Re-tweaked some lines (mostly got rid of some
2506 TABs, but also resulted in some changed indentation).
2508 Reformatted a big comment to fit to 80 columns.
2510 Removed bogus references to "Linux". (UNIX, and/or X11 were relavent,
2511 and "UNIX/X11" was substituted for "Linux" in those places. This
2512 includes UNIX-alike systems.)
2513 * src/freeglut_state.c: Rewrote the TODO BEFORE THE STABLE RELEASE
2514 comment to fit to 80 columns.
2516 Cleanup of fghGetConfig(). (One return statement, simpler code.)
2518 Made glutSetOption() have a more consistant style---and also got its
2519 lines to stay under 80 columns.
2520 * src/freeglut_misc.c: Got the last of the say-nothing-new comments in
2523 (I would have picked them up before, but wanted the bug-fix and
2524 conversion-to-error-message changes to go in before I did more
2526 * src/freeglut_cursor.c, src/freeglut_main.c, src/freeglut_misc.c: *
2527 Fixed a bug that I introduced in fgWarning()/fgError(): I thought that
2528 ((a) || (b)) was defined to have value as: (a) if (a) != 0 (b) if (a)
2531 ...instead, it has value 0/1. This was causing a bug. It's probably
2532 just as well, since what I was trying to do definitely fell into the
2533 category of "clever code" rather than "clear code".
2537 * Made glutSetKeyRepeat() call fgError() if you go out of range. (The
2538 old code silently did nothing---not even a warning.)
2540 If it is really desirable to keep running, we should probably at least
2541 generate an fgWarning().
2543 * Deleted some say-nothing-new comments.
2545 * XXX added: Is glutSetKeyRepeat() deprecated?
2549 * include/GL/freeglut_ext.h, src/freeglut_callbacks.c,
2550 src/freeglut_ext.c, src/freeglut_internal.h, src/freeglut_main.c:
2551 Commit, mostly of work from John:
2553 * Removed some say-nothing-useful comments. * Added some tentative
2554 mouse-wheel support. * Fairly massive reformatting of code.
2556 I made some secondary changes to his changes:
2558 * One compilation error was fixed (missing close-paren + semicolon). *
2559 Deleted a few ore say-nothing-useful comments. * Some of John's code
2560 was strangely formatted to the point that it seemed completely out of
2561 place, so I took the liberty of reformatting it. Since I used GNU
2562 EMACS's <tab> key (which re-indents rather than inserts TAB
2563 characters), I had to propogate some indentation changes a little
2564 further than the bare necessity to match up with John's changes. (John
2565 seems to shoot for 2-space indents, while EMACS (and I, I confess)
2566 strongly prefer 4-space indents. The code that I was re-indenting had
2567 been put to 8-space indents, however.)
2569 I have *not* tested the code beyond compiling. I assume that John did
2570 (and that the compilation error was a result a minor change just
2571 before asking me to commit).
2572 * src/freeglut_cursor.c: Re-indentation style changes from John.
2574 There should be no alterations to how the code performs.
2576 (I modified how the X11 section of the set-cursor code is indented to
2577 slightly better match (IMHO) the rest of his changes.)
2581 * src/freeglut_menu.c: Converted a few "x != NULL" tests to "x" for
2584 I think that I've touched enough lines of source for one morning.
2585 * src/freeglut_menu.c: Cleaned up a little redundancy in a comment on
2586 the {menu_pen_*} variables.
2587 * src/freeglut_menu.c: Removed about 90 lines of say-nothing-new
2590 The code should be functionally unaltered by these changes.
2591 * src/freeglut_menu.c: Propogated a pointer-check from menu-attach to
2592 menu-detach. (Apparently, in some cases, the Menu member variable can
2595 Corrected the menu-attach code to make sure that both Window and Menu
2596 pointers are non-NULL (rather than "at least one").
2598 Rewrote button-checks to more simply and more clearly assert that the
2599 "menu button" is a valid button for menu actions: Instead of
2600 laboriously comparing against the three valid buttons (0, 1, 2 or
2601 GLUT_BUTTON_*), we do a simpler range-check and the upper bound is
2602 {FREEGLUT_MAX_MENUS}, allowing us to change the number of menuable
2603 buttons fairly easily in the future.
2605 Also deleted a few say-nothing-new comments.
2606 * src/freeglut_menu.c: Cosmetic changes (mostly deleted a few more
2607 say-nothing-new comments). The functionality of the code should be
2609 * src/freeglut_menu.c: Changed an "#elif TARGET_HOST_UNIX_X11" to
2610 "#else", since this simply governed menu aesthetics. I think that it's
2611 better to have a default that works than to break completely, should
2612 freeglut ever be ported to a new (non-WIN32, non-UNIX/X11) target.
2613 * src/freeglut_menu.c: Minor modifications to the menus:
2615 * Updated an old "TODO BEFORE STABLE" comment.
2617 * Expanded a comment re. some #define macros.
2619 * Made colors and font choice system dependant. The UNIX freeglut
2620 menus look more like UNIX GLUT menus, now. (This is PURELY a cosmetic
2621 change. But it achieves better compatibility visually.)
2622 * src/freeglut_main.c: Cleaned up glutMainLoop() a bit:
2624 * Deleted numerous say-nothing-new comments. * Reformatted a
2625 say-something-useful comment to fit on an 80-column display.
2626 * src/freeglut_main.c: Partially (re-?)unified some of the
2627 glutMainLoopEvent() code. The only code that really needs to be
2628 system-specific is the window event handling, which in MS-WINDOWS is
2629 tucked into a separate function. In UNIX/X11, it's all spilled out
2630 into glutMainLoopEvent() for some reason.
2632 If the X11 code could be tucked into another function,
2633 glutMainLoopEvent() could be platform-independant.
2637 * src/freeglut_main.c: Moved the idle callback out of
2638 glutMainLoopEvent() and into glutMainLoop(), per discussion on the
2639 list. The code looks okay, to me, though I remain less than wholly
2640 convinced that treating idles as special cases is the best way to go.
2641 Still, a case can be made for taking "non-event" idle callbacks out of
2642 the "event loop". From an organizational perspective, I think that
2643 it's an improvement, and it fixes a bug for at least one program.
2644 * src/freeglut_menu.c: Added John's text-positioning modification.
2646 The lines that he was altering were very oddly-split, so while I was
2647 at it, I repaired the line-break damage.
2648 * src/freeglut_joystick.c: Committed change from Nigel to fix the
2649 joystick bug. (The joystick code was not setting the GLUT window prior
2650 to calling callbacks.)
2652 Please verify. If so, this closes out, I think, the latter half of
2653 that bug report, so anyone with the means to modify/close bug reports
2654 should do so upon verification of the fix.
2655 * src/freeglut_main.c: Superficial cleanup of the code. Mostly taking
2660 /* * <Enslish recapituation of the single following C statement> */
2661 <single C statement>
2665 ... <single C statement>
2667 freeglut_main.c still has a lot of that in it, but it looks a bit
2669 * src/freeglut_init.c: Added some error-checking (particularly w.r.t.
2672 Deleted numerous 4-line "padding" sequences of C-as-English trans-
2673 literation comments.
2675 Re-indented some (but not all) code that is using 2-space indentation.
2676 (Most of the freeglut code seems to be using 4-space indentation.)
2678 I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
2679 filled with a ton of over-long lines and also appears to be in more
2680 flux than the rest of the code. (Well, I added one error-check to a
2682 * src/freeglut_font.c: Removed two more bogus "carriage return"
2683 references where the comments were in fact talking about a line feed
2684 (a.k.a. newline, LF, ^J, \n, ...).
2685 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
2686 Fixed the buglet about failing to report the program's name on error-
2687 messages. Please test. (Modified glutInit(), the state structure, and
2688 the warn/err functions.)
2690 2003-10-23 James Jones <puggles@users.sourceforge.net>
2692 * ChangeLog: Released 2.0.1
2694 2003-10-21 Christopher John Purnell
2696 * configure.in, include/GL/Makefile.am, include/GL/freeglut.h,
2697 include/GL/freeglut_std.h, include/GL/glut.h,
2698 progs/demos/Fractals/Makefile.am,
2699 progs/demos/Fractals_random/Makefile.am,
2700 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2701 src/Makefile.am: Added --disable-replace-glut option to autoconf
2704 2003-10-15 James Jones <puggles@users.sourceforge.net>
2706 * NEWS: Noted the release of 2.0.0
2707 * configure.in: Version bump
2711 * src/freeglut_font.c: Swept the freeglut_font.c for comment cleanup: *
2712 Got rid of the "rewrite C as English" comments. * Corrected several
2713 bogus references to "carriage returns" (in strings). The symbols were
2714 newlines or EOLs or LFs (\n). They were *not* carriage returns or CRs
2715 (\r). * Clarified the comments on glBitmap() calls.
2719 * progs/demos/Fractals/fractals.c,
2720 progs/demos/Fractals_random/fractals_random.c: Small bug-fix that's
2723 Modified the two Fractals* demos so that they only clear (for the
2724 random one) or redraw (for the non-random one) if there is need to do
2725 so. (E.g., pressing the space bar should not clear and redraw the
2726 random fractal since no parameters are altered.)
2727 * src/freeglut_cursor.c, src/freeglut_display.c: Removed the obsolete
2728 hack (or very ill-conceived dream), fgDisplayCursor().
2729 * src/freeglut_display.c: Cleaned up some of the style issues (mostly
2730 "fluff" comments) in freeglut_display.c.
2731 * src/freeglut_cursor.c: Comment-cleaning sweep.
2733 Mostly got rid of the say-it-in-English comments that were adding 1
2734 line of English and 2 or 3 lines of filler for each of several lines
2735 of C code. Updated a couple of other comments, and tweaked some
2737 * src/freeglut_callbacks.c: Cleaned up the comments a bit in the
2738 callbacks.c file (mostly removed some of the
2739 kill-4-lines-to-translate-one-line-of-C-into-English comments).
2743 * src/freeglut_cursor.c: Added all missing GLUT cursor types for X11.
2745 (Type NONE is not properly supported, yet.)
2747 Corrected behavior for the several old types: * Wrong glyphs. *
2748 Reversed glyphs (left/right confusion!)
2750 There are some remaining imperfections, but it's a lot closer to GLUT
2755 * src/freeglut_callbacks.c: Three tidying-up changes to the code of
2756 freeglut_callbacks.c; none of them are Earth-shattering, but as I
2757 swept through looking somewhat more systematically for errors, I
2758 picked these off. See the diff's for details.
2759 * src/freeglut_callbacks.c: Fixed a basic readability/style error in the
2760 code. (Two statements per line are almost never a good idea; in this
2761 case the combined line was past 80 columns.)
2762 * src/freeglut_callbacks.c: Added a safety-check on a memory allocation.
2763 (Timers were using dynamic memory allocation but NOT checking the
2765 * src/freeglut_menu.c: Committed two lines from John to help fix the
2767 * src/freeglut_callbacks.c: Check the glutDisplayFunc() callback for
2768 being a NULL pointer. This is illegal and is disallowed in GLUT 3.0+,
2769 so we disallow it too in freeglut 2.0.1+
2773 * progs/demos/Fractals/fractals.c,
2774 progs/demos/Fractals_random/fractals_random.c: Applied John's updated
2775 ReadConfigFile() changes to the fractals demos.
2776 * progs/demos/Fractals_random/fractals_random.c: Fixed: * glutInit()
2777 ordering w.r.t. glutInit*() and {argv} processing. * Aspect ratio. *
2778 Removed depth-buffer usage. (Also done for Fractals in previous
2780 * progs/demos/Fractals/fractals.c: A few minor changes: * glutInit*()
2781 calls should preceed glutInit(), per se, generally. This is so that
2782 glutInit()'s configuration (which picks up on user parameters) can
2783 override application defaults. * glutInit() should be called before
2784 ANY attempt to process {argv, argc}. This is because there may be
2785 GLUT/freeglut parameters (such as "-display" on X11). * If the window
2786 is tall and skinny, rather than short and squat, we need to handle
2787 aspect ratios differently.
2789 The first is a user-interface bug. The second is a serious bug
2790 (especially since the demo assumes that argv[1] contains a filename).
2791 The third is a display bug.
2795 * src/freeglut_main.c: Changed CreateNotify (in X11 ONLY) to act like a
2796 ConfigureNotify event.
2798 This is done so that subwindows on X11 will get "resize" events when
2799 they are created. Old GLUT did this---presumably by design in order to
2800 ensure that (a) All windows get notified of their size as soon as the
2801 window exists, and (b) probably more importantly, so that windows and
2802 sub-windows behave as much alike as possible. I believe that GLUT was
2803 right to do this, and I believe that compatibility requires this (I
2804 have a sample program that breaks in freeglut but not GLUT without
2807 I did not touch the Microsoft side, because I don't know what their OS
2808 does---nor if old GLUT was historically system-dependant about this.
2810 2003-10-08 Eric Sandall
2812 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:217,519,532: Fix menus
2813 to stay in the window (John Fay)
2817 * src/freeglut_menu.c: Several updates from John and myself.
2819 The broad outlines are:
2821 * Color schemes are now in variables, are closer to old GLUT, and are
2822 system dependant (as old GLUT did). * You can change the font to any
2823 bitmapped font more easily, which can aid in finding a better
2824 approximation. (Old GLUT does not seem to have used a GLUT font for
2825 the menus, which causes problems for us.) The menus rescale
2826 automatically, including the triangle "arrow" for sub-menus. * Menus
2827 have real borders, and the placement of highlighting is much improved.
2828 * src/freeglut_main.c: Fixed a bug in the menu callback behavior. Menus
2829 were not setting the current window correctly.
2831 2003-10-06 Eric Sandall
2833 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:328 Fix submenu
2836 2003-10-04 James Jones <puggles@users.sourceforge.net>
2838 * ChangeLog, src/freeglut_main.c, src/freeglut_structure.c: Tweaking for
2839 menu behavior in Linux regarding mouse whatnot - John Fay
2843 * src/freeglut_joystick.c: Applied a patch from "extraeme@netbsd.org" to
2844 add joystick support. Untested, but it compiles for me.
2846 Should also add Joystick support for older FreeBSD systems. Also
2848 * src/freeglut_main.c: Added support for more arbitrary number of mouse
2849 buttons (though only the first three can work with menus), in X. This
2850 closes a compatibility gap with old GLUT, and leaves us the option of
2851 supporting scroll-wheels properly.
2853 2003-09-27 Christopher John Purnell
2855 * progs/demos/Fractals/Makefile.am,
2856 progs/demos/Fractals_random/Makefile.am,
2857 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Don't
2860 2003-09-26 James Jones <puggles@users.sourceforge.net>
2862 * progs/demos/Makefile.am: Package the demos.dsw file.
2863 * progs/demos/demos.dsw: Demos workspace for MSVC users
2867 * src/freeglut_main.c: Corrected a bug w.r.t. display and joystick
2868 events. When getting ready to sleep, we need to go through ALL windows
2869 to check for pending joysticks and to check for pending redisplays. I
2870 was just going through all TOP- LEVEL windows. Eeek. This won't do.
2872 2003-09-23 Brian Paul
2874 * progs/demos/Fractals_random/fractals_random.c: added needClear flag to
2875 take care of initial window clear and window resize clears
2879 * src/freeglut_init.c: Per Nigel Stewart's comments, converted
2881 #ifdef TARGET_HOST_...
2887 in src/freeglut_init.c. These changes should not have any functional
2888 impact at this time, but you don't want bad examples lying around to
2889 trip people up later.
2890 * progs/demos/Fractals_random/fractals_random.c, src/freeglut_main.c,
2891 src/freeglut_window.c: Fixed: * GLUT_SINGLE now should behave more or
2892 less correctly. Thanks to Brian Paul!
2894 * Sleeping is now cognizant of outstanding redisplays.
2896 * Fractals_random has been restored more or less to as-before, save
2897 that it uses the more minimal glFlush() rather than glutSwapBuffers().
2898 glutSwapBuffers() was only required when freeglut was incorrectly
2899 handling promotion to double-buffering.
2903 * src/freeglut_main.c: Moved the #include/#ifdef/#define stuff up to the
2906 Changed #ifdef to #if, per Nigel(?)'s comment. Ooops.
2908 2003-09-22 Christopher John Purnell
2910 * progs/demos/Fractals/Makefile.am,
2911 progs/demos/Fractals_random/Makefile.am,
2912 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Fix to
2913 allow demos to compile before freeglut has been installed.
2915 2003-09-22 James Jones <puggles@users.sourceforge.net>
2917 * progs/demos/Fractals_random/fractals_random.c: Add an idle function to
2918 ensure that the screen gets drawn even when callbacks are not
2919 generated by the mouse/keyboard.
2921 2003-09-21 James Jones <puggles@users.sourceforge.net>
2923 * progs/demos/Fractals/fractals.c,
2924 progs/demos/Fractals_random/fractals_random.c: Note the possible
2925 buffer overflow in window_title
2926 * progs/demos/Fractals/fractals.c: Fix the window title.
2927 * progs/demos/Fractals_random/fractals_random.c: Fix window title, and
2928 ensure that the random integer is not forced to be zero (Thanks
2931 2003-09-20 James Jones <puggles@users.sourceforge.net>
2933 * src/freeglut_main.c: Richard Rauch's patch to ensure that freeglut
2934 does not use 100% CPU even while idling.
2935 * src/freeglut_font.c: Resolution for bug 809561 reported by Nigel
2936 Stewart, regarding a possible array underflow error of -1 in the event
2937 of "character" being zero.
2939 2003-09-14 Christopher John Purnell
2941 * configure.in, progs/demos/Fractals/Makefile.am,
2942 progs/demos/Fractals_random/Makefile.am,
2943 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2944 src/Makefile.am: Removed unused AC_PROG_RANLIB from configure.in Added
2945 passing of $(X_CFLAGS) to compiler.
2947 2003-09-14 James Jones <puggles@users.sourceforge.net>
2949 * include/GL/glut.h: Resolve bug 806008 -- let Microsoft's compiler know
2950 to use Windows libraries even if not using our project files.
2952 2003-09-13 James Jones <puggles@users.sourceforge.net>
2954 * ChangeLog: Taking care of keeping things mostly up-to-date
2955 * TODO: Most everything's been resolved for the 2.0.0 release.
2956 * src/freeglut_joystick.c: Thierry Thomas said that FreeBSD has no
2957 machine/joystick.h, instead a sys/joystick.h. I've made the change --
2958 here's hoping it works.
2959 * progs/demos/One/one.c: Removed the incorrect relative path for
2960 including freeglut.h
2961 * progs/demos/Fractals/Makefile.am,
2962 progs/demos/Fractals_random/Makefile.am,
2963 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Made all
2964 demos compile. Thanks to Thierry Thomas for reporting bug 802809,
2965 which alerted that *none* of the demos compiled automatically!
2966 * src/freeglut_main.c: Nigel Stewart's joystick fix (for hopefully all
2967 platforms), SourceForge bug 805481
2968 * progs/demos/Lorenz/lorenz.dsp, progs/demos/One/one.dsp: Fix location
2969 of the include files from a fixed to relative path. Closes bug 805477
2970 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp, freeglutstatic.dsw:
2971 Add dos line endings. Fixes bug 805476
2973 2003-09-10 Christopher John Purnell
2975 * src/freeglut_joystick.c: A minor fix to that last commit.
2976 * src/freeglut_joystick.c: Removed some remaining glib depandancy.
2978 2003-09-10 James Jones <puggles@users.sourceforge.net>
2980 * src/freeglut_main.c: Re-add catches for the case in which a menu
2981 callback destroys the menu. - John Fay
2983 2003-09-09 Christopher John Purnell
2985 * src/freeglut_main.c: More to fix a deinitialization related crash.
2986 * src/freeglut_structure.c: Fix for a deinitialization related crash.
2988 2003-09-08 James Jones <puggles@users.sourceforge.net>
2990 * src/freeglut_main.c, src/freeglut_structure.c: Menus should deallocate
2991 better now - John Fay
2993 2003-09-05 James Jones <puggles@users.sourceforge.net>
2995 * Makefile.am: Add freeglut_static.dsp to the releases
2997 2003-09-03 Christopher John Purnell
2999 * src/freeglut_gamemode.c: Moved #ifdef for non XFree86 X11 compile.
3001 2003-09-02 Christopher John Purnell
3003 * src/freeglut_window.c: Fix to stop fgSetWindow(NULL) crashing on X11.
3005 2003-08-29 James Jones <puggles@users.sourceforge.net>
3007 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
3008 These change a bunch of assignments to calls to set the current window
3009 correctly, and also (possibly) fixes most of the remaining menu
3011 * src/freeglut_main.c: Another typecast bugfix from John Fay
3013 2003-08-28 Christopher John Purnell
3015 * src/freeglut_init.c: Changed #ifdef to #if
3017 2003-08-28 James Jones <puggles@users.sourceforge.net>
3019 * src/freeglut_font.c: change the GLUT stroke function arguments from
3020 "const char *" to "const unsigned char *" - John Fay
3021 * include/GL/freeglut_ext.h, include/GL/glut.h: Changes stroke function
3022 arguments from "const char*" to "const unsigned char *" - John Fay
3024 2003-08-28 Christopher John Purnell
3026 * freeglut-1.3: Removing files from old freeglut-1.3 directory.
3028 2003-08-28 James Jones <puggles@users.sourceforge.net>
3030 * src/freeglut_callbacks.c, src/freeglut_geometry.c,
3031 src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
3032 src/freeglut_menu.c, src/freeglut_structure.c: Casting changes, John
3035 2003-08-27 James Jones <puggles@users.sourceforge.net>
3037 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
3038 src/freeglut_menu.c: Major overhaul to the menu system, by John Fay
3040 2003-08-27 Christopher John Purnell
3042 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3043 Added double underscores to the header included macros.
3045 2003-08-20 Christopher John Purnell
3047 * src/freeglut_gamemode.c: Minor typo fix
3049 2003-08-19 Christopher John Purnell
3051 * src/freeglut_gamemode.c: Moving that "#if TARGET_HOST_UNIX_X11" to the
3054 2003-08-17 Christopher John Purnell
3056 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
3057 src/freeglut_window.c: Game mode fixes from Bernhard Kaindl and Eric
3060 2003-08-05 Christopher John Purnell
3062 * src/Makefile.am, src/freeglut_menu.c, src/freeglut_window.c,
3063 src/mwmborder.c: Using override_redirect instead of motif wm hints. It
3064 now rasies the menu windows before showing them. Move the show to
3065 after the reshape and position so we don't get a flash of the menu
3066 window at it's old size and position.
3067 * src/mwmborder.c: I suspect a lot of people will not have motif
3070 2003-08-05 Eric Sandall
3072 * ChangeLog, src/Makefile.am, src/freeglut_window.c: (98)
3073 src/Makefile.am:34 Added mwmborder.c (99) src/freeglut_window.c:67
3074 Removed #included "mwmborder.c"
3075 * ChangeLog, src/freeglut_main.c: src/freeglut_main.c:816 and :1571, set
3076 the current window (John F. Fay)
3078 2003-08-04 Christopher John Purnell
3080 * src/freeglut_state.c: Added X11 code for
3081 glutGet(GLUT_WINDOW_BORDER_WIDTH) and
3082 glutGet(GLUT_WINDOW_HEADER_HEIGHT).
3083 * src/freeglut_internal.h, src/freeglut_state.c: Replacing
3084 glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on X11 with
3085 something that works. Also a minor correction to the xf86vidmode
3088 2003-08-04 James Jones <puggles@users.sourceforge.net>
3090 * src/freeglut_window.c: Keep the X11 decoration-zapping code confined
3091 to X11-using platforms! Oops!
3092 * src/freeglut_window.c, src/mwmborder.c: Menus' decorations are removed
3093 on Linux. Not sure if we want the mwmborder.c a separate file or not;
3094 doing it separate for right now. Makefile was not updated, since the
3095 .c is just #included.
3097 2003-08-03 Christopher John Purnell
3099 * configure.in: Got rid of configure warnings when using a newer
3102 2003-08-02 Christopher John Purnell
3104 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Putting
3105 stuff back that was undone with the menu code committed.
3107 2003-08-02 James Jones <puggles@users.sourceforge.net>
3109 * src/freeglut_callbacks.c, src/freeglut_display.c,
3110 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
3111 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
3112 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
3113 Major menu changes (they appear in their own window, have own
3114 rendering context) by John Fay and a little by James C. Jones. They
3115 work perfectly on Win32, and work... on Linux.
3117 2003-08-01 Christopher John Purnell
3119 * configure.in, src/Makefile.am, src/freeglut_glutfont_definitions.c,
3120 src/freeglut_internal.h: Added autoconf detection for the xf86 vid
3123 2003-08-01 Eric Sandall
3125 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c:551 Removed
3126 extra carriage return for Windows users (John F. Fay)
3127 * ChangeLog: Credit Dave Reed for fix
3128 * ChangeLog, src/freeglut_internal.h: src/freeglut_initial.c:91 Added
3129 check for SOLARIS OS
3131 2003-07-23 Christopher John Purnell
3133 * include/GL/glut.h, src/Makefile.am, src/freeglut_font.c,
3134 src/freeglut_glutfont_definitions.c: This should put an end to the
3135 font binary compatibility issue.
3137 2003-07-23 Eric Sandall
3139 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c Windowing
3141 * ChangeLog, doc/Makefile.am: doc/Makefile.am:4 Removed trailing
3142 backslash and added an empty last line
3144 2003-07-23 Brian Paul
3146 * doc/download.html: no change, testing CVS
3148 2003-07-22 Brian Paul
3150 * doc/download.html: no change, just testing CVS
3152 2003-07-22 Eric Sandall
3154 * ChangeLog, freeglut.lsm: freeglut.lsm:3 Removed 'beta' label for next
3155 release, thanks to Bernhard Kaindl.
3157 2003-07-21 Christopher John Purnell
3159 * src/Makefile.am: The version info had the revision and the age
3162 2003-07-21 Eric Sandall
3164 * ChangeLog, src/Makefile.am: src/Makefile.am:38 Changed versioning to
3165 11:0:8 thanks to Bernhard Kaindl
3167 2003-07-17 Eric Sandall
3169 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Applied John F. Fay's
3170 fixes to freeglut.dsp and freeglut_static.dsp
3171 * ChangeLog, src/freeglut_state.c: Changed the overlay
3172 (freeglut_state.c:662) to return FALSE, as it's not imp lemented yet
3174 2003-07-12 Andreas Umbach <marvin@dataway.ch>
3176 * src/Makefile.am: renamed freeglut library to glut, bumped version info
3178 * configure.in: bumped version number to 2.0.0
3179 * Makefile.am, configure.in, doc/Makefile.am, include/GL/Makefile.am,
3180 progs/Makefile.am, progs/demos/Fractals/Makefile.am,
3181 progs/demos/Fractals_random/Makefile.am,
3182 progs/demos/Lorenz/Makefile.am, progs/demos/Makefile.am,
3183 progs/demos/One/Makefile.am, src/Makefile.am: changes for make dist
3184 * freeglut13.plg: MSVC generated file
3186 2003-07-11 Christopher John Purnell
3188 * include/GL/glut.h, src/freeglut_font.c: Fix for the font binary
3189 compatibility problem.
3191 2003-07-10 Christopher John Purnell
3193 * src/Makefile.am: Changed to build libfreeglut.so.2.0.0
3195 2003-07-10 James Jones <puggles@users.sourceforge.net>
3197 * TODO, freeglut.dsp, freeglut_static.dsp: Changes to TODO, Windows
3198 files - from John Fay
3199 * progs/demos/Fractals_random/Fractals_random.dsp: Changes by John Fay
3200 * progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c:
3201 Changes to the Fractals demo by John Fay
3202 * progs/demos/One/one.dsp: Initial project file from John Fay
3203 * progs/demos/Lorenz/lorenz.c, progs/demos/Lorenz/lorenz.dsp:
3204 Modifications from John Fay
3206 2003-07-07 Christopher John Purnell
3208 * src/freeglut_main.c: glutMainLoopEvent() was not closing windows
3209 properly. Moved call to fgCloseWindows() from glutMainLoop() to the
3210 end of glutMainLoopEvent().
3212 2003-07-03 Eric Sandall
3214 * ChangeLog, src/freeglut_misc.c: Removed unused char *ptr from
3217 2003-07-02 Christopher John Purnell
3219 * src/freeglut_main.c: It was crashing on and event for a unknown
3222 2003-07-02 Brian Paul
3224 * src/freeglut_misc.c: rewrite of glutExtensionSupported - works
3227 2003-07-02 Eric Sandall
3229 * ChangeLog: * Removed tests directory
3230 * ChangeLog, Makefile.am, configure.in, progs/demos/One,
3231 progs/demos/One/Makefile.am, progs/demos/One/one.c, tests: * Removed
3232 genfonts/genstrokes code, updated configure.in and Makefile.in
3234 * Moved tests/one.c into progs/demos/One/one.c, updated configure.in
3236 * genfonts: Removed genfonts
3238 2003-07-02 Christopher John Purnell
3240 * genfonts/to_stroke.y: Added some semicolons that yacc was warning
3243 2003-07-01 James Jones <puggles@users.sourceforge.net>
3245 * AUTHORS: John Fay commanded me to add my name to the file. He's crazy,
3248 2003-07-01 Eric Sandall
3250 * ChangeLog, src/freeglut_misc.c: Fixed the 'ptr + len' problem in
3253 2003-07-01 Brian Paul
3255 * doc/freeglut_user_interface.html: version bumps
3256 * tests/Makefile.am: bump version to 2.0
3257 * src/Makefile.am, src/freeglutdll.def: bump versions to 2.0
3258 * src/freeglut_gamemode.c: xf86VidMode error checking (Andrew
3261 2003-06-30 Brian Paul
3263 * progs/demos/Lorenz, progs/demos/Lorenz/lorenz.c,
3264 progs/demos/Lorenz/lorenz.dsp: Lorenz attractor demo (John Fay)
3265 * freeglut.dsp, freeglut_static.dsp: updates from John Fay
3267 2003-06-28 Eric Sandall
3269 * ChangeLog, include/GL/Makefile.am: Now installs freeglut_ext.h and
3270 glut.h to /usr/include/GL (was missing before)
3272 2003-06-27 Brian Paul
3274 * include/GL/freeglut_ext.h, src/freeglut_init.c,
3275 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_state.c,
3276 src/freeglut_stroke_mono_roman.c: XF86 game mode fixes, context
3277 sharing option. (John Fay)
3279 2003-06-25 Eric Sandall
3281 * ChangeLog: Added another of my changes (freeglut.kdevelop) and fixed
3282 the version number for my MS VS change (*.dsp)
3284 2003-06-25 Brian Paul
3286 * src/freeglut_internal.h: version bumps
3287 * freeglut.lsm, include/GL/glut.h, src/freeglut_stroke_mono_roman.c,
3288 src/freeglut_stroke_roman.c: Assorted version 2.0.0 updates (John
3290 * doc/freeglut_user_interface.html: updated version, italicize freeglut
3293 2003-06-25 Eric Sandall
3295 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Added 'freeglut_ext.c'
3296 to the project files 'freeglut.dsp' and 'freeglut_static.dsp' (New
3299 2003-06-24 Andreas Umbach <marvin@dataway.ch>
3301 * ChangeLog: Fixed autogen.sh and removed aclocal.m4
3302 * aclocal.m4: this file is autogenerated by aclocal
3303 * autogen.sh: fixed aclocal / autoheader order; some cosmetics
3305 2003-06-24 Eric Sandall
3307 * freeglut.kdevelop: Project file for Gideon (KDevelop 3.0)
3309 2003-06-23 Eric Sandall
3311 * ChangeLog, Makefile.am, TODO, configure.in, freeglut.dsp,
3312 freeglut.kdevprj, freeglut13.dsp, freeglut13.plg, freeglut_static.dsp,
3313 freeglutdll.dsp, src, src/Makefile.am, src/freeglut_callbacks.c,
3314 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
3315 src/freeglut_font.c, src/freeglut_font_data.c,
3316 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
3317 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
3318 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_overlay.c,
3319 src/freeglut_state.c, src/freeglut_stroke_mono_roman.c,
3320 src/freeglut_stroke_roman.c, src/freeglut_structure.c,
3321 src/freeglut_teapot.c, src/freeglut_videoresize.c,
3322 src/freeglut_window.c, src/freeglutdll.def, src/templates,
3323 src/templates/cpp_template, src/templates/header_template,
3324 tests/Makefile.am: Changed all references to the 'freeglut-1.3'
3325 directory to 'src', copied 'freeglut-1.3' to 'src' and added all files
3326 from 'src' to the repository (TODO #34).
3327 * ChangeLog: Updated ChangeLog with my aclocal.m4 change
3328 * aclocal.m4: Updated aclocal.m4 with aclocal 1.7.3 (was created with
3331 2003-06-23 Brian Paul
3333 * freeglut-1.3/freeglut_geometry.c: adjusted precision (John Fay)
3334 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3335 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3336 freeglut-1.3/freeglut_teapot.c, include/GL/freeglut_ext.h,
3337 include/GL/glut.h: Assorted updates from John Fay.
3339 2003-06-20 Eric Sandall
3341 * TODO: Updated TODO from John Fay
3343 2003-06-20 Brian Paul
3345 * progs, progs/demos, progs/demos/Fractals,
3346 progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c,
3347 progs/demos/Fractals/fractals.dat, progs/demos/Fractals_random,
3348 progs/demos/Fractals_random/Fractals_random.dsp,
3349 progs/demos/Fractals_random/fractals.dat,
3350 progs/demos/Fractals_random/fractals_random.c: Fractal demo (John Fay)
3352 2003-06-20 Eric Sandall
3354 * ChangeLog: Added the autogen.sh addition to ChangeLog
3355 * autogen.sh: Initial version of autogen.sh, tested here and creates the
3358 2003-06-20 Brian Paul
3360 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_state.c:
3361 Windows patches (Eero Pajarre)
3362 * NEWS: list the 1.4 release (fill in date) - this is a cvs check-in
3365 2003-06-19 Don Heyse <dheyse@hotmail.com>
3367 * freeglut-1.3/freeglut_joystick.c: Oops, missed the
3368 fghJoystickRawRead() fix for FreeBSD.
3370 2003-06-19 Brian Paul
3372 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3373 freeglut-1.3/freeglut_ext.c, freeglut-1.3/freeglut_internal.h,
3374 freeglut-1.3/freeglut_main.c: s/FreeGLUT/freeglut/
3376 2003-06-19 Don Heyse <dheyse@hotmail.com>
3378 * freeglut-1.3/freeglut_joystick.c: Applied tthierry's patch to fix
3379 compiling on FreeBSD.
3381 2003-06-19 Brian Paul
3383 * freeglut-1.3/freeglut_internal.h: added VERSION_MAJOR/MINOR/PATCH
3384 * doc/freeglut_user_interface.html: restore text lost from previous
3386 * include/GL/glut.h: s/FREEGLUT_VERSION_1_3/FREEGLUT_VERSION_1_4/
3388 2003-06-19 Eric Sandall
3390 * include/GL/freeglut_ext.h, include/GL/glut.h: GLUT_VERSION updates
3393 2003-06-18 Eric Sandall
3395 * AUTHORS: Forgot a file...looked so innocous just sitting there... :)
3396 * ChangeLog, doc/freeglut_user_interface.html,
3397 freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_ext.c,
3398 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_menu.c,
3399 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_teapot.c,
3400 freeglut-1.3/freeglut_window.c, include/GL/freeglut_ext.h: * Hopefully
3401 I did THIS one right (used 'cvs update' to Merge)
3403 Authors - The first update in quite a while
3405 ChangeLog - Added the recent changes
3407 freeglut_callbacks.c - Added Aleksandar Donev's menu destruction
3410 freeglut_internal.h - Added the user data to the structures and made
3411 the menu state/status callbacks window-independent
3413 freeglut_menu.c - Removed several OpenGL compiler warnings and added
3414 A. Donev's menu user data functions
3416 freeglut_structure.c - Added Aleksandar Donev's menu destruction
3419 freeglut_teapot.c - Removed or suppressed several compiler warnings
3421 freeglut_window.c - Updated the window positioning code and added A.
3422 Donev's window user data
3424 freeglut_ext.h - Added the menu destruction callback and user data
3426 * freeglut-1.3/freeglut_ext.h: * Removed freeglut_ext.h (wasn't supposed
3429 2003-06-18 Brian Paul
3431 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_internal.h,
3432 freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h,
3433 include/GL/glut.h: Added FREEGLUT_VERSION_1_3. Added GLUT_VERSION for
3434 glutGet(). Added glutGet() documentation.
3435 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_ext.h,
3436 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_internal.h,
3437 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_state.c,
3438 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3439 remove DOS-style CR characters
3440 * doc/freeglut_user_interface.html: added glutGetProcAddress and
3442 * ChangeLog: added glutGetProcAddress() and GLUT_FPS
3444 2003-06-17 Brian Paul
3446 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3447 freeglut-1.3/freeglut_internal.h: restore GLUT_FPS env var feature
3448 lost in previous check-in
3450 2003-06-17 Eric Sandall
3452 * ChangeLog: * Updated ChangeLog
3453 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: Set
3454 #4: * Fixes a couple of compiler warnings and other bugs. *
3455 freeglut_main.c: Removes a compiler warning * freeglut_structure.c:
3456 Sets the current window before calling the window closure callback *
3457 Possibly other changes
3458 * freeglut-1.3/freeglut_ext.h: * Rest of Set #3
3459 * freeglut-1.3/freeglut_state.c: Set #3: Fixes for window positioning
3461 * freeglut-1.3/freeglut_init.c: Eero Pajarre's GLUT_ICON code for
3463 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3464 freeglut-1.3/freeglut_window.c: First group of patches: Adds
3465 single-buffered rendering (or its emulation) in Windows.
3467 2003-06-17 Brian Paul
3469 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3470 freeglut-1.3/freeglut_internal.h: added GLUT_FPS env var option
3471 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_ext.c,
3472 include/GL/freeglut_ext.h: added glutGetProcAddress()
3474 2003-06-12 Don Heyse <dheyse@hotmail.com>
3476 * freeglut-1.3/freeglut_main.c: Fix the keyboard up callback and a
3478 * freeglut-1.3/freeglut_structure.c: Set the current window before
3479 calling the window closure callback.
3480 * freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h: John's
3481 window positioning corrections.
3482 * freeglut-1.3/freeglut_init.c: Eero Pajarre's icon code.
3483 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3484 freeglut-1.3/freeglut_window.c: Single buffered rendering for Windows.
3486 2003-06-02 Don Heyse <dheyse@hotmail.com>
3488 * doc/freeglut_user_interface.html: John Documented InitWindowPosition
3489 extensions and added some kbd fn info.
3490 * ChangeLog: Documented Johns changes from May 03.
3491 * freeglut-1.3/freeglut_state.c: Do not allow glutGet to reposition the
3492 window 1 pixel toward bottom right.
3493 * freeglut-1.3/freeglut_main.c: Pass mouse pos to Windows kbd callback.
3494 Resequenced a few things for UNIX.
3496 2003-03-23 Christopher John Purnell
3498 * freeglut-1.3/freeglut_gamemode.c: Applied patch to fix GameMode issues
3499 supplied by Bernhard Kaindl.
3501 2003-03-12 Don Heyse <dheyse@hotmail.com>
3503 * include/GL/glut.h: Switch to ANSI C comments.
3504 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3505 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_geometry.c,
3506 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_joystick.c,
3507 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c,
3508 freeglut-1.3/freeglut_window.c: Switch to ANSI C comments. Removed
3509 always true tests on unsigned char. Single buffering fix..
3511 2003-02-13 Don Heyse <dheyse@hotmail.com>
3513 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp: Switching to John
3514 Fays version of the VC++ project files.
3516 2003-02-08 Steve Baker <steve@sjbaker.org>
3518 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_joystick.c:
3519 Removed erroneous GPL license comments.
3521 2003-02-07 Don Heyse <dheyse@hotmail.com>
3523 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3524 freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_font_data.c,
3525 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3526 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3527 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3528 freeglut-1.3/freeglut_stroke_mono_roman.c,
3529 freeglut-1.3/freeglut_stroke_roman.c, freeglut-1.3/freeglut_teapot.c,
3530 freeglut-1.3/freeglut_videoresize.c: Moved freeglut_internal.h to the
3531 freeglut source code private directory.
3532 * freeglut-1.3/freeglut_structure.c: SubWindow border thickness fix.
3533 Overlay changes in glutGet.
3534 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3535 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_window.c: Johns
3536 changes for layers, fgSetWindow, and fgSetupPixelFormat.
3537 * freeglut-1.3/freeglut_font.c: John fixed a bug that make bitmap font
3538 one pixel wider than its drawn.
3539 * freeglut-1.3/freeglut_internal.h, include/GL/freeglut_internal.h:
3540 Moved freeglut_internal.h to the private directory with the other
3542 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3543 Broke freeglut.h into glut.h and freeglut_ext.h
3545 2003-01-06 Don Heyse <dheyse@hotmail.com>
3547 * freeglut-1.3/freeglutdll.def: Exports file for Win32 dll. One EXPORT
3548 for each FGAPI line in freeglut.h
3550 2003-01-04 Steve Baker <steve@sjbaker.org>
3552 * aclocal.m4, freeglut-1.3/freeglut_joystick.c: Cleanup joystick
3555 2002-12-10 Don Heyse <dheyse@hotmail.com>
3557 * freeglut.dsw, freeglutdll.dsp: Allow DLL and static library build on
3559 * include/GL/freeglut.h: Added check for FREEGLUT_DLL to allow static &
3560 DLL build on Windows.
3562 2002-12-04 Don Heyse <dheyse@hotmail.com>
3564 * freeglut-1.3/freeglut_font_data.c: More bitmap font spacing fixes from
3567 2002-11-29 Don Heyse <dheyse@hotmail.com>
3569 * freeglut-1.3/freeglut_init.c: Fixed Win95 crash when getenv("DISPLAY")
3571 * freeglut-1.3/freeglut_font_data.c: The lowercase t in helvetica12 was
3573 * freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c:
3574 Adjusted character spacing on a few fonts.
3575 * ChangeLog: Many updates from John Fay.
3576 * freeglutstatic.dsw: Added Visual C++ 6 Static library project for John
3579 2002-11-28 Don Heyse <dheyse@hotmail.com>
3581 * freeglut.dsp: Visual C++ 6 project file for static freeglut lib.
3582 * include/GL/freeglut.h, include/GL/freeglut_internal.h: Many updates
3583 from John Fay. (freeglut.h may need a small change to allow Win32 DLL
3585 * freeglut-1.3/freeglut_geometry.c: Many updates from John Fay.
3586 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3587 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3588 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3589 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3590 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3591 freeglut-1.3/freeglut_stroke_mono_roman.c,
3592 freeglut-1.3/freeglut_stroke_roman.c,
3593 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3594 Many updates from John Fay.
3595 * freeglut-1.3/freeglut_joystick.c: Fixes from freeglut_portable patch.
3596 Memory leak fix from John. Return_if_fail fix.
3598 2002-11-26 Don Heyse <dheyse@hotmail.com>
3600 * doc/freeglut_user_interface.html: Added on behalf of John Fay.
3602 2002-10-22 Don Heyse <dheyse@hotmail.com>
3604 * freeglut-1.3/freeglut_geometry.c: Implemented tetrahedra, octahedra,
3605 dodecahedra, and icosahedra. Checked in on behalf of John F. Fay
3606 <john.fay@eglin.af.mil>.
3608 2002-05-20 Don Heyse <dheyse@hotmail.com>
3610 * freeglut-1.3/freeglut_font.c: Fixed previous fix so it compiles.
3612 2002-05-20 Christopher John Purnell
3614 * freeglut-1.3/freeglut_font.c: My bad.
3616 2002-05-18 Christopher John Purnell
3618 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_font.c,
3619 freeglut-1.3/freeglut_stroke_mono_roman.c,
3620 freeglut-1.3/freeglut_stroke_roman.c, genfonts/Roman_M.src,
3621 genfonts/lex.l, genfonts/to_stroke.y, genfonts/wfont.h,
3622 include/GL/freeglut.h, include/GL/freeglut_internal.h: Added stroke
3625 2002-05-17 Christopher John Purnell
3627 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3628 freeglut-1.3/freeglut_overlay.c, freeglut-1.3/freeglut_teapot.c,
3629 freeglut-1.3/freeglut_videoresize.c, tests/one.c: Removed some DOS
3632 2002-05-16 Christopher John Purnell
3634 * freeglut-1.3/freeglut_main.c: Removed one last glib call.
3636 2002-01-20 Steve Baker <steve@sjbaker.org>
3638 * README, freeglut-1.3/.deps/freeglut_callbacks.P,
3639 freeglut-1.3/.deps/freeglut_cursor.P,
3640 freeglut-1.3/.deps/freeglut_display.P,
3641 freeglut-1.3/.deps/freeglut_font.P,
3642 freeglut-1.3/.deps/freeglut_font_data.P,
3643 freeglut-1.3/.deps/freeglut_gamemode.P,
3644 freeglut-1.3/.deps/freeglut_geometry.P,
3645 freeglut-1.3/.deps/freeglut_init.P,
3646 freeglut-1.3/.deps/freeglut_joystick.P,
3647 freeglut-1.3/.deps/freeglut_main.P,
3648 freeglut-1.3/.deps/freeglut_menu.P,
3649 freeglut-1.3/.deps/freeglut_misc.P,
3650 freeglut-1.3/.deps/freeglut_overlay.P,
3651 freeglut-1.3/.deps/freeglut_state.P,
3652 freeglut-1.3/.deps/freeglut_structure.P,
3653 freeglut-1.3/.deps/freeglut_teapot.P: Removed a bunch of '.P' files
3654 that don't belong in the CVS archive.
3656 2001-08-05 Christopher John Purnell
3658 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_main.c,
3659 freeglut-1.3/freeglut_window.c, include/GL/freeglut_internal.h: Added
3660 keyup events code. Added missing specal keys. Made menu callbacks
3662 * freeglut-1.3/freeglut_window.c: More position tweeks.
3664 2001-08-04 Christopher John Purnell
3666 * freeglut-1.3/freeglut_main.c, include/GL/freeglut.h: Fixed redisplay
3667 bug. Fixed modifier values.
3668 * freeglut-1.3/freeglut_window.c: Improved window positioning.
3670 2001-07-30 Christopher John Purnell
3672 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: A
3675 2001-07-30 Andreas Umbach <marvin@dataway.ch>
3677 * freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_main.c: one more
3679 * include/GL/freeglut_internal.h: removed glib dependencies from win32
3680 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3681 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_window.c: -
3682 removed glib dependencies from win32 code
3684 2001-07-29 Christopher John Purnell
3686 * freeglut-1.3/freeglut_structure.c: Fixed bug list code.
3687 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3688 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3689 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3690 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3691 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3692 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3693 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c,
3694 genfonts/Makefile.am, genfonts/genfonts.c, genfonts/genstroke.c,
3695 include/GL/freeglut.h, include/GL/freeglut_internal.h: Removed glib
3697 * configure.in, freeglut-1.3/Makefile.am, genfonts/Makefile.am: The
3698 build system now looks for X.
3700 2001-07-27 Steve Baker <steve@sjbaker.org>
3702 * doc, doc/download.html, doc/freeglut.html, doc/freeglut_logo.png,
3703 doc/index.html, doc/ogl_sm.png, doc/progress.html, doc/structure.html:
3705 * genfonts/.deps, tests/.deps: Removed some more files that don't belong
3707 * configure, freeglut-1.3/Makefile, freeglut-1.3/Makefile.in,
3708 genfonts/Makefile, genfonts/Makefile.in, include/GL/Makefile,
3709 include/GL/Makefile.in, include/Makefile, include/Makefile.in,
3710 tests/Makefile, tests/Makefile.in: Removed files checked in in error.
3711 * freeglut-1.3/.deps, freeglut-1.3/.deps/freeglut_callbacks.P,
3712 freeglut-1.3/.deps/freeglut_cursor.P,
3713 freeglut-1.3/.deps/freeglut_display.P,
3714 freeglut-1.3/.deps/freeglut_font.P,
3715 freeglut-1.3/.deps/freeglut_font_data.P,
3716 freeglut-1.3/.deps/freeglut_gamemode.P,
3717 freeglut-1.3/.deps/freeglut_geometry.P,
3718 freeglut-1.3/.deps/freeglut_init.P,
3719 freeglut-1.3/.deps/freeglut_joystick.P,
3720 freeglut-1.3/.deps/freeglut_main.P,
3721 freeglut-1.3/.deps/freeglut_menu.P,
3722 freeglut-1.3/.deps/freeglut_misc.P,
3723 freeglut-1.3/.deps/freeglut_overlay.P,
3724 freeglut-1.3/.deps/freeglut_state.P,
3725 freeglut-1.3/.deps/freeglut_structure.P,
3726 freeglut-1.3/.deps/freeglut_teapot.P,
3727 freeglut-1.3/.deps/freeglut_videoresize.P,
3728 freeglut-1.3/.deps/freeglut_window.P, freeglut-1.3/Makefile,
3729 freeglut-1.3/Makefile.in: Initial revision
3730 * ., AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
3731 TODO, acconfig.h, aclocal.m4, configure, configure.in, freeglut-1.3,
3732 freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3733 freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3734 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3735 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3736 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3737 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3738 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3739 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_structure.c,
3740 freeglut-1.3/freeglut_teapot.c, freeglut-1.3/freeglut_videoresize.c,
3741 freeglut-1.3/freeglut_window.c, freeglut-1.3/templates,
3742 freeglut-1.3/templates/cpp_template,
3743 freeglut-1.3/templates/header_template, freeglut.dsw,
3744 freeglut.kdevprj, freeglut.lsm, freeglut13.dsp, freeglut13.plg,
3745 genfonts, genfonts/.deps, genfonts/.deps/genfonts.P,
3746 genfonts/.deps/genstroke.P, genfonts/Makefile, genfonts/Makefile.am,
3747 genfonts/Makefile.in, genfonts/Roman.src, genfonts/Roman_M.src,
3748 genfonts/genfonts.c, genfonts/genstroke.c, include, include/GL,
3749 include/GL/Makefile, include/GL/Makefile.am, include/GL/Makefile.in,
3750 include/GL/freeglut.h, include/GL/freeglut_internal.h,
3751 include/Makefile, include/Makefile.am, include/Makefile.in,
3752 install-sh, mkinstalldirs, stamp-h, stamp-h.in, tests, tests/.deps,
3753 tests/.deps/one.P, tests/Makefile, tests/Makefile.am,
3754 tests/Makefile.in, tests/one.c: Initial revision