1 2009-05-22 Sven Panne <sven.panne@aedion.de>
2 * include/GL/freeglut_std.h: Avoid warnings when the ATEXIT_HACK is used
3 with GCC, making the hack even uglier.
5 * include/GL/freeglut_std.h,src/freeglut_init.c,src/freeglut_internal.h,
6 src/freeglut_menu.c,src/freeglut_window.c,src/freeglutdll.def: Added the
7 ugly ATEXIT_HACK from GLUT 3.7, making freeglut binary compatible with the
8 GLUT DLLs out in the wild.
10 * src/freeglutdll.def: Removed obsolete lines. Fixed version number.
12 * freeglut_vs2008.vcproj: Use our module definition file, so we get
13 undecorated names in the resulting DLL, just like the classic GLUT DLL
16 2009-04-05 Sven Panne <sven.panne@aedion.de>
18 * Makefile.am: Added more project/workspace/... files to distribution.
19 * .cvsignore,doc/.cvsignore,include/.cvsignore,include/GL/.cvsignore,
20 progs/.cvsignore,progs/demos/.cvsignore,
21 progs/demos/CallbackMaker/.cvsignore,progs/demos/Fractals/.cvsignore,
22 progs/demos/Fractals_random/.cvsignore,progs/demos/Lorenz/.cvsignore,
23 progs/demos/One/.cvsignore,progs/demos/shapes/.cvsignore,
24 src/.cvsignore: Removed remnants of CVS.
26 2009-03-30 Sven Panne <sven.panne@aedion.de>
28 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make the example fully
31 2009-03-27 Sven Panne <sven.panne@aedion.de>
33 * progs/demos/smooth_opengl3/smooth_opengl3.c: Make Visual C happy by
34 including stddef.h and explicitly marking some literals as float.
36 2009-03-26 Sven Panne <sven.panne@aedion.de>
38 * src/freeglut_init.c,src/freeglut_input_devices.c: Unbreak the build:
39 C++ style comments are not allowed in ISO C90
41 2009-03-19 John F. Fay <john.fay.ctr@eglin.af.mil>
43 * src/freeglut_input_devices.c: Fixing "freeglut_input_devices.c" for
44 MSVS2005 and later per e-mail from Diederick Niehorster dated Thu
47 2009-03-17 John F. Fay <john.fay.ctr@eglin.af.mil>
49 * src/freeglut_init.c, src/freeglut_input_devices.c: Removing some build
50 warnings from deprecated functions for VS2008 per e-mail from
51 Diederick Niehorster dated Tue 3/10/2009
52 * freeglut_static_vs2008.vcproj, freeglut_vs2008.sln,
53 freeglut_vs2008.vcproj,
54 progs/demos/CallbackMaker/CallbackMakerStatic_vs2008.vcproj,
55 progs/demos/CallbackMaker/CallbackMaker_vs2008.vcproj,
56 progs/demos/Fractals/FractalsStatic_vs2008.vcproj,
57 progs/demos/Fractals/Fractals_vs2008.vcproj,
58 progs/demos/Fractals_random/Fractals_randomStatic_vs2008.vcproj,
59 progs/demos/Fractals_random/Fractals_random_vs2008.vcproj,
60 progs/demos/Lorenz/lorenzStatic_vs2008.vcproj,
61 progs/demos/Lorenz/lorenz_vs2008.vcproj,
62 progs/demos/One/oneStatic_vs2008.vcproj,
63 progs/demos/One/one_vs2008.vcproj, progs/demos/demos_vs2008.sln,
64 progs/demos/shapes/shapesStatic_vs2008.vcproj,
65 progs/demos/shapes/shapes_vs2008.vcproj,
66 progs/demos/smooth_opengl3/smooth_opengl3Static_vs2008.vcproj,
67 progs/demos/smooth_opengl3/smooth_opengl3_vs2008.vcproj: Adding Visual
68 Studio 2008 solution and project files
70 2009-03-16 Sven Panne <sven.panne@aedion.de>
72 * src/freeglut_init.c,src/freeglut_window.c: Set the default number of
73 samples per pixel to 4 and actually use the value set with
74 glutSetOption(GLUT_MULTISAMPLE,...) in Windows code. Previously the
75 Windows code used a hardwired value of 4 and the GLX code had a
76 default of 0, neither made much sense. Similarly, set the default
77 number of auxiliary buffers to 1 and use that value when GLUT_AUX is
78 used. Note: There latter token has the same value as GLUT_AUX1, and
79 for historical reasons we seem to have 2 APIs to set the number of
80 auxiliary buffers: Explicitly using GLUT_AUX1 ... GLUT_AUX4, and using
81 a combination of GLUT_AUX with glutSetOption. The default of 1 ensures
82 consistent behaviour in both cases.
83 * src/freeglut_state.c: Added GLUT_AUX and GLUT_MULTISAMPLE as possible
84 parameters for glutGet, making things more symmetric with
86 * src/freeglutdll.def: Added missing API entries.
88 2009-03-10 John F. Fay <john.fay.ctr@eglin.af.mil>
90 * progs/demos/demos.dsw: Adding the "smooth_opengl3" demo
92 2009-03-09 John F. Fay <john.fay.ctr@eglin.af.mil>
94 * include/GL/freeglut_std.h: Making the definition of
95 "WIN32_LEAN_AND_MEAN" conditional to enhance compatibility with GLEW
96 per suggestion by Diederick C. Niehorster in e-mail dated Mon 3/9/2009
98 * progs/demos/Fractals/fractals.c: Setting the "fractals" demo initial
99 number of levels to 4 per suggestion from Diederick C. Niehorster
100 [diederick@niehorster.eu] in e-mail dated Mon 3/9/2009 5:29 AM
102 2009-03-01 John F. Fay <john.fay.ctr@eglin.af.mil>
104 * progs/demos/CallbackMaker/CallbackMaker.c,
105 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Fixing
106 Microsoft compatibility with the new "vsnprintf" by putting an
107 underscore in front of it if WIN32 is defined but __CYGWIN__ is not
109 2009-03-01 Sven Panne <sven.panne@aedion.de>
111 * configure.ac: We do not depend on GLU anymore
112 * README.win32: Added notes for building under Cygwin
113 * src/Makefile.am: To build shared libraries on Windows, one has to
114 declare explicitly that there are no undefined symbols during linking.
115 No idea why, but this seems to be the only way to enable this on
116 Cygwin via -mno-cygwin. Hopefully this won't cause problems on other
117 platforms (which has to be tested).
118 * progs/demos/smooth_opengl3/smooth_opengl3.c: Windows fun again: Use
119 the correct calling convention for OpenGL extension entries.
121 2009-02-28 Sven Panne <sven.panne@aedion.de>
123 * progs/demos/smooth_opengl3/smooth_opengl3.c: When -mno-cygwin is used,
124 we get ancient GL headers, so be a bit more conservative.
125 * progs/demos/Fractals_random/fractals_random.c,
126 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c:
127 _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin
128 doesn't provide them.
129 * src/freeglut_window.c: Do not try to destroy a GLX context when there
130 is none, e.g. when glXCreateContextAttribsARB is not there.
131 * src/freeglut_joystick.c: Use snprintf or _snprintf instead of the
132 potentially dangerous sprintf to avoid warnings.
134 NOTE: Due to excessive use of #ifdefs, the joystick code is on the
135 border of being unmaintainable! I could only check that it compiles
136 cleanly on my Linux box. Others should test this on their platforms
137 (Windows, Mac OS X, *BSD) to make sure that nothing has been broken.
138 * progs/demos/CallbackMaker/CallbackMaker.c,
139 progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Use
140 vsnprintf instead of the potentially dangerous sprintf to avoid
141 warnings. Using snprintf directly would be a little bit more tricky,
142 because once again Microsoft decided to avoid followind standards and
143 provide _snprintf instead. We could use this, too, but this would
144 require an additional autoconf check, which I'd like to avoid, if
147 Note: If VS *still* issues warnings, but this time about vsnprintf,
148 somebody should add some pragmas or whatever is needed to shut up that
149 warning, it would be silly.
150 * progs/demos/Lorenz/lorenz.c: Position the distance message closer to
151 the middle of the window, it has been far, far off to the upper right.
152 * src/freeglut_internal.h: Synched version number with configure.ac. We
153 should better remove this redundancy and calculate this from
154 configure.ac directly.
156 2009-02-19 John F. Fay <john.fay.ctr@eglin.af.mil>
158 * progs/demos/smooth_opengl3/smooth_opengl3.dsp,
159 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Fixing the
160 DOS/Linux line ending problems in the progs/demos/smooth_opengl3
163 2009-02-18 John F. Fay <john.fay.ctr@eglin.af.mil>
165 * src/freeglut_window.c: Fixing a build error caused by a variable
166 declaration being out of place
168 2009-02-15 Sven Panne <sven.panne@aedion.de>
170 * progs/demos/smooth_opengl3/smooth_opengl3.c: Final changes to make the
171 example fully OpenGL-3.0-compliant:
173 * Use vertex attribute arrays.
175 * Use our own projection matrix.
177 * Do not use deprecated vertex/fragment shader variables.
178 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use GLSL shaders (still
179 1.20, though). Dump GL info.
180 * progs/demos/smooth_opengl3/smooth_opengl3.c: Added a commandline
181 option for 'classic' contexts. Aesthetic changes.
182 * progs/demos/smooth_opengl3/smooth_opengl3.c: Use VBOs in new example.
183 Added a few comments.
185 2009-02-14 Sven Panne <sven.panne@aedion.de>
187 * configure.ac, progs/demos/Makefile.am, progs/demos/smooth_opengl3,
188 progs/demos/smooth_opengl3/Makefile.am,
189 progs/demos/smooth_opengl3/smooth_opengl3.c,
190 progs/demos/smooth_opengl3/smooth_opengl3.dsp,
191 progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Initial version
192 of a fully OpenGL-3.0-compliant of the famous smooth.c from the Red
193 Book. What has been done already:
195 * Explicitly request a forward-compatible 3.0 context
197 * Report GL errors, if any, at a few crucial places
199 * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf
201 What remains to be done:
203 * Use vertex shaders and fragment shaders
205 * Use vertex buffer objects
207 2009-02-13 Sven Panne <sven.panne@aedion.de>
209 * README: Mention autogen.sh
210 * src/freeglut_window.c: Synchronized WGL behavior with GLX
211 implementation: Do not call the new context creation API when it is
212 not required. Fixing a bug in a previous commit on the way... :-}
213 * src/freeglut_internal.h, src/freeglut_window.c: More refactorings:
214 Removed useless return value. Simplified control structures even more.
215 * src/freeglut_window.c: Refactoring only (replace nested conditionals
216 with guard clauses), making the normal path of execution much clearer.
217 * configure.ac: We have added some API entries, so we have to update
218 library version information conforming to
219 http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
220 * autogen.sh, configure.ac: Avoid CR\LF vs. LF troubles when using
221 TortoiseSVN plus Cygwin.
222 * .: Ignore config.lt, too. It seems to be generated by recent
225 2009-02-13 John F. Fay <john.fay.ctr@eglin.af.mil>
227 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
228 Adding OpenGL 3.0 context detection for Windows per e-mail from Paul
229 Martz dated Thu 2/12/2009 9:03 AM (more or less)
231 2009-02-03 John F. Fay <john.fay.ctr@eglin.af.mil>
233 * README: Adding some instructions about building on a *nix platform to
235 * include/GL/freeglut_ext.h, src/freeglut_main.c: Removing some errant
236 tabs, fixing ticket #2137721, and adding special-key capability to
237 recognizing the NumLock, Delete, and keypad '5' keys
238 * src/freeglut_joystick.c, src/freeglut_main.c: A further response to
239 bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment
240 by Nigel Stewart on that bug report
242 2009-02-02 John F. Fay <john.fay.ctr@eglin.af.mil>
244 * src/freeglut_internal.h, src/freeglut_joystick.c: Fixing bug [ 1804696
245 ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel
248 2008-11-20 Sven Panne <sven.panne@aedion.de>
250 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Yet
251 another try to make the font definitions compile on all platforms.
253 2008-11-17 John F. Fay <john.fay.ctr@eglin.af.mil>
255 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Allowing
256 "freeglut" to compile without errors under *nix. Before this, there
257 were problems with conflicting definitions of the GLUT font
260 2008-11-06 Sven Panne <sven.panne@aedion.de>
262 * src/freeglut_main.c: Ooops, forgot one file in the previous commit
263 (fix for "--without-x").
264 * configure.ac: Use autoconf to detect gettimeofday instead of broken
267 Note: freeglut compiles under Cygwin now, even when "--without-x" is
268 used for configuration.
269 * configure.ac: We need to link against winmm under Cygwin when
270 --without-x is used to get timeBeginPeriod, timeEndPeriod, joyGetPosEx
272 * src/freeglut_window.c: Fixed first parameter of CreateWindow call,
273 used for multisampling on Windows. It compiles, but it is otherwise
276 2008-11-05 Sven Panne <sven.panne@aedion.de>
278 * src/freeglut_misc.c: Be conservative about the presence of
280 * src/freeglut_glutfont_definitions.c, src/freeglut_stroke_mono_roman.c,
281 src/freeglut_stroke_roman.c: freeglut_internal.h needs some GL types,
282 but it is not self-contained. TODO: Move freeglut.h #include into
283 freeglut_internal.h itself?
284 * src/freeglut_window.c: Removed the annoying "Unable to create direct
285 context rendering..." warning, it served no real purpose, and on some
286 platforms there simply is no such thing as a direct context.
287 * progs/demos/CallbackMaker, progs/demos/Fractals,
288 progs/demos/Fractals_random, progs/demos/Lorenz, progs/demos/One,
289 progs/demos/shapes: Ignore *.exe
290 * src/freeglut_ext.c: Handle new glutInitContext* API entries in
292 * src/freeglut_internal.h: Make freeglut compile under Cygwin, which has
293 an ancient GLX header
295 2008-11-02 Sven Panne <sven.panne@aedion.de>
297 * include/GL/freeglut_ext.h, src/freeglut_init.c,
298 src/freeglut_internal.h, src/freeglut_state.c, src/freeglut_window.c:
299 Added OpenGL 3.0 context creation API entries
301 glutInitContextVersion, glutInitContextFlags
303 and their related constants
305 GLUT_INIT_MAJOR_VERSION GLUT_INIT_MINOR_VERSION GLUT_INIT_FLAGS
307 GLUT_DEBUG GLUT_FORWARD_COMPATIBLE
309 Note that this works with GLX only currently, the glutInitContext* API
310 entries have no effect for WGL yet.
312 TODO: Centralize the context creation code for WGL (the harder part)
313 and use the new wglCreateContextAttribsARB API entry (the easy part,
314 re-use most of the GLX code).
315 * src/freeglut_window.c: Refactored GLX context creation into a single
316 function, centralizing things to be changed for OpenGL 3.0 context
317 creation and removing some cut-n-paste.
318 * src/freeglut_ext.c, src/freeglut_internal.h: Make a
319 wgl/glXGetProcAddress abstraction available internally. We will need
320 this to get the new context creation function.
321 * src/freeglut_misc.c: Do not depend on GLU, it will vanish in the
322 future, at least in its current form.
323 * src/freeglut_internal.h: Removed superfluous #includes.
324 * configure.ac: Fix for bug #1709675 ("probably not be so
325 ISO-conformant"): The C compiler flag -Werror is not used by default
326 anymore, a separate configure flag --enable-warnings-as-errors has
327 been introduced for this purpose, which is off by default.
328 * configure.ac: Added AM_PROG_CC_C_O to configure.ac, removing a warning
329 during autogen.sh. This flag seems to be necessary for per-target
330 flags (used in demo programs) nowadays.
332 2008-07-21 John F. Fay <john.fay.ctr@eglin.af.mil>
334 * configure.ac, src/Makefile.am: Implementing a patch from Jocelyn
335 Frechot (thank you, Jocelyn) that "should enable the XInput extension
336 management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
338 2008-07-10 John F. Fay <john.fay.ctr@eglin.af.mil>
340 * src/freeglut_ext.c: Adding "glutExit" to the functions in
341 "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot
342 dated Tue 7/8/2008 12:26 PM
344 2008-04-05 John F. Fay <john.fay.ctr@eglin.af.mil>
346 * src/freeglut_main.c: Adding "SC_MONITORPOWER" and other new options to
347 the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
349 2007-12-02 John F. Fay <john.fay.ctr@eglin.af.mil>
351 * include/GL/freeglut_ext.h, src/freeglut_display.c, src/freeglut_ext.c,
352 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
353 src/freeglut_state.c, src/freeglut_window.c: Adding
354 "glutFullScreenToggle" for X11 -- still needs implementation in
355 Windows (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
357 2007-12-01 John F. Fay <john.fay.ctr@eglin.af.mil>
359 * src/freeglut_window.c: Fixing the window position for asynchronous X11
360 implementations (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
362 2007-11-26 John F. Fay <john.fay.ctr@eglin.af.mil>
364 * progs/demos/Fractals/fractals.c: Making a demo program that uses
367 2007-11-12 John F. Fay <john.fay.ctr@eglin.af.mil>
369 * include/GL/freeglut_ext.h, src/freeglut_ext.c, src/freeglut_init.c,
370 src/freeglut_internal.h, src/freeglut_state.c,
371 src/freeglut_structure.c, src/freeglut_window.c: Implementing Jocelyn
372 Frechot's changes -- see e-mail of Thursday, 11/8/2007 9:12 AM.
374 2007-10-02 John F. Fay <john.fay.ctr@eglin.af.mil>
376 * src/freeglut_joystick.c: Removing more Win64 build warnings from
379 2007-09-30 John F. Fay <john.fay.ctr@eglin.af.mil>
381 * src/freeglut_main.c: Removing the final compiler warning when building
382 on Win75 -- thank you, Antonio Mattos.
384 2007-09-29 John F. Fay <john.fay.ctr@eglin.af.mil>
386 * src/freeglut_cursor.c: Removing the remaining compiler warnings from
387 the cursor code, thanks to Antonio Mattos of Brazil. The double
388 type-casting is needed because of a bug in the new MSVC; there is a
389 discussion on the web on this subject.
391 2007-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
393 * src/freeglut_cursor.c: Changing the cursor definition macro for newer
394 versions of MSVC -- thanks to "Mattos" of Brazil
395 * src/freeglut_window.c: More changes for Jocelyn Frechot's
396 multisampling changes. The library builds now. It still needs some
397 testing with sample cases under X11.
399 2007-09-23 John F. Fay <john.fay.ctr@eglin.af.mil>
401 * src/freeglut_window.c: Fixing a remaining bug in the multisampling
402 change ... there may be more ...
404 2007-09-22 John F. Fay <john.fay.ctr@eglin.af.mil>
406 * src/freeglut_internal.h, src/freeglut_state.c,
407 src/freeglut_structure.c, src/freeglut_window.c: Putting in Jocelyn
408 Frechot's X11 visual context changes. THIS WILL BREAK THE BUILD as I
409 am unable to test it on a Linux machine here. Somebody please test it
412 2007-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
414 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c:
415 Removing compiler warnings in MSVC 2005 build
416 * include/GL/freeglut_ext.h, src/freeglut_init.c: Implementing Larry
417 Ramey's "glutExit" feature (see e-mails from him on 11/9/05, 6/28/06)
419 2007-09-19 John F. Fay <john.fay.ctr@eglin.af.mil>
421 * include/GL/freeglut_std.h, src/freeglut_window.c: Implementing first
422 part of Windows version of "GLUT_CAPTIONLESS" and "GLUT_BORDERLESS"
423 per feature request "[ 1197016 ] need GLUT_CAPTIONLESS window option".
424 Needs more work; menus are slightly mispositioned, X11 version does
425 not support it, banner appears at beginning but disappears on window
426 resize. But this is a start.
427 * src/freeglut_main.c: Fixing Linux key-repeat mode bug reported in "[
428 1796845 ] Keyboard events are lost when key repeat is enabled."
429 * src/freeglut_joystick.c: Fixing a build error on SuSE described in bug
430 report "[ 1792047 ] freeglut_joystick.c error"
432 2007-09-18 John F. Fay <john.fay.ctr@eglin.af.mil>
434 * src/freeglut_window.c: Implementing feature request "[ 947118 ] Popup
435 menu is hidden under the TOPMOST window"
436 * src/freeglut_menu.c: Adding Takeshi Nishimura's Feature Request "[
437 1045202 ] Cope with a menu with many items" -- sorry it took so long.
438 * src/freeglut_window.c: Addressing Feature Request #1307049 that
439 "freeglut" should return 0 if "glutGetWindow" is called without a
440 prior call to "glutInit", rather than terminating on error.
441 * freeglut.dep, freeglut.mak, freeglut_static.dep, freeglut_static.mak:
442 Added Windows "nmake" Makefiles and dependency files for the two
443 "freeglut" projects in accordance with Feature Request #1454543
445 2007-09-16 John F. Fay <john.fay.ctr@eglin.af.mil>
447 * src/freeglut_window.c: Fixing bug #1688954, submitted in Marcy '07. I
448 changed "FREEGLUT" to _T("FREEGLUT") and nothing changed on my Windows
449 XP system. If this will allow it to work on Vista, then in it goes.
450 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
451 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
452 Fixing bug report #1052151 from October 2004.
454 2006-11-28 John F. Fay <john.fay.ctr@eglin.af.mil>
456 * FrequentlyAskedQuestions: Adding a Frequently Asked Questions file
458 2006-09-28 Joe Krahn <krahn@niehs.nih.gov>
460 * src/freeglut_state.c, src/freeglut_window.c: Removed incorrect comment
461 about internal WGL/ARB definitions. I actually had put those comments
462 in because I had meant to go back and re-check the WGL extension. But,
463 maybe locally defined extensions should be kept in a separate include
466 2006-09-27 Joe Krahn <krahn@niehs.nih.gov>
468 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
469 progs/demos/CallbackMaker/CallbackMaker.dsp,
470 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
471 progs/demos/Fractals/Fractals.dsp,
472 progs/demos/Fractals/FractalsStatic.dsp,
473 progs/demos/Fractals_random/Fractals_random.dsp,
474 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
475 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
476 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
477 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
478 progs/demos/shapes/shapesStatic.dsp: Undo svn:eol-style=CR/LF for MSVC
481 2006-09-26 Joe Krahn <krahn@niehs.nih.gov>
483 * include/GL/freeglut_std.h, src/freeglut_joystick.c,
484 src/freeglut_state.c, src/freeglut_window.c: Added
485 FREEGLUT_LIB_PRAGMAS to control MS library pragmas, and fixed NOMINMAX
487 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
488 progs/demos/CallbackMaker/CallbackMaker.dsp,
489 progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
490 progs/demos/Fractals/Fractals.dsp,
491 progs/demos/Fractals/FractalsStatic.dsp,
492 progs/demos/Fractals_random/Fractals_random.dsp,
493 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
494 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
495 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
496 progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
497 progs/demos/shapes/shapesStatic.dsp: Added svn:eol-style=CRLF property
498 to MSVC project/workspace files.
500 2006-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
502 * src/freeglut_window.c: Fixing a typo bug in the display mode checking
503 (removing multisampling if it is not supported)
505 2006-09-25 Joe Krahn <krahn@niehs.nih.gov>
507 * src/freeglut_state.c: Fixed a small mistake in the previous commit for
509 * src/freeglut_state.c: Added proper support for number of mouse buttons
510 in X11, and a keyboard in Windows CE. Also, several glutGet results
511 returning TRUE/FALSE were changed to 1/0, because the actual return
512 type is int (although they are technically the same in practice).
514 2006-09-24 Joe Krahn <krahn@niehs.nih.gov>
516 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
517 Converted Time counter to a uniform unsigned long it value. The
518 initialized flag was redundant with the main Initialized flag, and
519 conversion of timeval to milliseconds in POSIX makes the code cleaner.
520 Timeval has a longer range, but the time value is already limited by
523 2006-09-23 Joe Krahn <krahn@niehs.nih.gov>
525 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
526 Removed WindowState.IsGameMode; it is redundant with
527 Structure.GameModeWindow
529 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
531 * src/freeglut_state.c, src/freeglut_window.c: Adding support for the
532 multisampling query per bug report 1274193
533 * ChangeLog, src/freeglut_main.c: Fixing Bug #1398196 - Windows message
536 2006-09-21 Joe Krahn <krahn@niehs.nih.gov>
538 * src/freeglut_cursor.c: test (comment edited)
540 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
542 * ChangeLog, src/freeglut_init.c: Adding temporary fix to
543 "glutInitDisplayString" to ignore numerical assignments
544 * ChangeLog, src/freeglut_window.c: Adding multisampling to *nix and
545 Windows; also some other pixel format enhancements to Windows
546 * ChangeLog, progs/demos/CallbackMaker/CallbackMaker.c: Enhancing the
548 * ChangeLog, src/freeglut_cursor.c, src/freeglut_display.c,
549 src/freeglut_ext.c, src/freeglut_gamemode.c,
550 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
551 src/freeglut_input_devices.c, src/freeglut_internal.h,
552 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
553 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_teapot.c,
554 src/freeglut_teapot_data.h, src/freeglut_window.c: Joe Krahn's changes
555 to "TARGET_HOST" defined constants
556 * ChangeLog, src/freeglut_internal.h, src/freeglut_joystick.c,
557 src/freeglut_main.c, src/freeglut_window.c: Fixing two minor bugs,
559 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
560 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
561 Changing "GameMode" to "GameModeWindow ... and testing whether I can
564 2006-08-05 Sven Panne <sven.panne@aedion.de>
566 * ChangeLog, progs/demos/Fractals/fractals.c,
567 progs/demos/Fractals_random/fractals_random.c,
568 progs/demos/Lorenz/lorenz.c: Check fgets for return value to avoid
570 * freeglut.spec: Fixed typo in date
571 * freeglut.spec: Updated build requirements for SuSE 10.1
573 2005-10-12 Sven Panne <sven.panne@aedion.de>
575 * ., .cvsignore: Ooops, forgot to ingore INSTALL and install-sh in
577 * ChangeLog, include/GL/freeglut_ext.h, include/GL/freeglut_std.h: Moved
578 GLUT_INIT_STATE to <GL/freeglut_ext.h>, it is not part of the original
580 * ., .cvsignore, ChangeLog, INSTALL, autogen.sh, install-sh,
581 mkinstalldirs: Simply use autoreconf in autogen.sh, it is much simpler
582 and the recommended way in the autotools documentation. Removed
583 INSTALL, install-sh and mkinstalldirs, they are either unused or
584 automatically generated by autogen.sh.
586 2005-10-06 John F. Fay <john.fay.ctr@eglin.af.mil>
588 * include/GL/freeglut_ext.h: Allowing compilation of Windows version by
589 removing DLL decorations from deprecated joystick interface extensions
590 * src/freeglut_window.c: Implementing Stereo in Windows
592 2005-09-07 Sven Panne <sven.panne@aedion.de>
594 * ChangeLog, src/Makefile.am: Use target-specific *_CPPFLAGS, not the
596 * ChangeLog, autogen.sh: Use -Wall for automake to catch some buglets,
597 deprecated stuff, etc.
599 2005-09-04 Sven Panne <sven.panne@aedion.de>
601 * ChangeLog, autogen.sh: Silenced autogen.sh
603 2005-08-31 John F. Fay <john.fay.ctr@eglin.af.mil>
605 * freeglut.rc, freeglut.tgt, freeglut.wpj, freeglut_static.tgt:
606 Necessary files for Open Watcom support
607 * src/freeglut_internal.h: Adding Open Watcom support
608 * ChangeLog, README.win32: Documenting support for Open Watcom
609 * include/GL/freeglut_std.h: Implementing WATCOM support
611 2005-07-14 Sven Panne <sven.panne@aedion.de>
613 * src/freeglut_input_devices.c: Nuked useless bit-fiddling, pointed out
614 by John. I was a bit too quick to cut-n-paste the cfmakeraw()
615 definition into our code... :-]
616 * ChangeLog, src/freeglutdll.def: Synched the DLL definitions with
618 * ChangeLog, src/freeglut_cursor.c: Fixed the GLUT_CURSOR_INHERIT logic
621 Note that this commit is untested, but at least it looks better than
622 before. We really a need a cursor test program.
624 2005-07-13 John F. Fay <john.fay.ctr@eglin.af.mil>
626 * src/freeglut_cursor.c: Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
628 2005-07-13 Sven Panne <sven.panne@aedion.de>
630 * ChangeLog, configure.ac: Improve autoconf magic: To detect headers
631 like GL/gl.h, it might be necessary to temporarily use the X11 flags
632 found by AC_PATH_XTRA.
633 * ChangeLog, src/freeglut_joystick.c: Avoid gcc warnings for some
634 joystick code (e.g. on Solaris).
635 * src/freeglut_input_devices.c: Tiny cleanup only...
636 * ChangeLog, src/freeglut_input_devices.c: Solaris doesn't have
637 cfmakeraw, but it is only a convenience function for some
638 bit-fiddling, anyway.
640 2005-07-08 Sven Panne <sven.panne@aedion.de>
642 * ChangeLog, include/GL/freeglut_ext.h, src/freeglut_ext.c,
643 src/freeglut_internal.h: Made all the "glutJoystickXXX" functions part
644 of the freeglut extensions. If this is not what we want, we can easily
645 #ifdef this away again...
646 * ChangeLog, src/freeglut_geometry.c: Made a few global arrays "static",
647 avoiding namespace pollution. The only externally visible symbols
648 should either be from the GLUT API ("glutXXX") or internal freeglut
649 entities ("fgYYY"). Reformatted things a bit on the way.
651 2005-07-06 Sven Panne <sven.panne@aedion.de>
653 * ChangeLog, src/freeglut_main.c: We only have pending redisplay
654 callbacks when the window wants to be redisplayed *and* it is visible.
655 Otherwise we won't redraw, anyway, and immediately discover that
656 there's still something to do, etc. etc., leading to 100% CPU load.
657 * ChangeLog, src/freeglut_main.c: Removed redundant code.
658 * ChangeLog, src/freeglut_init.c: X11 only: Destroy the global menu
659 rendering context when deinitializing. The visual/context handling for
660 menus is still rather obscure, though...
661 * progs/demos/Lorenz/lorenz.c: Reverting previous commit: %lf is a valid
662 format specifier for the scanf familiy of functions only, not for the
665 2005-07-05 John F. Fay <john.fay.ctr@eglin.af.mil>
667 * src/freeglut_main.c: Implementing the new menu context variable names
669 * src/freeglut_internal.h: Changing a comment ... nothing big.
670 * progs/demos/Lorenz/lorenz.c: Fixing output formats ... nothing big
672 2005-07-05 Sven Panne <sven.panne@aedion.de>
674 * ChangeLog, src/freeglut_state.c, src/freeglut_window.c: X11 only: Free
675 XVisualInfo structures when they are not needed anymore, fixing a
676 space leak. Not perfect for menus yet...
677 * src/freeglut_internal.h, src/freeglut_window.c: Tiny change to make
678 grep's life easier: Rename the fields of the menu context. Not really
679 worth a ChangeLog entry...
681 IMHO it looks like we could kill the whole MenuContext stuff, it is of
682 no use currently and some things look strange, like e.g. having a
683 context per menu. The latter is not OK when a menu is attached to
686 2005-07-02 Sven Panne <sven.panne@aedion.de>
688 * ChangeLog, src/freeglut_init.c, src/freeglut_internal.h,
689 src/freeglut_main.c, src/freeglut_state.c: Handle modifiers in
690 MotionNotify events, too. This fixes bug #1227920 (glutGetModifiers
691 not set/allowed in mouse callbacks). In addition, some related cleanup
693 * ChangeLog, src/freeglut_joystick.c: Partial fixes for bug #1218900
694 (freeglut-2.4.0 on FreeBSD).
695 * ChangeLog, Makefile.am: Remove wrong "execute" bits when creating a
696 distribution. This fixes bug #961938 (Executable bit set on non exe
698 * configure.ac: Tiny cosmetic change, not worth a ChangeLog entry.
699 * ChangeLog: Added John's missing ChangeLog entry.
701 2005-07-01 John F. Fay <john.fay.ctr@eglin.af.mil>
703 * freeglut.dsp, freeglut_static.dsp: Adding the
704 \"freeglut_input_devices.c\" file to the Windows project files
706 2005-07-01 Sven Panne <sven.panne@aedion.de>
708 * ChangeLog, configure.ac, src/Makefile.am: Some steps toward
709 compilation under MinGW. Note that there are still linking troubles
711 * src/freeglut_internal.h: Fixed #ifdef for ChangeDisplaySettingsEx
713 * ChangeLog, src/freeglut_input_devices.c: Silenced a signed/unsigned
714 mismatched via a cast.
715 * ChangeLog, src/freeglut_internal.h: MinGW is lacking a prototype for
716 ChangeDisplaySettingsEx, so supply one in this case. Note that this
717 should better be handled via autoconf than via cpp.
718 * ChangeLog, Makefile.am: Removed redundant files from EXTRA_DIST.
720 2005-06-30 Sven Panne <sven.panne@aedion.de>
722 * src/freeglut_main.c: Ooops, forgot to set the current window in the
723 last commit. I'll have to test better before comitting... :-]
724 * ChangeLog, src/freeglut_main.c: When a window is iconified, only an
725 UnmapNotify is sent, not a VisibilityNotify, so we have to handle the
726 window status callback in the former case, too. This fixes bug #763442
727 (Call the visibility callback when minimizing a window).
728 * ChangeLog, src/freeglut_main.c: Cleaned up
729 CreateNotify/ConfigureNotify handling.
730 * src/freeglut_main.c: Ooops, forgot to dump a few fields in some
732 * ChangeLog, configure.ac, src/freeglut_main.c: Added --enable-debug
733 configure flag. Currently it only turns on X11 event tracing, but in
734 the future we could add more.
736 Note: freeglut_main.c could benefit from some restructuring to clean
737 up the #ifdefs and cut down the sizes of some extremely long
739 * ., .cvsignore: Ignore files generated during RPM build.
741 2005-06-23 John F. Fay <john.fay.ctr@eglin.af.mil>
743 * doc/freeglut_user_interface.html: Fixing the documentation regarding
744 callbacks and geometry shape additions
745 * progs/demos/Fractals/Fractals.dsp,
746 progs/demos/Fractals/FractalsStatic.dsp,
747 progs/demos/Fractals_random/Fractals_random.dsp,
748 progs/demos/Fractals_random/Fractals_randomStatic.dsp,
749 progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
750 progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
751 progs/demos/shapes/shapes.dsp, progs/demos/shapes/shapesStatic.dsp:
752 Adding separate static library and DLL demonstration program projects
753 * progs/demos/CallbackMaker/CallbackMaker.dsp,
754 progs/demos/CallbackMaker/CallbackMakerStatic.dsp: Adding separate
755 demo program projects for static library and DLL versions
756 * progs/demos/demos.dsw: Adding support for separate static library demo
758 * ChangeLog: Keeping current ...
759 * src/freeglut_input_devices.c: New file for Joe Krahn\'s dials input
762 2005-06-22 John F. Fay <john.fay.ctr@eglin.af.mil>
764 * src/freeglut_geometry.c: Fixing a bug in the Sierpinski sponge code
765 that made the application crash if called with number of levels < 0
766 * src/Makefile.am, src/freeglut_init.c, src/freeglut_internal.h,
767 src/freeglut_joystick.c, src/freeglut_state.c: Joe Krahn\'s input
768 (dials) device implementation.
770 2005-06-14 Sven Panne <sven.panne@aedion.de>
772 * ChangeLog, freeglut.spec: Added an RPM spec file based on the one
773 shipped with SuSE 9.3.
775 2005-06-10 James Jones <puggles@users.sourceforge.net>
777 * ChangeLog, configure.ac: Release of 2.4.0
779 2005-06-02 James Jones <puggles@users.sourceforge.net>
781 * ChangeLog, configure.ac, src/freeglut_internal.h: 2.4.0 Release
784 2005-05-26 John F. Fay <john.fay.ctr@eglin.af.mil>
786 * src/freeglut_main.c: Takeshi Nishimura\'s changes to make the Windows
787 mouse wheel/button mapping match that of X11; also fixing a typo in
788 the associated mouse callback argument list
790 2005-05-26 James Jones <puggles@users.sourceforge.net>
792 * ChangeLog, configure.ac: 2.4.0 RC4 updates
793 * src/freeglut_main.c: Fix joysticks so they are polled by their timer
794 correctly. (Dan Torop)
796 2005-05-24 Sven Panne <sven.panne@aedion.de>
798 * ChangeLog, src/freeglut_gamemode.c: The original glutEnterGameMode()
799 returns the window id of the game mode window, not TRUE/FALSE, we
800 should better follow that. Note that most man pages claim that this
801 function returns void, but this is definitely wrong.
802 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_main.c: When
803 switching to game mode under X11, no ConfigureNotify event will happen
804 and consequently no reshape callback will ever be called via the
805 normal mechanism. To fix this, note that the game mode window needs to
806 be resized and handle this before redraw.
808 2005-05-22 Sven Panne <sven.panne@aedion.de>
810 * ChangeLog, src/freeglut_ext.c: Guarantee consistency of
811 names/addresses in glutGetProcAddress by using a macro. In addition,
812 this avoids any non-constant initializer issues which might be raised
813 when using WinDoze GCCs. The additional code overhead is negligible,
814 at least for x86 (a few instructions per name).
815 * ChangeLog, configure.ac: Lowering minimum autoconf version required.
817 2005-05-20 James Jones <puggles@users.sourceforge.net>
819 * ChangeLog: Tag for 2.4.0 RC3
822 2005-05-19 Sven Panne <sven.panne@aedion.de>
824 * src/freeglut_gamemode.c: Fixed SF bug #1204256: Off-by-one error in
825 X11 mode switching. The code which changes the X11 video mode has an
826 off-by-one error, resulting in a wrong mode or segfault. I've
827 refactored the code slighty to make it hopefully clearer what's going
828 on and corrected some #ifdefs on the way. Now at least the "One" demo
830 * src/freeglut_window.c: Fixed SF bug #1204261: Mini space leak when
831 creating an X11 window (X11 text property values have to be freed
834 2005-05-18 John F. Fay <john.fay.ctr@eglin.af.mil>
836 * src/freeglut_gamemode.c: Removing a C++ comment and simplifying the
839 2005-05-17 John F. Fay <john.fay.ctr@eglin.af.mil>
841 * src/freeglut_gamemode.c: Misiek\'s changes to fix Game Mode--getting
842 display settings under Windows and setting the window size correctly
843 on all operating systems.
845 2005-05-16 James Jones <puggles@users.sourceforge.net>
847 * ChangeLog: Mark for 2.4 RC 2
849 2005-05-13 John F. Fay <john.fay.ctr@eglin.af.mil>
851 * src/freeglut_menu.c: Removing two unused variables so this will
852 compile on Linux with -Wall
854 2005-05-12 John F. Fay <john.fay.ctr@eglin.af.mil>
856 * ChangeLog: Updating the ChangeLog ...
857 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c:
858 Takeshi Nishimura\'s menu changes--menus should now work properly. Use
859 the GLUT \"GLUTmech\" and \"walker\" demos to test them.
860 * src/freeglut_main.c: Takeshi Nishimura\'s menu fixes
862 2005-05-09 James Jones <puggles@users.sourceforge.net>
864 * ChangeLog, Makefile.am, configure.ac: Freeglut 2.4.0 Release Candidate
867 2005-05-06 Sven Panne <sven.panne@aedion.de>
869 * ChangeLog, progs/demos/shapes/shapes.c: Fixed a cuboctahedron vertex,
870 implemented wire mode for that shape.
871 * ChangeLog, progs/demos/shapes/shapes.c, src/freeglut_internal.h,
872 src/freeglut_main.c: Necessary compilation fixes for newer GCCs (e.g.
873 3.3.5, 4.0). Side effect: The shapes demo has a new 'i' key now.
875 2005-05-05 John F. Fay <john.fay.ctr@eglin.af.mil>
877 * ChangeLog: Updated the ChangeLog again ...
879 2005-05-04 John F. Fay <john.fay.ctr@eglin.af.mil>
881 * progs/demos/shapes/shapes.c: Replacing the original \"freeglut\"
882 \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many
883 thanks to the OpenGLUT community for writing it. The copyright notice
884 stays in the program.
885 * src/freeglut_main.c: Changing hard-coded constant (number of mouse
886 buttons = 3) to a \"glutDeviceGet\" call in two places under X11
887 * src/freeglutdll.def: Changing the version number from 2.0 to 2.4.0 ...
888 do we need to add any new interface functions?
889 * src/freeglut_internal.h: Removing an unused variable
890 * src/freeglut_window.c: Adding a comment on why \"freeglut\" differs
891 from GLUT in a particular way
892 * src/freeglut_joystick.c: Removing an unused function
893 * src/freeglut_init.c: Making the \"key repeat\" initialization
894 consistent with the rest of its usage; also making the
895 \"initDisplayString\" ever-so-slightly mroe general
896 * ChangeLog, TODO, src/freeglut_window.c: Updating the ChangeLog and
897 TODO files in preparation for the upcoming release
899 2005-04-29 John F. Fay <john.fay.ctr@eglin.af.mil>
901 * src/freeglut_joystick.c: Adding a \"TODO\" comment about dynamically
902 allocating joystick buttonj and axis arrays
903 * ChangeLog: Updationg the ChangeLog ...
905 2005-04-28 John F. Fay <john.fay.ctr@eglin.af.mil>
907 * README.win32: Adding a \"README.Win32\" file with instructions on how
908 to install \"freeglut\" under Windows.
909 * src/freeglut_main.c: Adding Window Exit event handling to the Windows
910 code; also adding a note that eventually it would be good to handle
911 the Window Entry event
913 2005-04-27 John F. Fay <john.fay.ctr@eglin.af.mil>
915 * src/freeglut_window.c: Fixing bug [ 1111218 ] fullscreen not working
916 Better late than never.
917 * src/freeglut_init.c: Fixing Bug Report [ 1160442 ]
918 glutGet(GLUT_ELAPSED_TIME) is too granular
920 2005-04-26 John F. Fay <john.fay.ctr@eglin.af.mil>
922 * src/freeglut_internal.h, src/freeglut_structure.c: Fixing the
923 typecasts on the callback fetches and invocations to allow
924 \"freeglut\" to compile with GCC 4.0
925 * src/freeglut_menu.c: Fixing erroneous implementation of Takeshi\'s fix
926 * src/Makefile.am: Changing include path from relative to absolute to
927 support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
928 * LISEZ_MOI: Adding \"LISEZ-MOI\", the French version of \"README\"
930 2005-04-25 John F. Fay <john.fay.ctr@eglin.af.mil>
932 * ChangeLog: Updating the ChangeLog ... it seems to be something of a
933 stepchild if we\'re not careful.
935 2005-04-22 John F. Fay <john.fay.ctr@eglin.af.mil>
937 * src/freeglut_menu.c: Yuri D\'Elia\'s changes to get the virtual
938 maximum screen extent instead of the actual screen size.
939 * src/freeglut_gamemode.c: Yuri D\'Elia\'s changes to the game mode
941 * src/freeglut_structure.c: Change a hard-coded number to a defined
942 constant and add some initializations
943 * src/freeglut_cursor.c: Removing duplicate cursor code. This and the
944 previous change (in freeglut_main.c) apparently got combined.
945 * ChangeLog: Updating the ChangeLog to reflect activity over the past
947 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
948 src/freeglut_display.c, src/freeglut_gamemode.c,
949 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
950 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
951 src/freeglut_window.c: Trying again to change \"fgStructure.Window\"
952 to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to
953 \"fgStructure.CurrentMenu\" for easier maintenance.
955 2005-04-15 John F. Fay <john.fay.ctr@eglin.af.mil>
957 * ChangeLog: Updating the ChangeLog as a means of testing pCVSc
958 * src/freeglut_internal.h: Testing!
960 2005-03-23 Brian Paul
962 * include/GL/freeglut_ext.h: added comment about AUX flags
964 2005-02-16 Brian Paul
966 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
967 src/freeglut_structure.c, src/freeglut_window.c: fixes for menus being
968 attached to multiple buttons/windows (John Fay)
969 * src/freeglut_callbacks.c: added error check (John Fay)
971 2005-02-15 Brian Paul
973 * src/freeglut_init.c, src/freeglut_window.c: AUX buffers for Windows
976 2005-02-11 Brian Paul
978 * include/GL/freeglut_ext.h, src/freeglut_init.c, src/freeglut_window.c:
979 Aux color buffer support. Pass one of GLUT_AUX[1234] to
980 glutInitDisplayMode. Only implemented/tested on GLX, not Windows.
981 * include/GL/freeglut_ext.h, src/freeglut_ext.c,
982 src/freeglut_internal.h: Fix object/function pointer inconsistencies
983 which are a problem for gcc 3.4.2. Added GLUTproc type, returned by
984 glutGetProcAddress().
986 2005-01-23 Sven Panne <sven.panne@aedion.de>
988 * configure.ac: autoconf 2.58 is enough
989 * src/freeglut_callbacks.c, src/freeglut_internal.h: Stylistic change
990 only (added "do { ... } while( 0 )" around multi-statement macros)
991 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: Testing
992 for errno.h is overkill. :-)
993 * src/freeglut_cursor.c, src/freeglut_main.c: Windows platforms only:
994 Merged some cursor-related code from John Fay (with minor changes)
996 2005-01-05 Sven Panne <sven.panne@aedion.de>
998 * src/freeglut_ext.c, src/freeglut_font.c, src/freeglut_main.c,
999 src/freeglut_state.c, src/freeglut_window.c: Hopefully removed all
1000 damage done by commits without merge
1001 * ChangeLog, src/freeglut_cursor.c: Reworked the X11 part of
1002 glutSetCursor, fixing bug #764187 (Variable mouse pointers don't work)
1003 on the way: * Use slightly more compatible cursor shapes for
1004 GLUT_CURSOR_RIGHT_ARROW and GLUT_CURSOR_LEFT_ARROW. * Refactored and
1005 fixed the erroneous code for GLUT_CURSOR_NONE. * Removed the incorrect
1006 use of XFreeCursor and use a cache of cursors instead. Cursors are
1007 never freed now, we could do this e.g. via reference countig if this
1008 is really needed. * Fixed error handling. * Unknown cursor types are
1009 an error now. * Now the window state always corresponds to the wanted
1010 cursorID, even in the case of GLUT_CURSOR_FULL_CROSSHAIR.
1012 NOTE: I am not sure where the cursor cache should really reside,
1013 currently it is simply a file-local variable.
1015 2005-01-03 Sven Panne <sven.panne@aedion.de>
1017 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1018 mode matching code, memory leaks, fullscreen), i.e. issue warnings
1019 when XF86VidModeFOO fails.
1020 * ChangeLog, src/freeglut_gamemode.c: (234) Fixed part of bug #926883
1021 (Video mode matching code, memory leaks, fullscreen): Now we first try
1022 to get an exact mode match, ignoring the refresh rate if none could be
1023 found. This way the X11 part and the WinDoze behave similarly. NOTE:
1024 We still don't behave like GLUT, because it has a wider notion of
1025 "best" match. We have to refactor and extend freeglut quite a bit to
1027 * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
1028 mode matching code, memory leaks, fullscreen), i.e. memory leak caused
1029 by not freeing the mode lines returned by XF86VidModeGetAllModeLines
1030 * ChangeLog, src/freeglut_window.c: Improved error message a bit when no
1031 suitable visual could be found (X11 only).
1032 * configure.ac, src/freeglut_internal.h, src/freeglut_main.c: autoconf'd
1034 * src/freeglut_joystick.c: Removed redundant #include
1035 * ChangeLog, configure.ac, src/freeglut_joystick.c, src/freeglut_main.c:
1036 autoconf'd <errno.h> handling and removed an unused '#include
1038 * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: autoconf'd
1039 <limits.h> and <sys/param.h> handling, removing MIN/MAX macros on the
1041 * src/freeglut_internal.h: Cosmetics.
1042 * configure.ac, src/freeglut_joystick.c: autoconf'd <fcntl.h> and
1043 <sys/ioctl.h> handling
1044 * src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c:
1045 Improved <sys/typed.h> / <unistd.h> handling as suggested by the
1047 * configure.ac, progs/demos/Lorenz/lorenz.c, src/freeglut_internal.h,
1048 src/freeglut_main.c: Fixed <sys/time.h> / <time.h> handling as
1049 suggested by the autoconf docs.
1050 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1051 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1052 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1053 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1054 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1055 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
1056 src/freeglut_structure.c, src/freeglut_teapot.c,
1057 src/freeglut_videoresize.c, src/freeglut_window.c: Moved '#include
1058 "config.h"' to freeglut_internal.h, we will need it there soon and it
1059 makes everything a bit shorter.
1060 * ChangeLog: Resurrected my recent additions which were nuked by the
1061 previous commit, adding the latest change on the way. :-(
1062 * acconfig.h: Removed acconfig.h, it is deprecated and we don't need it.
1063 * src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1064 src/freeglut_structure.c: Make it compile again with "-Wall -pedantic
1065 -Werror", redoing quite a few things I've fixed already a few days
1066 ago. Have today's commits been done by copying instead of merging? :-(
1068 2005-01-03 James Jones <puggles@users.sourceforge.net>
1070 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1071 src/freeglut_window.c: Changes remove duplicate menu code from
1072 "freeglut_window.c" and put it into one place in "freeglut_menu.c"
1073 where it belongs. - John Fay
1074 * ChangeLog: General ChangeLog Updates
1075 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1076 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1077 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1078 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1079 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1080 src/freeglut_structure.c, src/freeglut_teapot.c,
1081 src/freeglut_teapot_data.h, src/freeglut_window.c: Adding
1082 initialization checking to all GLUT interface functions and removing
1083 asserts from the rest of the code - John Fay
1085 2005-01-01 Sven Panne <sven.panne@aedion.de>
1087 * ChangeLog, src/Makefile.am: Added missing files from "src"
1088 subdirectory to dist.
1089 * AUTHORS: Synched with project member list on SourceForge
1090 * ChangeLog, Makefile.am, configure.ac: Modernized configure.ac a bit
1091 and added a rule to Makefile.am to update libtool. Note that all gcc
1092 compiler warnings are now on by default.
1093 * ChangeLog, include/GL/freeglut_std.h,
1094 progs/demos/CallbackMaker/CallbackMaker.c,
1095 progs/demos/Fractals_random/fractals_random.c,
1096 progs/demos/Lorenz/lorenz.c, progs/demos/One/one.c,
1097 src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
1098 src/freeglut_teapot_data.h: Make "gcc -Wall -pedantic -Werror" happy.
1099 * ., .cvsignore: Ignore files generated by autoscan.
1100 * ChangeLog, INSTALL, configure.ac, configure.in: Renamed "configure.in"
1101 to the officially preferred "configure.ac".
1102 * stamp-h, stamp-h.in: Removed unused stamp-h* files, configure
1103 generates them (a single stamp-h1, to be exact).
1104 * ChangeLog, Makefile.am: Added eMbedded Visual Tools project/workspace
1105 files to distribution.
1106 * ., .cvsignore: Ignore distribution tar files
1108 2004-12-31 Sven Panne <sven.panne@aedion.de>
1110 * ChangeLog, src/freeglut_main.c: Fixed first bug of #1064195 (two
1111 things when using signals): Don't issue a warning about select when a
1112 non-blocked signal was caught. This makes sense and is more compatible
1114 * ChangeLog, src/freeglut_font.c: Fixed bug #1040435 (glutBitmapString()
1116 * ChangeLog: Alas, the ChangeLog has not the usual ChangeLog format, so
1117 tell (X)Emacs about that fact.
1118 * ChangeLog, src/freeglut_window.c: Fixed bug #1045054 (KeyReleaseMask
1120 * ChangeLog, src/freeglut_state.c: Fixed bug #1087642
1121 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
1122 * ChangeLog, src/freeglut_ext.c: Fixed bug #1079530 (glutGetProcAddress
1123 and geometric objects).
1124 * ., .cvsignore, doc, doc/.cvsignore, include, include/.cvsignore,
1125 include/GL, include/GL/.cvsignore, progs, progs/.cvsignore,
1126 progs/demos, progs/demos/.cvsignore, progs/demos/CallbackMaker,
1127 progs/demos/CallbackMaker/.cvsignore, progs/demos/Fractals,
1128 progs/demos/Fractals/.cvsignore, progs/demos/Fractals_random,
1129 progs/demos/Fractals_random/.cvsignore, progs/demos/Lorenz,
1130 progs/demos/Lorenz/.cvsignore, progs/demos/One,
1131 progs/demos/One/.cvsignore, progs/demos/shapes,
1132 progs/demos/shapes/.cvsignore, src, src/.cvsignore: Improved
1135 2004-12-17 James Jones <puggles@users.sourceforge.net>
1137 * src/freeglut_cursor.c, src/freeglut_display.c,
1138 src/freeglut_internal.h, src/freeglut_menu.c, src/freeglut_misc.c,
1139 src/freeglut_window.c: Some assertion changes / removals from Dr. John
1142 2004-10-06 Brian Paul
1144 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1145 src/freeglut_joystick.c, src/freeglut_state.c: joystick init fixes
1148 2004-10-05 Brian Paul
1150 * src/freeglut_main.c: updated comments (John Fay)
1151 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_window.c:
1152 improved comments and mouse coord adjustments (John Fay)
1153 * src/freeglut_init.c: more clean-ups, fixes from John Fay
1155 2004-09-23 Brian Paul
1157 * src/freeglut_font.c, src/freeglut_stroke_mono_roman.c,
1158 src/freeglut_stroke_roman.c: font updates from John Fay
1159 * src/freeglut_main.c: more updates from John Fay
1160 * src/freeglut_geometry.c, src/freeglut_init.c: assorted updates from
1163 2004-09-15 James Jones <puggles@users.sourceforge.net>
1165 * src/freeglut_init.c: Fix to glutInit() command-line argument
1166 compaction - Patch #1027724 from takeshi2
1168 2004-09-13 Brian Paul
1170 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1171 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1172 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_state.c,
1173 src/freeglut_window.c: more updates from John Fay
1174 * src/freeglut_cursor.c, src/freeglut_gamemode.c,
1175 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
1176 src/freeglut_joystick.c, src/freeglut_main.c,
1177 src/freeglut_structure.c, src/freeglut_teapot.c,
1178 src/freeglut_window.c: some function renaming, etc (John Fay)
1180 2004-09-10 Brian Paul
1182 * src/freeglut_callbacks.c, src/freeglut_init.c,
1183 src/freeglut_internal.h, src/freeglut_main.c: joystick updates from
1185 * src/freeglut_cursor.c, src/freeglut_font_data.c,
1186 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
1187 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1188 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
1189 src/freeglut_stroke_mono_roman.c, src/freeglut_stroke_roman.c,
1190 src/freeglut_structure.c, src/freeglut_teapot.c,
1191 src/freeglut_window.c: updated comments from John Fay
1193 2004-08-11 James Jones <puggles@users.sourceforge.net>
1195 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
1196 Fix a game mode crashing bug, conditional compilation for Windows, and
1197 comment out some diagnostic prints (John Fay)
1199 2004-08-05 James Jones <puggles@users.sourceforge.net>
1201 * src/freeglut_window.c: Implements Richard Rauch's request that the
1202 warning about indirect rendering contexts be suppressed for his BSD
1204 * src/freeglut_teapot_data.h: Someone used C++ style comments in a C
1205 file... tisk tisk...
1206 * src/freeglut_font.c: Bugfix for "glutBitmapString" so that it now
1207 handles end-of-line characters properly (Richard Rauch)
1208 * README: Incremental update ... (John Fay)
1210 2004-06-29 Brian Paul
1212 * src/freeglut_structure.c: give menu windows the title 'freeglut menu'
1214 * src/freeglut_window.c: move glXMakeCurrent() to after the point where
1215 the window's title is set (helps Chromium)
1217 2004-05-13 James Jones <puggles@users.sourceforge.net>
1219 * freeglut.dsp, freeglut_static.dsp: Add one more header file to MSVC
1222 2004-05-12 James Jones <puggles@users.sourceforge.net>
1224 * include/GL/freeglut_ext.h, include/GL/freeglut_std.h: John Fay:
1225 Direct/indirect rendering context change, fix a bug that somebody
1226 reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove
1227 a false deprecation of a function.
1228 * src/freeglut_main.c: John Fay: A bug fix re: behavior of the code when
1229 the user clicks the "x" to close a window, and commentary to a message
1230 type with fixes for a Windows event processing bug.
1231 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_state.c,
1232 src/freeglut_window.c: John Fay: Implement the modified logic of the
1233 direct/indirect rendering context.
1234 * src/freeglut_font.c, src/freeglut_font_data.c: John Fay: Implement the
1235 upper end of the bitmapped fonts (beyond ASCII code 127). The fonts
1236 are very close to the GLUT fonts.
1237 * src/freeglut_teapot.c, src/freeglut_teapot_data.h: John Fay: These
1238 files implement the teapot for WINCE.
1239 * src/freeglut_internal.h: John Fay: Remove some obsolete defined
1241 * freeglut.dsp, freeglut_static.dsp: John Fay: Add
1242 "freeglut_glutfont_definitions.c" to the build and tell it to look in
1243 the "include" directory for the <GL/freeglut.h> file.
1245 2004-03-28 Steve Baker <steve@sjbaker.org>
1247 * progs/demos/shapes/shapes.c: Removed unnecessary initialisation.
1248 * progs/demos/shapes/shapes.c: Added a cullface test.
1252 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_init.c,
1253 src/freeglut_main.c: removed .cpp file (using LoadLibrary() instead)
1254 removed modified gx.h file cleaned up all // and tabs
1258 * src/freeglut_main.c: Prevent exceeding array bounds in X11 key-repeat
1263 * freeglut_evc4.vcp, src/freeglut_ext.c, src/freeglut_gx.cpp,
1264 src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c,
1265 src/freeglut_state.c, src/freeglut_window.c: replaced all tabs with 4
1266 spaces replaced all // with /* */ block fixed freeglut_gx.cpp file
1267 with #if TARGET_HOST_WINCE
1271 * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_state.c:
1272 Whitespace conversion - tabs to 4 spaces
1273 * src/freeglut_window.c: Revert X11 fgCloseWindow to 1.38 pre-offscreen
1278 * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_main.c: fixed
1279 mouse position and keyboard mapping. added c-wrapper cpp file for
1281 * freeglut_evc4.vcp, freeglut_evc4.vcw, include/GL/freeglut_std.h,
1282 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
1283 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1284 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1285 src/freeglut_state.c, src/freeglut_window.c: added support for
1286 WindowsCE (building on top of klimt)
1290 * src/freeglut_main.c: Repeat-key handling for Win32 Utilise both
1291 FreeGLUT state and per-window filtering modes
1295 * ChangeLog: Forgot to update the ChangeLog for the benefit of those who
1296 do not have CVS or Web access.
1297 * configure.in, include/GL/freeglut_ext.h, src/freeglut_internal.h,
1298 src/freeglut_window.c: Completed removal of all support for the
1299 offscreen rendering.
1301 If you wish to do offscreen supportin a portable manner, you will no
1302 longer be able to do so with current versions of freeglut.
1303 * progs/demos/Makefile.am: Removed Makefile support for the offscreen
1305 * progs/demos/One/one.c, progs/demos/offscreen: Removed offscreen demo
1310 * src/Makefile.am: Provide local include path to automake for
1315 * src/freeglut_window.c: Code formatting tweak
1316 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1317 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c:
1318 Resolution of X11 key-repeat handling
1320 glutSetKeyRepeat is global to all FreeGLUT windows in the application
1321 glutIgnoreKeyRepeat is a per-window over-ride
1323 To avoid nasty global X11 state interaction, or GLUT-style event queue
1324 filtering - the approach in FreeGLUT is to use the current key state
1325 XQueryKeymap to detect and ignore KeyRelease/KeyPress pairs that are
1329 http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
1330 http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml
1331 * src/freeglut_callbacks.c, src/freeglut_cursor.c, src/freeglut_ext.c,
1332 src/freeglut_font.c, src/freeglut_font_data.c,
1333 src/freeglut_gamemode.c, src/freeglut_geometry.c,
1334 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1335 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
1336 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1337 Stripped out tabs and end-of-line whitespace Differences are in
1342 * src/freeglut_window.c: Resolve [ 853044 ] FreeGLUT menus on Win32 in
1343 task bar and ALT-TAB list CreateWindowEx(WS_EX_TOOLWINDOW,...)
1344 extended style suppresses the popup menu window from the taskbar or
1349 * src/freeglut_init.c: ignoreKeyRepeat mode in FreeGLUT is TRUE by
1350 default For compatibility with GLUT, the mode should be FALSE by
1351 default This issues was probably undetected until now because
1352 ignoreKeyRepeat didn't yet work.
1353 * src/freeglut_main.c: Resolved bug #869765 glutIgnoreKeyRepeat() Fix
1354 (Win32) glutIgnoreKeyRepeat now behaves correctly on Win32
1355 * src/freeglut_internal.h: C++ style comment converted to C style
1357 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
1358 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
1359 src/freeglut_font_data.c, src/freeglut_gamemode.c,
1360 src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_joystick.c,
1361 src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
1362 src/freeglut_overlay.c, src/freeglut_state.c,
1363 src/freeglut_structure.c, src/freeglut_teapot.c,
1364 src/freeglut_videoresize.c, src/freeglut_window.c: Include freeglut
1365 header via <GL/freeglut.h> rather than "../include/GL/freeglut.h" This
1366 allows some additional flexibility with file layout. It should be the
1367 responsibility of the build environment, rather than at source level.
1368 This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.
1372 * src/freeglut_joystick.c: According to John F. Fay: The variable
1373 "num_axes" should be "joy->num_axes".
1377 * src/freeglut_gamemode.c: Removed nonstandard #warning constructs.
1378 Converted to XXX comments. (These are warnings about gamemode features
1379 not working the same on some systems as on others. The semantics of
1380 gamemode are dubious, since it was never formally documented, and has
1381 for a long time worked in different ways on different systems, so it
1382 is arguable that there is nothing really wrong with systems that don't
1383 support resolution-changes.)
1384 * src/freeglut_callbacks.c: Fixed the bug where glutDisplayFunc() was
1385 effectively invoking glutPostRedsiplay(). This is wrong on the face of
1386 it, and may be at root for some of the annoying "timing" issues we've
1387 had with redisplay events being called inappopriately.
1391 * progs/demos/offscreen/Makefile.am: I had rubbed the
1392 offscreen/Makefile.am off from the shapes demo. I forgot to remove a
1393 couple of references to the shapes.c and shapes.dsp (.dsw?) files.
1394 * configure.in, include/GL/freeglut_ext.h, progs/demos/Makefile.am,
1395 progs/demos/offscreen, progs/demos/offscreen/Makefile.am,
1396 progs/demos/offscreen/offscreen.c: Added "offscreen" demo, a very
1397 simple program that produces an onscreen window and, upon command,
1398 renders a similar offscreen display and writes the result to disk.
1400 Also, modified the build structure for UNIX_X11 to autobuild the demo.
1401 (Not done for WIN32 at this time.)
1403 Also, forgot to previously commit the updated freeglut_ext.h include.
1408 * src/freeglut_window.c: Minor comment adjustments.
1412 * src/freeglut_geometry.c: Refinements to comments
1416 * src/freeglut_joystick.c: Normalized the style of the new joystick a
1418 * src/freeglut_main.c: For some reason, the X "expose" event handler was
1419 *directly* calling the display handler in the client. (Okay, it was
1420 calling a function that operates on the window handle.)
1422 If you have any complexity to the display code, this can be painful to
1423 watch. I can't think of a good reason to do the display immediately,
1424 so I fixed the code to do a glutPostRedisplay().
1425 * src/freeglut_joystick.c: A commit on behalf of John (in turn, and in
1426 part, also on behalf of Thierry).
1428 * Renamed some of the old PLIB functions to have glut* prefixes. (I
1429 guess that there is some thought about exporting them to the API.)
1431 * Changes from Thierry for FreeBSD support, and/or results of testing?
1433 * I re-merged an XXX comment re. NetBSD/amd64 and propogated a comment
1434 on a duplicated #define for FreeBSD. We need the GNU autoconfig stuff
1435 to be updated by someone who groks it, now.
1439 * src/freeglut_init.c: Commit of John's tidying-up of a comment, closing
1440 out an XXX comment that I wrote. Thanks, John.
1444 * src/freeglut_window.c: ...AND a tab snuck into my changes for
1445 GLUT_OFFSCREEN support. Mea culpa.
1446 * src/freeglut_joystick.c: Removed a ^M that snuck into the #pragma for
1447 the new joystick code.
1448 * src/freeglut_window.c: Ooops. We don't want people to be able to
1449 create a subwindow of an offscreen window. (^& This is no longer
1452 (Actually, it would be nice if it would work, but I don't think that
1453 you can subwindow a pixmap in UNIX_X11, and assume that subwindowing
1454 offscreen doesn't work on WIN32, either.)
1455 * ChangeLog: Added entries for the joystick updates and the offscreen
1456 experimental support.
1457 * src/freeglut_joystick.c: Changed a couple of XXX comments. Added a new
1458 one. These all the nest of #ifs in the BSD section of the new joystick
1460 * progs/demos/CallbackMaker/CallbackMaker.c: "Heavy editing" by John to
1461 his CallbackMaker demo.
1462 * src/freeglut_joystick.c: John added a #pragma to the joystick code for
1464 * src/freeglut_internal.h, src/freeglut_window.c: Adds GLUT_OFFSCREEN as
1465 a display mode option. This includes:
1467 * Recognizing the mode when you call glutCreateWindow(). (Offscreen
1468 looks and acts like a top-level window in many ways.)
1470 * During the life of the offscreen "window", various window-management
1471 functions are modified to respect offscreen status.
1473 (Excepting reshaping windows, there is not much useful interpretation
1474 for managment of offscreen areas. Reshaping is possibly more work than
1475 it's worth to support, and GLUT specs allow us to ignore the request.)
1477 * Cleanup for "offscreen" windows is a little different than for
1480 Windows still don't start up quite ideally. Offscreen windows should
1481 probably get a reshape event, but not a display.
1485 * src/freeglut_init.c, src/freeglut_joystick.c: Big import of updated
1486 joystick code from PLIB, with permission from Steve Baker. Most of the
1487 adaptation done by John, with a little bit of testing and changes by
1488 Thierry Thomas and myself. Seems to compile on:
1490 WIN32 Red Hat LINUX FreeBSD NetBSD/amd64
1494 * src/freeglut_main.c: Close a bug whereby events can be delayed
1495 arbitrarily long if they get caught between the socket and the
1496 client-side queue on X, sometime after glutMainLoopEvent()'s loop
1497 quits and before the sleep code is invoked.
1501 * src/freeglut_main.c: Ammended a comment on fgCheckJoystickCallback().
1502 * src/freeglut_main.c: Minor style normalizations to minimize the diffs
1503 between *now* and from before John's changes. No functional changes:
1505 * Removed some hard TABs introduced. * Removed some
1506 spaces-at-end-of-line introduced. * A couple of function calls were
1509 I did this separately only because I don't like messing with other
1510 people's commits. (I don't like feeling like the style police, either,
1511 but when I mess with the commit, there's no room for reverting my
1512 interference if it is deemed undesirable...)
1513 * src/freeglut_main.c: Some changes from John.
1515 The main attraction seems to be correcting a bug with the action-on-
1520 * src/freeglut_main.c, src/freeglut_window.c: Win32 glutIconifyWindow()
1521 patch contributed by John F. Fay Restrict resize callbacks to visible
1522 windows When iconified via glutIconifyWindow(), don't pass (0,0) to
1523 resize callback Note that minimising the window via the menu or
1524 minimise button is not yet resolved.
1528 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
1529 Split a few overlong lines.
1531 Adjusted some spacing in a few spots to be more consistant with
1532 freeglut style. Including one unindented if() body.
1534 Eliminated a dead variable.
1535 * src/freeglut_joystick.c: Changed several #ifdef's to proper #if's.
1537 * src/freeglut_main.c: Hm... I thought that I committed this last night.
1540 This is Nigel's modified fgSleepForEvents(), essentially. Take 2.
1544 * include/GL/freeglut_std.h: Three supported win32 compilation
1545 environments: MSVC, Cygwin and MingW32 #pragma is specific to MS
1547 * src/freeglut_internal.h: Explicitly cast function pointer to (void *)
1548 in SET_WCB since all callbacks stored as void pointers suppress gcc
1549 -Wall -pendantic "noise"
1550 * src/freeglut_structure.c: Typesafe handling of temporary window
1551 destroy callback Move assignment out of while test, scope temporary
1552 inside loop Be explicit about assignment/comparison in if test for gcc
1553 peace of mind suppress gcc -Wall -pendantic "noise"
1554 * src/freeglut_internal.h: Three supported win32 compilation
1555 environments: MSVC, Cygwin and MingW32 The windows mmsystem header
1556 need only be included internally to freeglut strdup vs _strdup is
1557 specific to the MS compiler
1558 * src/freeglut_font.c: strlen expects (char *), rather than (unsigned
1559 char *) suppress gcc -Wall -pendantic "noise"
1560 * src/freeglut_cursor.c: Replace assignment of array to struct with
1561 field-by-field assignment suppress gcc -Wall -pendantic "noise"
1562 * src/freeglut_menu.c: glutBitmapString and glutBitmapLength expect
1563 (unsigned char *) rather than (char *) suppress gcc in -Wall
1565 * src/freeglut_joystick.c: Replace #ifdef WIN32 with #ifdef
1566 TARGET_HOST_WIN32, as per FreeGLUT convention
1567 * src/freeglut_init.c: fgState.FPSInterval is unsigned int (GLuint),
1568 environment variable GLUT_FPS can be negative
1569 * src/freeglut_window.c: OpenGL context is not made current on Win32
1570 until fgSetWindow is called. This resolves severe problems observed in
1572 * src/freeglut_window.c: #pragma message is only understood my MS
1573 compiler #if defined(_MSC_VER) .. #endif
1574 * src/freeglut_state.c: Resolve bug 864978 - GLUT_OWNS_JOYSTICK
1576 * src/freeglut_main.c: Tidy nested if/else to suppress gcc -Wall
1577 -pedantic noise gcc suggests explicit braces to avoid ambiguous `else'
1581 * progs/demos/CallbackMaker/CallbackMaker.c,
1582 progs/demos/Fractals/fractals.c,
1583 progs/demos/Fractals_random/fractals_random.c: Configuring with
1584 "--enable-warnings" broke three demos: * CallbackMaker defined, but
1585 did not use, the Joystick() function (a callback for the freeglut
1586 joystick interface). I uncommented the callback-registration. I assume
1587 that it was commented out because it was spammy. (freeglut does
1588 joysticks by polling with a timer.) Perhaps a longer interval than
1589 10ms would be advisable?
1591 * fractals.c used strcpy() without getting the prototype. Added
1592 #include <string.h> at the top.
1594 * fractals_random.c had the same problem as fractals.c.
1598 * src/freeglut_main.c: Moved the window-resize code so that it happens
1599 whenever there is a pending resize for the window, whether or not the
1600 window is visible or in need of a redisplay. The resize is now done
1601 before the visibility and need-to-redisplay checks.
1605 * src/freeglut_structure.c: Got rid of those int/ptr warnings on AMD64.
1606 (The code was casting an {int} to a pointer, and later retrieving the
1607 int by another cast. It should be safe provided that pointers are at
1608 least as big as {int}, but GCC was giving warnings on my system,
1610 * src/freeglut_main.c, src/freeglut_structure.c: Several
1611 test-on-assignment cases have been converted to stop GCC from
1612 complaining about if( a = get_a_value_for_a( ) ) type code.
1616 * src/freeglut_internal.h: Ooops, left some cruft in a comment in the
1617 header when committing the last patch. Cleaned up.
1618 * src/freeglut_callbacks.c, src/freeglut_internal.h,
1619 src/freeglut_structure.c: Wrote SET_WCB() to set a window callback.
1620 This lets us out of using the FETCH_WCB() as an lvalue (which it
1621 shouldn't, since the value of the FETCH is cast to the correct
1622 function-pointer type).
1624 2003-12-15 James Jones <puggles@users.sourceforge.net>
1626 * progs/demos/Fractals/Fractals.dsp: Change the destination directory of
1627 the debug version to "Debug" (John Fay)
1629 2003-12-13 James Jones <puggles@users.sourceforge.net>
1631 * ChangeLog: Release 2.2.0
1635 * src/freeglut_main.c, src/freeglut_window.c: Stripped out TABs that got
1638 There were no changes other than replacing about 10 to 12 TABs with a
1639 visually-suitable number of spaces, so this can probably be blindly
1640 treated as equivalent to the previous versions of the two affected
1643 2003-12-11 Christopher John Purnell
1645 * src/freeglut_internal.h, src/freeglut_structure.c: The deferred window
1646 destruction code was destroying the windows in reverse order. This
1647 cased a crash when the call to glutDestroyWindow() for a sub windows
1648 was immediately followed by a call to glutDestroyWindow() for it's
1649 parent. fgCloseWindows() would call fgDestroyWindow() for the parent
1650 first fgDestroyWindws() would recurse over the children and then
1651 fgCloseWindows() would call fgDestroyWindow() again for the child.
1653 I've replaced the single linked list with one of our two way link list
1654 structures. I've also moved it into fgStructure because that seemed
1655 the consistent thing to do.
1657 I said the the deferred windows destruction causes more problems then
1660 2003-12-11 James Jones <puggles@users.sourceforge.net>
1662 * progs/demos/CallbackMaker/Makefile.am: Include project file in the
1664 * ChangeLog: Updates for 2.2.0 RC2
1665 * progs/demos/demos.dsw: Add shapes to the Visual C workspace.
1666 * progs/demos/shapes/Makefile.am: Package the visual C project file with
1668 * configure.in: Set the version to 2.2.0
1669 * src/freeglut_gamemode.c, src/freeglut_main.c, src/freeglut_window.c:
1670 Nigel Stewart's Win32 window-sizing fix for game mode
1671 * progs/demos/One/one.c: Disable/enable lighting in the "one.c" demo
1673 * progs/demos/CallbackMaker/CallbackMaker.dsp: Add some essentials to
1674 get this program to compile (Nigel)
1675 * src/freeglut_internal.h: Update to reflect 2.2.0 release
1676 * ChangeLog: Note the release of 2.2.0 RC1
1680 * src/freeglut_structure.c, src/freeglut_window.c: John correctly
1681 observed that the initialization {OldHeight} and {OldWidth} in the
1682 window structure should be done for both windows and sub-windows, and
1683 the easiest way to do this is in the
1684 freeglut_structure.c:fgCreateWindow() code. So, transplant one line.
1688 * src/freeglut_main.c: Commit of John's change to stop an infinite-loop
1689 condition when the only windows left are freeglut menu windows, and
1690 correctly calls exit() if we drop out of the main loop without having
1691 requested any freeglut extensions to glutMainLoop() handling.
1695 * progs/demos/shapes/shapes.c, progs/demos/shapes/shapes.dsp: Two from
1698 * Updated shapes.c. I think that it's just reformatting and the
1699 addition of some comments.
1701 * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project
1702 file for building shapes on WIN32 with MSVC++.
1704 2003-12-03 Christopher John Purnell
1706 * configure.in: Added an option to enable gcc compiler warnings. I've
1707 explicitly excluded the one about adding parentheses.
1711 * src/freeglut_main.c: Touched up several comments, pointing up things
1712 that may be worth reflect- ing upon in the future.
1713 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1714 Hrm. I misunderstood the purpose of {window->State.Width} and
1715 {...Height}. Those are *not* records of the old values, but rather of
1716 the *desired* *new* values, hence it was inappropriate to use them in
1717 ConfigureNotify X11 event handling. Doing so introduced some new
1720 So, I created OldHeight and OldWidth in the window State structure,
1721 and *those* do what I require.
1723 I also stripped out the obsolete comment about getting extra/bogus
1724 reshape events. (Though I maintain that an application should be
1725 robust against them, freeglut should no longer generate them if the
1726 window has not changed size since last reported.)
1730 * src/freeglut_main.c: Changed Create/ConfigureNotify handling in
1733 * Just need to call GETWINDOW() once. Ooops. Heh. * Update
1734 {window->State} with the new size of the window. * If the window-size
1735 has NOT changed, then do NOT call the Reshape event.
1736 * src/freeglut_main.c: Added an "XXX" earmark for post-release
1737 contemplation. (The point is definitely in need of consideration, I
1738 believe, but is not immediately a major bug, so I'd rather not mess
1739 with it at the risk of postponing a release "soon".)
1740 * src/freeglut_main.c: Ensure that the time-out for sleeping is never
1742 * src/freeglut_main.c: Fixed a bug for UNIX_X11 where window reshape
1743 events were causing freeglut to mark the window as *needing* a reshape
1744 (which during general display callback handling would result in
1745 effectively a glutReshapeWindow()).
1747 The code is now system-dependant. It should be abstracted to a
1748 function, but is presently copied in two places. Sorry.
1750 Also, inverted the order of the associated if()/else check (in both
1751 WIN32 and UNIX_X11 branches) since the former "else" part was a
1752 one-line callback invocation.
1754 This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.
1756 2003-12-01 Christopher John Purnell
1758 * src/freeglut_internal.h: Added missing prototype for new list
1761 2003-11-28 Christopher John Purnell
1763 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1764 src/freeglut_structure.c: Timer optimizations. Made the list of
1765 pendinig timers ordered. Added a free list of used timer structures.
1766 * src/freeglut_callbacks.c: Timer optimizations.
1767 * src/freeglut_window.c: Fixed windows compilation problem with last
1770 2003-11-27 Christopher John Purnell
1772 * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
1773 src/freeglut_structure.c, src/freeglut_window.c: Window close fix. The
1774 default behaiour should now be the same as with glut.
1778 * src/freeglut_init.c: Added change from Nigel to have resize events
1779 cause redraw events in WIN32. Also slightly reshuffled comments to
1780 deal with line-wrap issues.
1784 * src/freeglut_main.c: John reported, and fixed, a problem that recent
1785 changes caused for the Lorenz demo (seems to be WIN32 specific).
1786 * src/freeglut_structure.c: Update from John: Removed the freeglut hack
1787 of decrementing the highst-window-ID marker when the highest window is
1788 deleted. (This was a half-way measure for an idea that was decided to
1789 be dubious in the first place.)
1790 * configure.in, progs/demos/Makefile.am, progs/demos/shapes,
1791 progs/demos/shapes/Makefile.am, progs/demos/shapes/shapes.c: Added a
1792 new demo (from Nigel) showing some of the basic GLUT geometry shapes.
1793 "shapes" is the name of the demo.
1794 * include/GL/freeglut_ext.h, src/freeglut_geometry.c: Commit of work
1797 Massive rework of the geometric primitive code. Includes a new
1798 primitive (cylinder; solid and wireframe) and corresponding update to
1799 freeglut_ext.h for the prototype.
1800 * src/freeglut_internal.h, src/freeglut_main.c,
1801 src/freeglut_structure.c: More work from John (sorry for
1804 * We forgot to bump our version number in freeglut_internal.h It is
1805 now at 2.0.2 (actually, I think that 2.1.0 might be a better choice),
1806 which is presumably going to be our next formal release. 2.0.1 is
1807 incorrectly identified as 2.0.0 in the header.
1809 * A typo in a comment has been corrected ("than"/"that").
1811 * Numerous "manual" checks for callbacks are omitted now, since
1812 INVOKE_WCB() does this for us. These were holdovers from the
1813 pre-INVOKE_WCB() days. There may be some very subtle changes in
1814 freeglut behavior, since freeglut used to test the callbacks a little
1815 earlier in some cases and may have skipped some minor things (like
1816 changes to the current window) in some special cases, otherwise. It is
1817 not believed that any documented behavior is broken, and it is
1818 unlikely---not to say impossible---that any extant applications will
1819 detect the change. It is even possible that there is no external
1820 behavioral change in freeglut.
1822 This also significantly simplifies some sections of code that used to
1823 have conditional execution. "Unconditional code is simpler code" as
1824 one of the comments used to say.
1826 * Lots of XXX commentary is now removed. Some of it was obsoleted by
1827 other changes, some by changes from John.
1828 * src/freeglut_internal.h, src/freeglut_main.c,
1829 src/freeglut_structure.c: Change from John (I removed a couple of
1830 spaces from a couple of lines in his freeglut_internal.h file where
1831 they were wrapping in EMACS; otherwise, the files are exactly as he
1834 The change unifies the WIN32 and UNIX_X11 code by defining our own
1835 window-handle-type in freeglut_internal.h. This let John rip out some
1836 #if garbage in several places. The result is clearer code.
1842 * src/freeglut_font.c, src/freeglut_geometry.c,
1843 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
1844 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
1845 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1846 src/freeglut_window.c: Numerous style normalizations from John:
1848 * Convert "return( value );" to "return value;" * Normalize spacing
1849 around semicolons. * Remove extraneous parens. * Split multi-statement
1850 lines into multiple lines. (Mostly things of the form: "if( condition
1852 * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
1853 All changes are from John, except for: (a) I re-inserted the meat of a
1854 comment that I still feel is relavent. (b) I fixed a compile-time
1855 error in the UNIX_X11 code where a variable is declared after
1856 executable code in a block without creating a new sub-block for the
1859 Changes from John include: (a) Style revision. (b) Changes to postpone
1860 the handling of window resizes.
1862 Lots of lines were changed, but I think that thos two cover the ground
1863 that he hit. See the diffs for details.
1865 2003-11-18 Christopher John Purnell
1867 * src/freeglut_cursor.c, src/freeglut_ext.c, src/freeglut_geometry.c,
1868 src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1869 src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
1870 Lots of stuff that John F. Fay pointed out. Plus some changes to
1871 remove gcc warnings.
1873 2003-11-17 Christopher John Purnell
1875 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1876 src/freeglut_state.c, src/freeglut_structure.c: Fix spelling mistake
1877 in a variable name. Added a comment for John Fay. Added the copyright
1878 notice for XParseGeometry source.
1880 2003-11-16 Christopher John Purnell
1882 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1883 src/freeglut_state.c, src/freeglut_structure.c: Made Modifers variable
1884 global as per glut classic.
1885 * src/freeglut_init.c: Removed old unused glutInitDisplayString code.
1886 Reformated new glutInitDisplayString and XParseGeometry code.
1887 * src/freeglut_init.c: Use XParseGeometry for better geometry parsing.
1888 Moved geometry parsing to after fgInitialize() so we can use the
1889 screen size to correctly calculate negative positions in the geometry
1890 string. Copied the code for XParseGeometry from the X11 sources for
1891 use in the Win32 version. freeglut now passes test1 of the glut test
1894 2003-11-15 Christopher John Purnell
1896 * src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1897 src/freeglut_main.c, src/freeglut_structure.c, src/freeglut_window.c:
1898 Removed the state variable BuildingAMenu. Instead pass a new parameter
1899 isMenu to fgCreateWindow(). Elsewhere use window->IsMenu.
1900 * src/freeglut_init.c: freeglut_assert_ready is going to have to go at
1901 some point. But for now I've moved setting fgState.Initalized to
1903 * src/freeglut_callbacks.c, src/freeglut_display.c,
1904 src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
1905 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
1906 src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
1907 src/freeglut_window.c: Replace TRUE with GL_TRUE and FALSE with
1908 GL_FALSE where the type is GLboolean.
1912 * src/freeglut_main.c, src/freeglut_menu.c: Normalized the spacing
1913 around symbols, for the most part. Ho-hum.
1915 2003-11-15 Christopher John Purnell
1917 * src/freeglut_main.c: Added a call to fgDeinitialize() before the call
1918 to exit() in fgError().
1922 * src/freeglut_joystick.c: Style normalizations to the joystick code.
1924 2003-11-15 Christopher John Purnell
1926 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
1927 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
1928 Added a new state variable "Initalized". Replaced referenced to
1929 Time.Set with this new variable where appropriate. fgElapsedTime() now
1930 set the start time if Time.Set is false. Moved
1931 glutGet(GLUT_ELAPSED_TIME) handling to before the assert.
1935 * src/freeglut_internal.h: Normalized the internal header's style a bit.
1936 * src/freeglut_init.c: Plowed one more file this morning. Still just
1937 trivial formatting issues.
1939 And I left alone the "INIT DISPLAY STRING PARSING" section, since it
1940 still appears to be in flux.
1941 * src/freeglut_font.c, src/freeglut_gamemode.c: Yet more trivial style
1944 Sorry, but that's all that I'm up to at the moment. On the plus,
1945 excepting the font_data file (which I've been skipping), up through
1946 this file, I think that the code style is pretty close to uniform.
1947 * src/freeglut_font.c: Minor style corrections.
1948 * src/freeglut_display.c: Minor spacing quibble.
1949 * src/freeglut_cursor.c: Added a brief explanatory note to the X code
1950 for GLUT_CURSOR_NONE.
1952 Corrected the indentation of a block of code.
1953 * src/freeglut_window.c: Noted one of a few cases where we do something
1954 immediately that could more efficiently be postponed, quite
1955 easily---and which GLUT promises *is* to be postponed. (It is unlikely
1956 that the difference will break any apps, but postponing should be
1959 No real change, just a comment in the code.
1963 * ChangeLog: Updated ChangeLog for the day.
1964 * include/GL/freeglut_std.h, progs/demos/One/one.c, src/freeglut_ext.c,
1965 src/freeglut_font.c: Removal of all remaining TABs in the freeglut
1966 *.[ch] files. (I missed a few in the "one" demo, it seems, and some
1967 more crept back into freeglut_(ext|font).c, presumably due to my own
1968 edits when I forgot to use the "freeglut-c-mode" in EMACS.)
1969 * progs/demos/One/one.c: Moved glutInit*() functions ahead of
1970 glutInit(). (This is proper use of glutInit() in general, since it
1971 allows the user to override settings via {argc, argv} command-line
1973 * progs/demos/One/one.c: Style normalizations: Removed CRs and hard TABs
1975 * ChangeLog, src/freeglut_structure.c: Corrected the numbering of the
1976 ChangeLog (there were two (110)s).
1978 Added entries summarizing my commits since September or late August,
1979 for the benefit of those lacking both CVS and web access.
1980 * progs/demos/demos.dsw: Added CRs to the ends of all lines in MS
1981 developer studio demos.dsw file..
1985 * src/freeglut_main.c: John's fix for the minimize/close/maximize
1986 controls no longer working. WIN32 expected us to pass the message on
1987 up the chain (or do something else with it), rather than just throwing
1988 away the event, for a certain class of events. (See the diffs for more
1991 The code is also slightly reformatted from what was previously in the
1993 * freeglut.dsp, freeglut_static.dsp,
1994 progs/demos/CallbackMaker/CallbackMaker.dsp, progs/demos/demos.dsw: A
1995 *.dsp file for CallbackMaker in the demos.
1997 Plus updated *.dsp and *.dsw files to reflect the new freeglut header
2000 NOTE: The prior version of the *.dsw file does not in fact have CRs. I
2001 thought that it did. For consistancy, I am not putting them in in this
2002 version, either. (At least one person said that his MSVC++ system is
2003 happy with the current files. If there are problems, we can easily add
2004 the CRs, but that should be a separate commit...)
2005 * configure.in, progs/demos/CallbackMaker,
2006 progs/demos/CallbackMaker/CallbackMaker.c,
2007 progs/demos/CallbackMaker/Makefile.am,
2008 progs/demos/Fractals_random/fractals_random.c,
2009 progs/demos/Makefile.am: New demo from John: CallbackMaker.
2011 This demo shows the use of every callback that you can register with
2012 freeglut, and also generates event reports so that you can see what is
2013 happening to the program as it runs.
2015 Not much to look at, but both utilitarian and a practical example.
2017 Please double-check that I updated everything that needs to be
2018 updated. I reran autogen.sh and ./configure, and it built okay for me.
2020 * src/freeglut_structure.c: Hm. I thought that I already hit this file
2021 for style normalization. Oh well... Should be no functional changes.
2022 Should be pretty close to in-line with the style of changes that I've
2023 been making else- where.
2024 * src/freeglut_structure.c: Ooops. Forgot that we already had a call to
2025 fgClearCallBacks() in the code and added a second one. I just deleted
2027 * src/freeglut_structure.c: Added Nigel's suggested code to clear all
2028 but the destroy callback early on, leaving Destroy to be cleared later
2029 after the last possible point where it should be invoked.
2030 * src/freeglut_menu.c: Modified the menus to refer to {border} rather
2031 than {FREEGLUT_MENU_BORDER}, in fghDisplayMenuBox(). The local
2032 variable was already defined and used for some purposes, so we might
2033 as well use it throughout. It does serve to shorten and clarify the
2034 code a bit---though I have mixed feelings about creating aliases that
2037 Still, the variable already existed and was already used in places.
2038 (We could even move it into the freeglut state, or make it a {const
2041 Oh well. Stuff to ponder.
2042 * src/freeglut_cursor.c: Well, a couple of days have gone by, so I
2043 assume that items (a) and (b) in the freeglut_cursor.c file's "Open
2044 issues" comment are now satisfactor- ily closed.
2046 I also partially implemented some error-checking, using my limited
2047 understanding of how Xlib users are supposed to do this. (No one
2048 commented about the lack of error-checking, pro or con. Perhaps
2049 someone will care to comment now?)
2051 At present, it just will print out a warning, via fgWarning(). In part
2052 because I'm not sure what is best to do, and in part because failure
2053 to set the cursor type is probably not a fatal problem.
2055 2003-11-08 Christopher John Purnell
2057 * progs/demos/Fractals/Makefile.am,
2058 progs/demos/Fractals_random/Makefile.am,
2059 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Applied
2060 Braden McDaniel's non-srcdir build patch.
2064 * src/freeglut_menu.c: A first pass over freeglut_menu.c to bring it in
2065 line with the rest of freeglut's style. Mostly re-indenting and
2066 splitting long lines. For those that may be concerned: No, I didn't do
2067 any more arrangments of the form (CONST == a) rather than (a ==
2069 * progs/demos/Fractals_random/fractals_random.c: Altered the way that
2070 the {random} value (from 0..3) is chosen.
2072 Previously, it picked out two adjacent bits in the result of rand().
2073 Unfortunately, these adjacent bits (at least on NetBSD) have a certain
2074 amount of dependance. After a period (perhaps a thousand or so?), it
2075 starts to repeat the pattern of those two bits. (I think; I haven't
2076 actually tested that directly.) This presumably is locking it into a
2077 an an N-way attractor on the "snowflake", such that if you zoom in a
2078 ways, you will start to see some spots *quickly* are colored, and
2079 others are *never* colored.
2081 What I've done now is to pick up two widely-spaced bits in a single
2082 rand() call. (Perhaps we would do as well to pick up something like
2083 bit #16 from two consecutive rand() calls?) These widely-spaced bits
2084 have a lower statistical dependance on one another (if I can get away
2085 with using that term for an arithmetic operation; though since stats
2086 has more to do with sampling and less to do with true randomness, I
2089 The net effect, at leats on NetBSD, is far better snowflake if you
2094 * src/freeglut_main.c: From John:
2096 [This] implements the visible/invisible for Windows. It does NOT call
2097 the visibility callback, though.
2098 * src/freeglut_main.c: Stripped out the now truly extraneous {braces} in
2101 if( ... ) { INVOKE_WCB( ... ); }
2103 Check for compiling on WIN32.
2104 * src/freeglut_internal.h: Adopted Eero Pajarre's suggestion of using a
2105 do { ... } while rather than { ... } for the INVOKE_WCB() macro. This
2106 lets it be used "more like a function", in that:
2108 if( ... ) INVOKE_WCB( ... ); else ...
2111 * src/freeglut_main.c: Pure code janitoring: Shuffled the order of some
2112 of the case statements in the UNIX_X11 X event processing loop. (In
2113 general, it's nice to have case statements sorted, especially when you
2114 have a *huge* switch statement like this. That makes it easier to find
2115 the one that you're looking for, and to see if a certain case is
2117 * src/freeglut_main.c: Combined EnterNotify and LeaveNotify event
2118 processing in the UNIX_X11 event loop.
2119 * src/freeglut_main.c: Added ReparentNotify case to UNIX_X11 event loop,
2120 to catch the extraneous ReparentNotify event types (type 21).
2121 * src/freeglut_internal.h, src/freeglut_structure.c: Oh well, I might as
2122 well add the call to clear callbacks on window destruction. Also
2123 renamed the function to do this: fgClearCallBacks(). Ho-hum.
2124 * src/freeglut_internal.h, src/freeglut_structure.c: Added
2125 fgInitCallBacks() to freeglut_structure.c. (The function takes an
2126 {SFG_Window *}.) Added prototype to freeglut_internal.h. Added use of
2127 the function to the window initialization. (Don't count on calloc(),
2128 which sets all bits to 0.)
2129 * src/freeglut_gamemode.c: Style normalization; removal of
2130 say-nothing-useful comments.
2131 * src/freeglut_font.c: Normalized the style of freeglut_font.c No
2132 substantial alterations.
2133 * src/freeglut_ext.c: Somewhat normalized the style of this file.
2135 Also moved the "glutMouseWheelFunc" extension down into the
2136 "extensions" part of the table. (Purely internal organization. It will
2138 * src/freeglut_display.c: Further normalization of the code's style. No
2139 substantial changes.
2140 * src/freeglut_cursor.c: Split one last overlong line in
2142 * src/freeglut_cursor.c: Added GLUT_CURSOR_NONE support in UNIX_X11
2143 (well, NetBSD; you lot need to try it on others; (^&).
2145 Deallocated some resources that we are creating. VERY slight memory
2146 leak, but plugged now.
2148 These two complete the first two "Open issues" ( (a) and (b) ). The
2149 first one also completes X support for glutSetCursor(). If others can
2150 verify, we can fully demote the outstanding bug over this to
2153 I'll delete the dead Open issues and re-letter the others if someone
2154 will cross-check me. Or if no one says anything in a day or two. (^&
2155 * src/freeglut_cursor.c: Further normalized the style of the cursor
2157 * src/freeglut_callbacks.c: Slight style improvements. Two rules of
2158 thumb that are almost always good to apply:
2160 * Don't write a == CONST. Instead, write CONST == a. Or, more
2161 generally (in C like languages): Avoid putting an lvalue on the
2162 left-hand side of an == comparison. (For consistancy, I try to avoid
2163 lvalues on the left- hand side of any comparison---but == is the most
2166 (An "lvalue" is a value that can safely go on the left side of an "="
2167 assignment, of course. (^&)
2169 * Do not write if( !condition ) return; other_thing; return;
2171 (See page 18 of K&P's _The Elements of Programming Style_.)
2173 Instead, it is better to just write:
2175 if( condition ) other_thing; return;
2177 There are times when sacrificing structured programming (e.g., via
2178 multiple return statements) is okay. But, here, there is no apparent
2179 gain---indeed, there seems only loss---in the non-structured code.
2180 * src/freeglut_main.c: Grr. Forgot to enable the "freeglut" C
2181 programming mode in EMACS, and had a few TABs in the last commit. This
2183 * src/freeglut_main.c: Minor corrections to the UNIX_X11 mouse-wheel
2184 support. In part this reflects that {button} is already shifted to the
2185 GLUT numbering, and hence should be counted as 3&4, 5&6, etc.
2187 The other change was simply to clarify the computation of {direction}.
2188 The original code did some clever arithmetic. The new code is more
2189 straightforward, even if it requires more lines to express.
2193 * src/freeglut_main.c: Ooops. I screwed up on part of John's fixes.
2196 I think that I have his fix properly committed now. Mea culpa.
2197 * src/freeglut_callbacks.c, src/freeglut_internal.h,
2198 src/freeglut_main.c, src/freeglut_structure.c: Cleanup pass after
2199 committing callback conversion (from structure to array-of-pointers).
2200 Mostly deleted commented-out struct-based code. Also added some XXX
2201 comments that I though should be pondered. (My own pair of eyes, and
2202 one brain cell, were not sufficient at this time to decide what to do
2203 for those ponderables. (^&)
2204 * src/freeglut_callbacks.c, src/freeglut_init.c,
2205 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
2206 src/freeglut_misc.c, src/freeglut_structure.c: Converted the
2207 "Callbacks" structure (with named members holding individual callback
2208 pointers) to a "CallBacks" array in fgState. (This is to allow us to
2209 write a loop to clear all callbacks from windows when the window is
2210 dead/dying. Using this, we can safely assign NULL to each in a loop.)
2212 Support includes two new macros, FETCH_WCB() and INVOKE_WCB(). See
2213 freeglut_internal.h for more details there.
2215 Some typedefs of function pointer types were altered to make them more
2216 uniform (necessary for the macros).
2218 All references to window-based callbacks in freeglut are updated to
2221 Old usages will cause compile-time errors.
2223 As a side bonus, the new invocation macro sets the current window and
2224 checks pointers so that these common steps can be uniformly done on
2225 every window-based callback. This makes it easier to do things right.
2226 At the same time, the array notation (and now required associated
2227 casts) make it harder to bypass the macros and abuse the function
2228 pointers, in general.
2230 After this commit, I will go through the code and clean up dangling
2231 issues about formatting. This commit is just a "it now works, let's
2232 checkpoint it" type of affair.
2233 * src/freeglut_main.c: From John, a couple of lines needed to be changed
2234 to fix the mouse wheel support on WIN32.
2235 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2236 Includes mouse button, mouse motion, and mouse wheel support.
2240 * src/freeglut_menu.c: Multiple changes from John. Style issues, plus a
2241 bug-fix to check a pointer before deallocating some memory.
2243 He also removed one obsolete comment, and added some more comments.
2244 * src/freeglut_main.c: Some changes, mostly from John. Mostly style
2247 One bug fix from John: Execution state bug-fix in glutMainLoop(), per
2250 One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
2251 {ButtonPress} is a constant.
2252 * progs/demos/Fractals_random/fractals_random.c: Per John's emailed
2253 desire to have all files obey UNIX EOL conventions, I have stripped
2254 out carriage returns from this file.
2256 This is the *only* change, but every line is touched. If you want to
2257 see the real differences between older and newer versions, you will
2258 have to get local copies of each and first match their EOL
2260 * progs/demos/Lorenz/lorenz.c: Update from John:
2262 I [John] added a feature to check for memory leaks under Windows.
2263 * progs/demos/Fractals_random/fractals_random.c: Update from John:
2265 I [John] converted everything to double precision to avoid compiler
2266 warnings. I also added a feature to check for memory leaks under
2267 Windows and removed a memory leak (surprise!).
2268 * src/freeglut_callbacks.c, src/freeglut_cursor.c,
2269 src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
2270 src/freeglut_gamemode.c, src/freeglut_geometry.c,
2271 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
2272 src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
2273 src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
2274 src/freeglut_structure.c, src/freeglut_teapot.c,
2275 src/freeglut_videoresize.c, src/freeglut_window.c: Got rid of the
2276 G_LOG_DOMAIN junk, per discussion on the mailing list.
2277 * src/freeglut_callbacks.c: Minor formatting quibbles. (The brain isn't
2278 up to anything more serious at the moment.)
2279 * src/freeglut_main.c: Missed a block where one level was 2-space
2282 Nit-picked a few other lines for consistancy.
2286 * src/freeglut_init.c: Fixed a memory leak (thanks for the correction,
2289 Smoothed over some code style issues while I was here, but left the
2290 init-string parsing alone for now.
2291 * freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw: Deleted 3 files
2292 (again?) from CVS, on John's request. Old/obsolete MSVC++ project
2293 files. (freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)
2294 * src/freeglut_main.c, src/freeglut_structure.c: * Indentation issues. *
2295 Pulled some common code into a nicely packaged function. * Found some
2297 * src/freeglut_main.c: Heh.
2299 Forgot to wrap the fgGetXModifiers() in a #if. Fixed.
2300 * src/freeglut_main.c: Extracted some common code to a subroutine, in
2301 glutMainLoopEvent(). (The common code was a snippet to compute X
2302 keyboard modifiers as a bit-mask of GLUT symbols.)
2303 * src/freeglut_main.c: Caught a few more little style issues.
2304 * src/freeglut_main.c: Added a "case" for an X event that we turn on but
2305 do not use. ({MapNotify}). We already caught {MappingNotify} and
2307 * src/freeglut_main.c: * Fixed a bug in the X11 handling of
2308 scrollwheel/mouse. The old code, I believe, checked if *either* a
2309 wheel or button callback was set, and then decided which to use---and
2310 unconditionally called it. I left the "either" check in, but added
2311 additional checks before actually doing the invocation. * Lots of
2312 reformatting. Massive. The usual suspects, though, and fairly trivial:
2313 Re-indenting to standard size, shuffling some spaces to match the
2314 freeglut "standard" of: if( ... ) ...and: func( ... )
2318 * src/freeglut_callbacks.c: Cleaned up one macro definition.
2320 Picked up an over-long line that I missed before.
2321 * src/freeglut_callbacks.c: Fit some long lines to 80 columns.
2322 * src/freeglut_cursor.c, src/freeglut_display.c,
2323 src/freeglut_gamemode.c, src/freeglut_geometry.c: Last of the hard
2324 TABs in the src/*.c files.
2325 * src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
2326 src/freeglut_menu.c, src/freeglut_state.c: En masse removal of most (I
2327 think) of the remaining hard TABs in files. There are still a couple
2328 of files that need to be hit.
2329 * src/freeglut_window.c: Picked up some stray TABs scattered in this
2331 * src/freeglut_window.c: Noted by XXX comments that the XFlush() calls
2332 probably shouldn't be there. Flushing the X protocol stack every
2333 little bit both adds clutter to the code and may impede performance.
2335 It seems that we should be able to get rid of these, though allowing
2336 client code to directly call glutMainLoopEvent() does make it a little
2339 Something to ponder.
2340 * src/freeglut_window.c: Polished off the say-nothing-new comments and
2341 lines-over-80-columns in freeglut_window.c
2343 There should be no functional changes.
2344 * src/freeglut_window.c: Missed a few say-nothing-new comments in
2345 fgOpenWindow(). Eeep. Should be better now. (^&
2346 * src/freeglut_window.c: Cleansed fgCloseWindow(): * say-nothing-new
2347 comments axed. * de-TABbed. * Made the white-space to be consistant.
2348 * src/freeglut_window.c: Cleaned up fgOpenWindow(): * Removed TABs. *
2349 Made indentation consistant. * Deleted say-nothing-new comments. *
2350 Changed an *error*check* from an assert to an if(). (The error-check
2351 was on window creation; we don't want to lose that if the user
2352 compiles with asserts deactivated. Also, assert()s really tell us more
2353 about programming errors, rather than run-time errors, so it is a
2354 little misleading to use assert() for error-checks, even if you can
2355 depend upon assert()s never being compiled away to null statements.) *
2356 Added some XXX comments for things that bear some rumination.
2357 * src/freeglut_window.c: Cleanup to fgSetWindow(). The usual suspects: *
2358 Removed tabs. * Made indentation consistant. * Killed off
2359 say-nothing-new comments.
2360 * src/freeglut_window.c: Cleanup to fgSetupixelFormat(). Should be no
2363 Code facelift included:
2365 * Consistant indentation. * Removal of all TABs (there were a bunch).
2366 * Fit to 80 columns.
2367 * src/freeglut_window.c: There should be no changes to code
2368 functionality, though a fair bit of little changes to the code
2371 * Fit the comments at the start of the file to fit 80 columns. * Noted
2372 an unusual feature of the ATTRIB() macro. * Added ATTRIB_VAL() macro
2373 which is really just two ATTRIB()s. This lets us put things like
2374 {ATTRIB (GLX_RED_SIZE); ATTRIB (1);} on one statement: {ATTRIB_VAL
2375 (GLX_RED_SIZE, 1);}. I did this to preserve some of the layout of
2376 information while also avoiding the nasty semi-visible ";" in the
2377 middle of a line of code. And by putting the {braces} in the macro
2378 definition, I was able to visually clean code of the form: if
2379 (condition) { ATTRIB( X ); ATTRIB( 1 ); } ...rewriting as: if
2380 (condition) ATTRIB_VAL( X, 1 ); * Eliminated a bunch of
2381 say-nothing-new comments in fgChooseVisual(). * Combined some
2382 semi-useful comments into a block comment summarizing a loop.
2386 * src/freeglut_structure.c: Finished off most of the issues with
2387 freeglut_structure.c, from a stylistic point of view (at least,
2388 insofar as: The original file's code was INCON- SISTANT. I did not
2389 remove the "!= NULL" stuff, did not address the shortest-branch-first
2390 issue for if-else statements, and left some rather ugly "if (x) {...
2391 return y} /* else do this */ return NULL;" garbage. This should, I
2392 think, be re-written as "if (x) return y; else return NULL;" or even
2393 better, "ret = NULL; if (x) ret = y; return ret;"
2395 In short, the code still has some issues, but I think that it's a bit
2398 (Oh, I also got rid of oustanding TABs.)
2399 * src/freeglut_structure.c: Eliminated most of the say-nothing-new
2402 Fit most of the code to no more than 80 columns.
2404 Raised some issues about completeness/correctness of trying to
2405 decrement the max-window-ID (apparently in order to partially recycle
2406 some window IDs to slightly slow the rate of growth of window IDs). (I
2407 didn't change what the code does, though.)
2409 The functionality of the code should be unchanged.
2410 * src/freeglut_main.c: Forgot to set {direction} explicitly to +/- 1 for
2411 freeglut mouse-wheel API on MS-WINDOWS. Oops.
2413 Now it should always report +/- 1 on MS-WINDOWS, per the spec.
2414 * src/freeglut_main.c: Minor fix to allow for multiple ticks to be
2415 received at one time by the WIN32 code. Take abs(direction) as the
2416 number of ticks, and count it down.
2418 <stdlib.h> *should* be included by freeglut_internal.h, I think, so it
2419 should be okay; otherwise add a suitable #include.
2420 * src/freeglut_main.c: Grrr. My attempt to commit got aborted, and the
2421 commit message was lost. Now I've lost track of what I said I'd done.
2424 * Fixed some issues with multiple wheels. * Noted in comments some
2425 issues about other-than-3-real-buttons. * Fixed formatting to fit 80
2426 columns. * Removed some BCPL/C++ style comments (//) that are not
2427 legal, and which, if memory servers, are not even strictly legal when
2428 disabled by preprocessor directives. E.g.,
2430 #if 0 not-syntactically-valid-C #endif
2432 ...is not legal. Though most cpp's will discard the bracketed material
2433 completely before the main C compiler pass has a chance to analyze the
2434 syntax. (MSVC++ and GCC both don't seem to mind the BCPL style
2435 comments in plain C, but let's keep the sources clean, eh?) * Fixed a
2436 problem that would have caused freeglut to report doubled wheel events
2439 Not tested other than compiling. Personally, I think that the
2440 interface is inherently broken at this point unless you are willing to
2441 get user- configuration. (Which would then solve the complaint that
2442 Steve had about computing the tick-size on behalf of applications.)
2443 I.e., there is NO WAY to know if we have the right buttons to start
2444 wheels at, or if there are any buttons after the first wheel(s), etc.
2445 We just have to guess---and if we are wrong, we can get varying
2446 degrees of brokeness.
2448 2003-10-29 Christopher John Purnell
2450 * src/freeglut_window.c: There is a problem with the way I did
2451 glutFullscreen() in my last commit. So I've copied the way the game
2452 mode does it. It's not ideal but it works. The glutGet() for the
2453 window border sizes will also have to be fixed at some point.
2454 * src/freeglut_window.c: Rewrote glutFullscreen(). It now correctly
2455 places the window in X11. It now uses system dependant code for more
2456 efficient use of windowing system calls.
2460 * src/freeglut_joystick.c: Should be no real changes to the code
2463 I missed a few lines that went past 80 columns. (^&
2465 Also made formatting more consistant.
2467 Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.
2468 * src/freeglut_joystick.c: Should be entirely superficial changes to
2471 * Fit lines to 80 columns. (It does get tiresome seeing long lines
2472 forced to break by the right-hand border of windows...(^&) *
2473 Eliminated say-nothing-new comments. * Made formatting more consistant
2474 in spots. * Eliminated some hard TAB characters.
2475 * src/freeglut_joystick.c: Added Thierry's change to include
2476 sys/param.h. This lets us pick out version numbers for OS releases
2477 corresponding to system headers.
2479 I modified it to also work with NetBSD; I cannot confirm if it is safe
2480 with any other systems, so it remains protected by a #if.
2481 * src/freeglut_state.c: Deleted some say-nothing-new comments.
2483 Added some XXX's where comments seemed to require future attention.
2485 Added some new comments with XXX's where future attention seems
2487 * src/freeglut_state.c: Deleted a bunch of say-nothing-new comments.
2488 Someday, there shall be an end to them.
2489 * src/freeglut_state.c: Previous changes were made without the freeglut
2490 major mode in EMACS. Re-tweaked some lines (mostly got rid of some
2491 TABs, but also resulted in some changed indentation).
2493 Reformatted a big comment to fit to 80 columns.
2495 Removed bogus references to "Linux". (UNIX, and/or X11 were relavent,
2496 and "UNIX/X11" was substituted for "Linux" in those places. This
2497 includes UNIX-alike systems.)
2498 * src/freeglut_state.c: Rewrote the TODO BEFORE THE STABLE RELEASE
2499 comment to fit to 80 columns.
2501 Cleanup of fghGetConfig(). (One return statement, simpler code.)
2503 Made glutSetOption() have a more consistant style---and also got its
2504 lines to stay under 80 columns.
2505 * src/freeglut_misc.c: Got the last of the say-nothing-new comments in
2508 (I would have picked them up before, but wanted the bug-fix and
2509 conversion-to-error-message changes to go in before I did more
2511 * src/freeglut_cursor.c, src/freeglut_main.c, src/freeglut_misc.c: *
2512 Fixed a bug that I introduced in fgWarning()/fgError(): I thought that
2513 ((a) || (b)) was defined to have value as: (a) if (a) != 0 (b) if (a)
2516 ...instead, it has value 0/1. This was causing a bug. It's probably
2517 just as well, since what I was trying to do definitely fell into the
2518 category of "clever code" rather than "clear code".
2522 * Made glutSetKeyRepeat() call fgError() if you go out of range. (The
2523 old code silently did nothing---not even a warning.)
2525 If it is really desirable to keep running, we should probably at least
2526 generate an fgWarning().
2528 * Deleted some say-nothing-new comments.
2530 * XXX added: Is glutSetKeyRepeat() deprecated?
2534 * include/GL/freeglut_ext.h, src/freeglut_callbacks.c,
2535 src/freeglut_ext.c, src/freeglut_internal.h, src/freeglut_main.c:
2536 Commit, mostly of work from John:
2538 * Removed some say-nothing-useful comments. * Added some tentative
2539 mouse-wheel support. * Fairly massive reformatting of code.
2541 I made some secondary changes to his changes:
2543 * One compilation error was fixed (missing close-paren + semicolon). *
2544 Deleted a few ore say-nothing-useful comments. * Some of John's code
2545 was strangely formatted to the point that it seemed completely out of
2546 place, so I took the liberty of reformatting it. Since I used GNU
2547 EMACS's <tab> key (which re-indents rather than inserts TAB
2548 characters), I had to propogate some indentation changes a little
2549 further than the bare necessity to match up with John's changes. (John
2550 seems to shoot for 2-space indents, while EMACS (and I, I confess)
2551 strongly prefer 4-space indents. The code that I was re-indenting had
2552 been put to 8-space indents, however.)
2554 I have *not* tested the code beyond compiling. I assume that John did
2555 (and that the compilation error was a result a minor change just
2556 before asking me to commit).
2557 * src/freeglut_cursor.c: Re-indentation style changes from John.
2559 There should be no alterations to how the code performs.
2561 (I modified how the X11 section of the set-cursor code is indented to
2562 slightly better match (IMHO) the rest of his changes.)
2566 * src/freeglut_menu.c: Converted a few "x != NULL" tests to "x" for
2569 I think that I've touched enough lines of source for one morning.
2570 * src/freeglut_menu.c: Cleaned up a little redundancy in a comment on
2571 the {menu_pen_*} variables.
2572 * src/freeglut_menu.c: Removed about 90 lines of say-nothing-new
2575 The code should be functionally unaltered by these changes.
2576 * src/freeglut_menu.c: Propogated a pointer-check from menu-attach to
2577 menu-detach. (Apparently, in some cases, the Menu member variable can
2580 Corrected the menu-attach code to make sure that both Window and Menu
2581 pointers are non-NULL (rather than "at least one").
2583 Rewrote button-checks to more simply and more clearly assert that the
2584 "menu button" is a valid button for menu actions: Instead of
2585 laboriously comparing against the three valid buttons (0, 1, 2 or
2586 GLUT_BUTTON_*), we do a simpler range-check and the upper bound is
2587 {FREEGLUT_MAX_MENUS}, allowing us to change the number of menuable
2588 buttons fairly easily in the future.
2590 Also deleted a few say-nothing-new comments.
2591 * src/freeglut_menu.c: Cosmetic changes (mostly deleted a few more
2592 say-nothing-new comments). The functionality of the code should be
2594 * src/freeglut_menu.c: Changed an "#elif TARGET_HOST_UNIX_X11" to
2595 "#else", since this simply governed menu aesthetics. I think that it's
2596 better to have a default that works than to break completely, should
2597 freeglut ever be ported to a new (non-WIN32, non-UNIX/X11) target.
2598 * src/freeglut_menu.c: Minor modifications to the menus:
2600 * Updated an old "TODO BEFORE STABLE" comment.
2602 * Expanded a comment re. some #define macros.
2604 * Made colors and font choice system dependant. The UNIX freeglut
2605 menus look more like UNIX GLUT menus, now. (This is PURELY a cosmetic
2606 change. But it achieves better compatibility visually.)
2607 * src/freeglut_main.c: Cleaned up glutMainLoop() a bit:
2609 * Deleted numerous say-nothing-new comments. * Reformatted a
2610 say-something-useful comment to fit on an 80-column display.
2611 * src/freeglut_main.c: Partially (re-?)unified some of the
2612 glutMainLoopEvent() code. The only code that really needs to be
2613 system-specific is the window event handling, which in MS-WINDOWS is
2614 tucked into a separate function. In UNIX/X11, it's all spilled out
2615 into glutMainLoopEvent() for some reason.
2617 If the X11 code could be tucked into another function,
2618 glutMainLoopEvent() could be platform-independant.
2622 * src/freeglut_main.c: Moved the idle callback out of
2623 glutMainLoopEvent() and into glutMainLoop(), per discussion on the
2624 list. The code looks okay, to me, though I remain less than wholly
2625 convinced that treating idles as special cases is the best way to go.
2626 Still, a case can be made for taking "non-event" idle callbacks out of
2627 the "event loop". From an organizational perspective, I think that
2628 it's an improvement, and it fixes a bug for at least one program.
2629 * src/freeglut_menu.c: Added John's text-positioning modification.
2631 The lines that he was altering were very oddly-split, so while I was
2632 at it, I repaired the line-break damage.
2633 * src/freeglut_joystick.c: Committed change from Nigel to fix the
2634 joystick bug. (The joystick code was not setting the GLUT window prior
2635 to calling callbacks.)
2637 Please verify. If so, this closes out, I think, the latter half of
2638 that bug report, so anyone with the means to modify/close bug reports
2639 should do so upon verification of the fix.
2640 * src/freeglut_main.c: Superficial cleanup of the code. Mostly taking
2645 /* * <Enslish recapituation of the single following C statement> */
2646 <single C statement>
2650 ... <single C statement>
2652 freeglut_main.c still has a lot of that in it, but it looks a bit
2654 * src/freeglut_init.c: Added some error-checking (particularly w.r.t.
2657 Deleted numerous 4-line "padding" sequences of C-as-English trans-
2658 literation comments.
2660 Re-indented some (but not all) code that is using 2-space indentation.
2661 (Most of the freeglut code seems to be using 4-space indentation.)
2663 I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
2664 filled with a ton of over-long lines and also appears to be in more
2665 flux than the rest of the code. (Well, I added one error-check to a
2667 * src/freeglut_font.c: Removed two more bogus "carriage return"
2668 references where the comments were in fact talking about a line feed
2669 (a.k.a. newline, LF, ^J, \n, ...).
2670 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
2671 Fixed the buglet about failing to report the program's name on error-
2672 messages. Please test. (Modified glutInit(), the state structure, and
2673 the warn/err functions.)
2675 2003-10-23 James Jones <puggles@users.sourceforge.net>
2677 * ChangeLog: Released 2.0.1
2679 2003-10-21 Christopher John Purnell
2681 * configure.in, include/GL/Makefile.am, include/GL/freeglut.h,
2682 include/GL/freeglut_std.h, include/GL/glut.h,
2683 progs/demos/Fractals/Makefile.am,
2684 progs/demos/Fractals_random/Makefile.am,
2685 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2686 src/Makefile.am: Added --disable-replace-glut option to autoconf
2689 2003-10-15 James Jones <puggles@users.sourceforge.net>
2691 * NEWS: Noted the release of 2.0.0
2692 * configure.in: Version bump
2696 * src/freeglut_font.c: Swept the freeglut_font.c for comment cleanup: *
2697 Got rid of the "rewrite C as English" comments. * Corrected several
2698 bogus references to "carriage returns" (in strings). The symbols were
2699 newlines or EOLs or LFs (\n). They were *not* carriage returns or CRs
2700 (\r). * Clarified the comments on glBitmap() calls.
2704 * progs/demos/Fractals/fractals.c,
2705 progs/demos/Fractals_random/fractals_random.c: Small bug-fix that's
2708 Modified the two Fractals* demos so that they only clear (for the
2709 random one) or redraw (for the non-random one) if there is need to do
2710 so. (E.g., pressing the space bar should not clear and redraw the
2711 random fractal since no parameters are altered.)
2712 * src/freeglut_cursor.c, src/freeglut_display.c: Removed the obsolete
2713 hack (or very ill-conceived dream), fgDisplayCursor().
2714 * src/freeglut_display.c: Cleaned up some of the style issues (mostly
2715 "fluff" comments) in freeglut_display.c.
2716 * src/freeglut_cursor.c: Comment-cleaning sweep.
2718 Mostly got rid of the say-it-in-English comments that were adding 1
2719 line of English and 2 or 3 lines of filler for each of several lines
2720 of C code. Updated a couple of other comments, and tweaked some
2722 * src/freeglut_callbacks.c: Cleaned up the comments a bit in the
2723 callbacks.c file (mostly removed some of the
2724 kill-4-lines-to-translate-one-line-of-C-into-English comments).
2728 * src/freeglut_cursor.c: Added all missing GLUT cursor types for X11.
2730 (Type NONE is not properly supported, yet.)
2732 Corrected behavior for the several old types: * Wrong glyphs. *
2733 Reversed glyphs (left/right confusion!)
2735 There are some remaining imperfections, but it's a lot closer to GLUT
2740 * src/freeglut_callbacks.c: Three tidying-up changes to the code of
2741 freeglut_callbacks.c; none of them are Earth-shattering, but as I
2742 swept through looking somewhat more systematically for errors, I
2743 picked these off. See the diff's for details.
2744 * src/freeglut_callbacks.c: Fixed a basic readability/style error in the
2745 code. (Two statements per line are almost never a good idea; in this
2746 case the combined line was past 80 columns.)
2747 * src/freeglut_callbacks.c: Added a safety-check on a memory allocation.
2748 (Timers were using dynamic memory allocation but NOT checking the
2750 * src/freeglut_menu.c: Committed two lines from John to help fix the
2752 * src/freeglut_callbacks.c: Check the glutDisplayFunc() callback for
2753 being a NULL pointer. This is illegal and is disallowed in GLUT 3.0+,
2754 so we disallow it too in freeglut 2.0.1+
2758 * progs/demos/Fractals/fractals.c,
2759 progs/demos/Fractals_random/fractals_random.c: Applied John's updated
2760 ReadConfigFile() changes to the fractals demos.
2761 * progs/demos/Fractals_random/fractals_random.c: Fixed: * glutInit()
2762 ordering w.r.t. glutInit*() and {argv} processing. * Aspect ratio. *
2763 Removed depth-buffer usage. (Also done for Fractals in previous
2765 * progs/demos/Fractals/fractals.c: A few minor changes: * glutInit*()
2766 calls should preceed glutInit(), per se, generally. This is so that
2767 glutInit()'s configuration (which picks up on user parameters) can
2768 override application defaults. * glutInit() should be called before
2769 ANY attempt to process {argv, argc}. This is because there may be
2770 GLUT/freeglut parameters (such as "-display" on X11). * If the window
2771 is tall and skinny, rather than short and squat, we need to handle
2772 aspect ratios differently.
2774 The first is a user-interface bug. The second is a serious bug
2775 (especially since the demo assumes that argv[1] contains a filename).
2776 The third is a display bug.
2780 * src/freeglut_main.c: Changed CreateNotify (in X11 ONLY) to act like a
2781 ConfigureNotify event.
2783 This is done so that subwindows on X11 will get "resize" events when
2784 they are created. Old GLUT did this---presumably by design in order to
2785 ensure that (a) All windows get notified of their size as soon as the
2786 window exists, and (b) probably more importantly, so that windows and
2787 sub-windows behave as much alike as possible. I believe that GLUT was
2788 right to do this, and I believe that compatibility requires this (I
2789 have a sample program that breaks in freeglut but not GLUT without
2792 I did not touch the Microsoft side, because I don't know what their OS
2793 does---nor if old GLUT was historically system-dependant about this.
2795 2003-10-08 Eric Sandall
2797 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:217,519,532: Fix menus
2798 to stay in the window (John Fay)
2802 * src/freeglut_menu.c: Several updates from John and myself.
2804 The broad outlines are:
2806 * Color schemes are now in variables, are closer to old GLUT, and are
2807 system dependant (as old GLUT did). * You can change the font to any
2808 bitmapped font more easily, which can aid in finding a better
2809 approximation. (Old GLUT does not seem to have used a GLUT font for
2810 the menus, which causes problems for us.) The menus rescale
2811 automatically, including the triangle "arrow" for sub-menus. * Menus
2812 have real borders, and the placement of highlighting is much improved.
2813 * src/freeglut_main.c: Fixed a bug in the menu callback behavior. Menus
2814 were not setting the current window correctly.
2816 2003-10-06 Eric Sandall
2818 * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:328 Fix submenu
2821 2003-10-04 James Jones <puggles@users.sourceforge.net>
2823 * ChangeLog, src/freeglut_main.c, src/freeglut_structure.c: Tweaking for
2824 menu behavior in Linux regarding mouse whatnot - John Fay
2828 * src/freeglut_joystick.c: Applied a patch from "extraeme@netbsd.org" to
2829 add joystick support. Untested, but it compiles for me.
2831 Should also add Joystick support for older FreeBSD systems. Also
2833 * src/freeglut_main.c: Added support for more arbitrary number of mouse
2834 buttons (though only the first three can work with menus), in X. This
2835 closes a compatibility gap with old GLUT, and leaves us the option of
2836 supporting scroll-wheels properly.
2838 2003-09-27 Christopher John Purnell
2840 * progs/demos/Fractals/Makefile.am,
2841 progs/demos/Fractals_random/Makefile.am,
2842 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Don't
2845 2003-09-26 James Jones <puggles@users.sourceforge.net>
2847 * progs/demos/Makefile.am: Package the demos.dsw file.
2848 * progs/demos/demos.dsw: Demos workspace for MSVC users
2852 * src/freeglut_main.c: Corrected a bug w.r.t. display and joystick
2853 events. When getting ready to sleep, we need to go through ALL windows
2854 to check for pending joysticks and to check for pending redisplays. I
2855 was just going through all TOP- LEVEL windows. Eeek. This won't do.
2857 2003-09-23 Brian Paul
2859 * progs/demos/Fractals_random/fractals_random.c: added needClear flag to
2860 take care of initial window clear and window resize clears
2864 * src/freeglut_init.c: Per Nigel Stewart's comments, converted
2866 #ifdef TARGET_HOST_...
2872 in src/freeglut_init.c. These changes should not have any functional
2873 impact at this time, but you don't want bad examples lying around to
2874 trip people up later.
2875 * progs/demos/Fractals_random/fractals_random.c, src/freeglut_main.c,
2876 src/freeglut_window.c: Fixed: * GLUT_SINGLE now should behave more or
2877 less correctly. Thanks to Brian Paul!
2879 * Sleeping is now cognizant of outstanding redisplays.
2881 * Fractals_random has been restored more or less to as-before, save
2882 that it uses the more minimal glFlush() rather than glutSwapBuffers().
2883 glutSwapBuffers() was only required when freeglut was incorrectly
2884 handling promotion to double-buffering.
2888 * src/freeglut_main.c: Moved the #include/#ifdef/#define stuff up to the
2891 Changed #ifdef to #if, per Nigel(?)'s comment. Ooops.
2893 2003-09-22 Christopher John Purnell
2895 * progs/demos/Fractals/Makefile.am,
2896 progs/demos/Fractals_random/Makefile.am,
2897 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Fix to
2898 allow demos to compile before freeglut has been installed.
2900 2003-09-22 James Jones <puggles@users.sourceforge.net>
2902 * progs/demos/Fractals_random/fractals_random.c: Add an idle function to
2903 ensure that the screen gets drawn even when callbacks are not
2904 generated by the mouse/keyboard.
2906 2003-09-21 James Jones <puggles@users.sourceforge.net>
2908 * progs/demos/Fractals/fractals.c,
2909 progs/demos/Fractals_random/fractals_random.c: Note the possible
2910 buffer overflow in window_title
2911 * progs/demos/Fractals/fractals.c: Fix the window title.
2912 * progs/demos/Fractals_random/fractals_random.c: Fix window title, and
2913 ensure that the random integer is not forced to be zero (Thanks
2916 2003-09-20 James Jones <puggles@users.sourceforge.net>
2918 * src/freeglut_main.c: Richard Rauch's patch to ensure that freeglut
2919 does not use 100% CPU even while idling.
2920 * src/freeglut_font.c: Resolution for bug 809561 reported by Nigel
2921 Stewart, regarding a possible array underflow error of -1 in the event
2922 of "character" being zero.
2924 2003-09-14 Christopher John Purnell
2926 * configure.in, progs/demos/Fractals/Makefile.am,
2927 progs/demos/Fractals_random/Makefile.am,
2928 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
2929 src/Makefile.am: Removed unused AC_PROG_RANLIB from configure.in Added
2930 passing of $(X_CFLAGS) to compiler.
2932 2003-09-14 James Jones <puggles@users.sourceforge.net>
2934 * include/GL/glut.h: Resolve bug 806008 -- let Microsoft's compiler know
2935 to use Windows libraries even if not using our project files.
2937 2003-09-13 James Jones <puggles@users.sourceforge.net>
2939 * ChangeLog: Taking care of keeping things mostly up-to-date
2940 * TODO: Most everything's been resolved for the 2.0.0 release.
2941 * src/freeglut_joystick.c: Thierry Thomas said that FreeBSD has no
2942 machine/joystick.h, instead a sys/joystick.h. I've made the change --
2943 here's hoping it works.
2944 * progs/demos/One/one.c: Removed the incorrect relative path for
2945 including freeglut.h
2946 * progs/demos/Fractals/Makefile.am,
2947 progs/demos/Fractals_random/Makefile.am,
2948 progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Made all
2949 demos compile. Thanks to Thierry Thomas for reporting bug 802809,
2950 which alerted that *none* of the demos compiled automatically!
2951 * src/freeglut_main.c: Nigel Stewart's joystick fix (for hopefully all
2952 platforms), SourceForge bug 805481
2953 * progs/demos/Lorenz/lorenz.dsp, progs/demos/One/one.dsp: Fix location
2954 of the include files from a fixed to relative path. Closes bug 805477
2955 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp, freeglutstatic.dsw:
2956 Add dos line endings. Fixes bug 805476
2958 2003-09-10 Christopher John Purnell
2960 * src/freeglut_joystick.c: A minor fix to that last commit.
2961 * src/freeglut_joystick.c: Removed some remaining glib depandancy.
2963 2003-09-10 James Jones <puggles@users.sourceforge.net>
2965 * src/freeglut_main.c: Re-add catches for the case in which a menu
2966 callback destroys the menu. - John Fay
2968 2003-09-09 Christopher John Purnell
2970 * src/freeglut_main.c: More to fix a deinitialization related crash.
2971 * src/freeglut_structure.c: Fix for a deinitialization related crash.
2973 2003-09-08 James Jones <puggles@users.sourceforge.net>
2975 * src/freeglut_main.c, src/freeglut_structure.c: Menus should deallocate
2976 better now - John Fay
2978 2003-09-05 James Jones <puggles@users.sourceforge.net>
2980 * Makefile.am: Add freeglut_static.dsp to the releases
2982 2003-09-03 Christopher John Purnell
2984 * src/freeglut_gamemode.c: Moved #ifdef for non XFree86 X11 compile.
2986 2003-09-02 Christopher John Purnell
2988 * src/freeglut_window.c: Fix to stop fgSetWindow(NULL) crashing on X11.
2990 2003-08-29 James Jones <puggles@users.sourceforge.net>
2992 * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
2993 These change a bunch of assignments to calls to set the current window
2994 correctly, and also (possibly) fixes most of the remaining menu
2996 * src/freeglut_main.c: Another typecast bugfix from John Fay
2998 2003-08-28 Christopher John Purnell
3000 * src/freeglut_init.c: Changed #ifdef to #if
3002 2003-08-28 James Jones <puggles@users.sourceforge.net>
3004 * src/freeglut_font.c: change the GLUT stroke function arguments from
3005 "const char *" to "const unsigned char *" - John Fay
3006 * include/GL/freeglut_ext.h, include/GL/glut.h: Changes stroke function
3007 arguments from "const char*" to "const unsigned char *" - John Fay
3009 2003-08-28 Christopher John Purnell
3011 * freeglut-1.3: Removing files from old freeglut-1.3 directory.
3013 2003-08-28 James Jones <puggles@users.sourceforge.net>
3015 * src/freeglut_callbacks.c, src/freeglut_geometry.c,
3016 src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
3017 src/freeglut_menu.c, src/freeglut_structure.c: Casting changes, John
3020 2003-08-27 James Jones <puggles@users.sourceforge.net>
3022 * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
3023 src/freeglut_menu.c: Major overhaul to the menu system, by John Fay
3025 2003-08-27 Christopher John Purnell
3027 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3028 Added double underscores to the header included macros.
3030 2003-08-20 Christopher John Purnell
3032 * src/freeglut_gamemode.c: Minor typo fix
3034 2003-08-19 Christopher John Purnell
3036 * src/freeglut_gamemode.c: Moving that "#if TARGET_HOST_UNIX_X11" to the
3039 2003-08-17 Christopher John Purnell
3041 * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
3042 src/freeglut_window.c: Game mode fixes from Bernhard Kaindl and Eric
3045 2003-08-05 Christopher John Purnell
3047 * src/Makefile.am, src/freeglut_menu.c, src/freeglut_window.c,
3048 src/mwmborder.c: Using override_redirect instead of motif wm hints. It
3049 now rasies the menu windows before showing them. Move the show to
3050 after the reshape and position so we don't get a flash of the menu
3051 window at it's old size and position.
3052 * src/mwmborder.c: I suspect a lot of people will not have motif
3055 2003-08-05 Eric Sandall
3057 * ChangeLog, src/Makefile.am, src/freeglut_window.c: (98)
3058 src/Makefile.am:34 Added mwmborder.c (99) src/freeglut_window.c:67
3059 Removed #included "mwmborder.c"
3060 * ChangeLog, src/freeglut_main.c: src/freeglut_main.c:816 and :1571, set
3061 the current window (John F. Fay)
3063 2003-08-04 Christopher John Purnell
3065 * src/freeglut_state.c: Added X11 code for
3066 glutGet(GLUT_WINDOW_BORDER_WIDTH) and
3067 glutGet(GLUT_WINDOW_HEADER_HEIGHT).
3068 * src/freeglut_internal.h, src/freeglut_state.c: Replacing
3069 glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on X11 with
3070 something that works. Also a minor correction to the xf86vidmode
3073 2003-08-04 James Jones <puggles@users.sourceforge.net>
3075 * src/freeglut_window.c: Keep the X11 decoration-zapping code confined
3076 to X11-using platforms! Oops!
3077 * src/freeglut_window.c, src/mwmborder.c: Menus' decorations are removed
3078 on Linux. Not sure if we want the mwmborder.c a separate file or not;
3079 doing it separate for right now. Makefile was not updated, since the
3080 .c is just #included.
3082 2003-08-03 Christopher John Purnell
3084 * configure.in: Got rid of configure warnings when using a newer
3087 2003-08-02 Christopher John Purnell
3089 * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Putting
3090 stuff back that was undone with the menu code committed.
3092 2003-08-02 James Jones <puggles@users.sourceforge.net>
3094 * src/freeglut_callbacks.c, src/freeglut_display.c,
3095 src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
3096 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
3097 src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
3098 Major menu changes (they appear in their own window, have own
3099 rendering context) by John Fay and a little by James C. Jones. They
3100 work perfectly on Win32, and work... on Linux.
3102 2003-08-01 Christopher John Purnell
3104 * configure.in, src/Makefile.am, src/freeglut_glutfont_definitions.c,
3105 src/freeglut_internal.h: Added autoconf detection for the xf86 vid
3108 2003-08-01 Eric Sandall
3110 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c:551 Removed
3111 extra carriage return for Windows users (John F. Fay)
3112 * ChangeLog: Credit Dave Reed for fix
3113 * ChangeLog, src/freeglut_internal.h: src/freeglut_initial.c:91 Added
3114 check for SOLARIS OS
3116 2003-07-23 Christopher John Purnell
3118 * include/GL/glut.h, src/Makefile.am, src/freeglut_font.c,
3119 src/freeglut_glutfont_definitions.c: This should put an end to the
3120 font binary compatibility issue.
3122 2003-07-23 Eric Sandall
3124 * ChangeLog, src/freeglut_window.c: src/freeglut_window.c Windowing
3126 * ChangeLog, doc/Makefile.am: doc/Makefile.am:4 Removed trailing
3127 backslash and added an empty last line
3129 2003-07-23 Brian Paul
3131 * doc/download.html: no change, testing CVS
3133 2003-07-22 Brian Paul
3135 * doc/download.html: no change, just testing CVS
3137 2003-07-22 Eric Sandall
3139 * ChangeLog, freeglut.lsm: freeglut.lsm:3 Removed 'beta' label for next
3140 release, thanks to Bernhard Kaindl.
3142 2003-07-21 Christopher John Purnell
3144 * src/Makefile.am: The version info had the revision and the age
3147 2003-07-21 Eric Sandall
3149 * ChangeLog, src/Makefile.am: src/Makefile.am:38 Changed versioning to
3150 11:0:8 thanks to Bernhard Kaindl
3152 2003-07-17 Eric Sandall
3154 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Applied John F. Fay's
3155 fixes to freeglut.dsp and freeglut_static.dsp
3156 * ChangeLog, src/freeglut_state.c: Changed the overlay
3157 (freeglut_state.c:662) to return FALSE, as it's not imp lemented yet
3159 2003-07-12 Andreas Umbach <marvin@dataway.ch>
3161 * src/Makefile.am: renamed freeglut library to glut, bumped version info
3163 * configure.in: bumped version number to 2.0.0
3164 * Makefile.am, configure.in, doc/Makefile.am, include/GL/Makefile.am,
3165 progs/Makefile.am, progs/demos/Fractals/Makefile.am,
3166 progs/demos/Fractals_random/Makefile.am,
3167 progs/demos/Lorenz/Makefile.am, progs/demos/Makefile.am,
3168 progs/demos/One/Makefile.am, src/Makefile.am: changes for make dist
3169 * freeglut13.plg: MSVC generated file
3171 2003-07-11 Christopher John Purnell
3173 * include/GL/glut.h, src/freeglut_font.c: Fix for the font binary
3174 compatibility problem.
3176 2003-07-10 Christopher John Purnell
3178 * src/Makefile.am: Changed to build libfreeglut.so.2.0.0
3180 2003-07-10 James Jones <puggles@users.sourceforge.net>
3182 * TODO, freeglut.dsp, freeglut_static.dsp: Changes to TODO, Windows
3183 files - from John Fay
3184 * progs/demos/Fractals_random/Fractals_random.dsp: Changes by John Fay
3185 * progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c:
3186 Changes to the Fractals demo by John Fay
3187 * progs/demos/One/one.dsp: Initial project file from John Fay
3188 * progs/demos/Lorenz/lorenz.c, progs/demos/Lorenz/lorenz.dsp:
3189 Modifications from John Fay
3191 2003-07-07 Christopher John Purnell
3193 * src/freeglut_main.c: glutMainLoopEvent() was not closing windows
3194 properly. Moved call to fgCloseWindows() from glutMainLoop() to the
3195 end of glutMainLoopEvent().
3197 2003-07-03 Eric Sandall
3199 * ChangeLog, src/freeglut_misc.c: Removed unused char *ptr from
3202 2003-07-02 Christopher John Purnell
3204 * src/freeglut_main.c: It was crashing on and event for a unknown
3207 2003-07-02 Brian Paul
3209 * src/freeglut_misc.c: rewrite of glutExtensionSupported - works
3212 2003-07-02 Eric Sandall
3214 * ChangeLog: * Removed tests directory
3215 * ChangeLog, Makefile.am, configure.in, progs/demos/One,
3216 progs/demos/One/Makefile.am, progs/demos/One/one.c, tests: * Removed
3217 genfonts/genstrokes code, updated configure.in and Makefile.in
3219 * Moved tests/one.c into progs/demos/One/one.c, updated configure.in
3221 * genfonts: Removed genfonts
3223 2003-07-02 Christopher John Purnell
3225 * genfonts/to_stroke.y: Added some semicolons that yacc was warning
3228 2003-07-01 James Jones <puggles@users.sourceforge.net>
3230 * AUTHORS: John Fay commanded me to add my name to the file. He's crazy,
3233 2003-07-01 Eric Sandall
3235 * ChangeLog, src/freeglut_misc.c: Fixed the 'ptr + len' problem in
3238 2003-07-01 Brian Paul
3240 * doc/freeglut_user_interface.html: version bumps
3241 * tests/Makefile.am: bump version to 2.0
3242 * src/Makefile.am, src/freeglutdll.def: bump versions to 2.0
3243 * src/freeglut_gamemode.c: xf86VidMode error checking (Andrew
3246 2003-06-30 Brian Paul
3248 * progs/demos/Lorenz, progs/demos/Lorenz/lorenz.c,
3249 progs/demos/Lorenz/lorenz.dsp: Lorenz attractor demo (John Fay)
3250 * freeglut.dsp, freeglut_static.dsp: updates from John Fay
3252 2003-06-28 Eric Sandall
3254 * ChangeLog, include/GL/Makefile.am: Now installs freeglut_ext.h and
3255 glut.h to /usr/include/GL (was missing before)
3257 2003-06-27 Brian Paul
3259 * include/GL/freeglut_ext.h, src/freeglut_init.c,
3260 src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_state.c,
3261 src/freeglut_stroke_mono_roman.c: XF86 game mode fixes, context
3262 sharing option. (John Fay)
3264 2003-06-25 Eric Sandall
3266 * ChangeLog: Added another of my changes (freeglut.kdevelop) and fixed
3267 the version number for my MS VS change (*.dsp)
3269 2003-06-25 Brian Paul
3271 * src/freeglut_internal.h: version bumps
3272 * freeglut.lsm, include/GL/glut.h, src/freeglut_stroke_mono_roman.c,
3273 src/freeglut_stroke_roman.c: Assorted version 2.0.0 updates (John
3275 * doc/freeglut_user_interface.html: updated version, italicize freeglut
3278 2003-06-25 Eric Sandall
3280 * ChangeLog, freeglut.dsp, freeglut_static.dsp: Added 'freeglut_ext.c'
3281 to the project files 'freeglut.dsp' and 'freeglut_static.dsp' (New
3284 2003-06-24 Andreas Umbach <marvin@dataway.ch>
3286 * ChangeLog: Fixed autogen.sh and removed aclocal.m4
3287 * aclocal.m4: this file is autogenerated by aclocal
3288 * autogen.sh: fixed aclocal / autoheader order; some cosmetics
3290 2003-06-24 Eric Sandall
3292 * freeglut.kdevelop: Project file for Gideon (KDevelop 3.0)
3294 2003-06-23 Eric Sandall
3296 * ChangeLog, Makefile.am, TODO, configure.in, freeglut.dsp,
3297 freeglut.kdevprj, freeglut13.dsp, freeglut13.plg, freeglut_static.dsp,
3298 freeglutdll.dsp, src, src/Makefile.am, src/freeglut_callbacks.c,
3299 src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
3300 src/freeglut_font.c, src/freeglut_font_data.c,
3301 src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
3302 src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
3303 src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_overlay.c,
3304 src/freeglut_state.c, src/freeglut_stroke_mono_roman.c,
3305 src/freeglut_stroke_roman.c, src/freeglut_structure.c,
3306 src/freeglut_teapot.c, src/freeglut_videoresize.c,
3307 src/freeglut_window.c, src/freeglutdll.def, src/templates,
3308 src/templates/cpp_template, src/templates/header_template,
3309 tests/Makefile.am: Changed all references to the 'freeglut-1.3'
3310 directory to 'src', copied 'freeglut-1.3' to 'src' and added all files
3311 from 'src' to the repository (TODO #34).
3312 * ChangeLog: Updated ChangeLog with my aclocal.m4 change
3313 * aclocal.m4: Updated aclocal.m4 with aclocal 1.7.3 (was created with
3316 2003-06-23 Brian Paul
3318 * freeglut-1.3/freeglut_geometry.c: adjusted precision (John Fay)
3319 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3320 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3321 freeglut-1.3/freeglut_teapot.c, include/GL/freeglut_ext.h,
3322 include/GL/glut.h: Assorted updates from John Fay.
3324 2003-06-20 Eric Sandall
3326 * TODO: Updated TODO from John Fay
3328 2003-06-20 Brian Paul
3330 * progs, progs/demos, progs/demos/Fractals,
3331 progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c,
3332 progs/demos/Fractals/fractals.dat, progs/demos/Fractals_random,
3333 progs/demos/Fractals_random/Fractals_random.dsp,
3334 progs/demos/Fractals_random/fractals.dat,
3335 progs/demos/Fractals_random/fractals_random.c: Fractal demo (John Fay)
3337 2003-06-20 Eric Sandall
3339 * ChangeLog: Added the autogen.sh addition to ChangeLog
3340 * autogen.sh: Initial version of autogen.sh, tested here and creates the
3343 2003-06-20 Brian Paul
3345 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_state.c:
3346 Windows patches (Eero Pajarre)
3347 * NEWS: list the 1.4 release (fill in date) - this is a cvs check-in
3350 2003-06-19 Don Heyse <dheyse@hotmail.com>
3352 * freeglut-1.3/freeglut_joystick.c: Oops, missed the
3353 fghJoystickRawRead() fix for FreeBSD.
3355 2003-06-19 Brian Paul
3357 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
3358 freeglut-1.3/freeglut_ext.c, freeglut-1.3/freeglut_internal.h,
3359 freeglut-1.3/freeglut_main.c: s/FreeGLUT/freeglut/
3361 2003-06-19 Don Heyse <dheyse@hotmail.com>
3363 * freeglut-1.3/freeglut_joystick.c: Applied tthierry's patch to fix
3364 compiling on FreeBSD.
3366 2003-06-19 Brian Paul
3368 * freeglut-1.3/freeglut_internal.h: added VERSION_MAJOR/MINOR/PATCH
3369 * doc/freeglut_user_interface.html: restore text lost from previous
3371 * include/GL/glut.h: s/FREEGLUT_VERSION_1_3/FREEGLUT_VERSION_1_4/
3373 2003-06-19 Eric Sandall
3375 * include/GL/freeglut_ext.h, include/GL/glut.h: GLUT_VERSION updates
3378 2003-06-18 Eric Sandall
3380 * AUTHORS: Forgot a file...looked so innocous just sitting there... :)
3381 * ChangeLog, doc/freeglut_user_interface.html,
3382 freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_ext.c,
3383 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_menu.c,
3384 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_teapot.c,
3385 freeglut-1.3/freeglut_window.c, include/GL/freeglut_ext.h: * Hopefully
3386 I did THIS one right (used 'cvs update' to Merge)
3388 Authors - The first update in quite a while
3390 ChangeLog - Added the recent changes
3392 freeglut_callbacks.c - Added Aleksandar Donev's menu destruction
3395 freeglut_internal.h - Added the user data to the structures and made
3396 the menu state/status callbacks window-independent
3398 freeglut_menu.c - Removed several OpenGL compiler warnings and added
3399 A. Donev's menu user data functions
3401 freeglut_structure.c - Added Aleksandar Donev's menu destruction
3404 freeglut_teapot.c - Removed or suppressed several compiler warnings
3406 freeglut_window.c - Updated the window positioning code and added A.
3407 Donev's window user data
3409 freeglut_ext.h - Added the menu destruction callback and user data
3411 * freeglut-1.3/freeglut_ext.h: * Removed freeglut_ext.h (wasn't supposed
3414 2003-06-18 Brian Paul
3416 * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_internal.h,
3417 freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h,
3418 include/GL/glut.h: Added FREEGLUT_VERSION_1_3. Added GLUT_VERSION for
3419 glutGet(). Added glutGet() documentation.
3420 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_ext.h,
3421 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_internal.h,
3422 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_state.c,
3423 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3424 remove DOS-style CR characters
3425 * doc/freeglut_user_interface.html: added glutGetProcAddress and
3427 * ChangeLog: added glutGetProcAddress() and GLUT_FPS
3429 2003-06-17 Brian Paul
3431 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3432 freeglut-1.3/freeglut_internal.h: restore GLUT_FPS env var feature
3433 lost in previous check-in
3435 2003-06-17 Eric Sandall
3437 * ChangeLog: * Updated ChangeLog
3438 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: Set
3439 #4: * Fixes a couple of compiler warnings and other bugs. *
3440 freeglut_main.c: Removes a compiler warning * freeglut_structure.c:
3441 Sets the current window before calling the window closure callback *
3442 Possibly other changes
3443 * freeglut-1.3/freeglut_ext.h: * Rest of Set #3
3444 * freeglut-1.3/freeglut_state.c: Set #3: Fixes for window positioning
3446 * freeglut-1.3/freeglut_init.c: Eero Pajarre's GLUT_ICON code for
3448 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3449 freeglut-1.3/freeglut_window.c: First group of patches: Adds
3450 single-buffered rendering (or its emulation) in Windows.
3452 2003-06-17 Brian Paul
3454 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
3455 freeglut-1.3/freeglut_internal.h: added GLUT_FPS env var option
3456 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_ext.c,
3457 include/GL/freeglut_ext.h: added glutGetProcAddress()
3459 2003-06-12 Don Heyse <dheyse@hotmail.com>
3461 * freeglut-1.3/freeglut_main.c: Fix the keyboard up callback and a
3463 * freeglut-1.3/freeglut_structure.c: Set the current window before
3464 calling the window closure callback.
3465 * freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h: John's
3466 window positioning corrections.
3467 * freeglut-1.3/freeglut_init.c: Eero Pajarre's icon code.
3468 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
3469 freeglut-1.3/freeglut_window.c: Single buffered rendering for Windows.
3471 2003-06-02 Don Heyse <dheyse@hotmail.com>
3473 * doc/freeglut_user_interface.html: John Documented InitWindowPosition
3474 extensions and added some kbd fn info.
3475 * ChangeLog: Documented Johns changes from May 03.
3476 * freeglut-1.3/freeglut_state.c: Do not allow glutGet to reposition the
3477 window 1 pixel toward bottom right.
3478 * freeglut-1.3/freeglut_main.c: Pass mouse pos to Windows kbd callback.
3479 Resequenced a few things for UNIX.
3481 2003-03-23 Christopher John Purnell
3483 * freeglut-1.3/freeglut_gamemode.c: Applied patch to fix GameMode issues
3484 supplied by Bernhard Kaindl.
3486 2003-03-12 Don Heyse <dheyse@hotmail.com>
3488 * include/GL/glut.h: Switch to ANSI C comments.
3489 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3490 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_geometry.c,
3491 freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_joystick.c,
3492 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c,
3493 freeglut-1.3/freeglut_window.c: Switch to ANSI C comments. Removed
3494 always true tests on unsigned char. Single buffering fix..
3496 2003-02-13 Don Heyse <dheyse@hotmail.com>
3498 * freeglut.dsp, freeglut.dsw, freeglut_static.dsp: Switching to John
3499 Fays version of the VC++ project files.
3501 2003-02-08 Steve Baker <steve@sjbaker.org>
3503 * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_joystick.c:
3504 Removed erroneous GPL license comments.
3506 2003-02-07 Don Heyse <dheyse@hotmail.com>
3508 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3509 freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_font_data.c,
3510 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3511 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3512 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3513 freeglut-1.3/freeglut_stroke_mono_roman.c,
3514 freeglut-1.3/freeglut_stroke_roman.c, freeglut-1.3/freeglut_teapot.c,
3515 freeglut-1.3/freeglut_videoresize.c: Moved freeglut_internal.h to the
3516 freeglut source code private directory.
3517 * freeglut-1.3/freeglut_structure.c: SubWindow border thickness fix.
3518 Overlay changes in glutGet.
3519 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3520 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_window.c: Johns
3521 changes for layers, fgSetWindow, and fgSetupPixelFormat.
3522 * freeglut-1.3/freeglut_font.c: John fixed a bug that make bitmap font
3523 one pixel wider than its drawn.
3524 * freeglut-1.3/freeglut_internal.h, include/GL/freeglut_internal.h:
3525 Moved freeglut_internal.h to the private directory with the other
3527 * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
3528 Broke freeglut.h into glut.h and freeglut_ext.h
3530 2003-01-06 Don Heyse <dheyse@hotmail.com>
3532 * freeglut-1.3/freeglutdll.def: Exports file for Win32 dll. One EXPORT
3533 for each FGAPI line in freeglut.h
3535 2003-01-04 Steve Baker <steve@sjbaker.org>
3537 * aclocal.m4, freeglut-1.3/freeglut_joystick.c: Cleanup joystick
3540 2002-12-10 Don Heyse <dheyse@hotmail.com>
3542 * freeglut.dsw, freeglutdll.dsp: Allow DLL and static library build on
3544 * include/GL/freeglut.h: Added check for FREEGLUT_DLL to allow static &
3545 DLL build on Windows.
3547 2002-12-04 Don Heyse <dheyse@hotmail.com>
3549 * freeglut-1.3/freeglut_font_data.c: More bitmap font spacing fixes from
3552 2002-11-29 Don Heyse <dheyse@hotmail.com>
3554 * freeglut-1.3/freeglut_init.c: Fixed Win95 crash when getenv("DISPLAY")
3556 * freeglut-1.3/freeglut_font_data.c: The lowercase t in helvetica12 was
3558 * freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c:
3559 Adjusted character spacing on a few fonts.
3560 * ChangeLog: Many updates from John Fay.
3561 * freeglutstatic.dsw: Added Visual C++ 6 Static library project for John
3564 2002-11-28 Don Heyse <dheyse@hotmail.com>
3566 * freeglut.dsp: Visual C++ 6 project file for static freeglut lib.
3567 * include/GL/freeglut.h, include/GL/freeglut_internal.h: Many updates
3568 from John Fay. (freeglut.h may need a small change to allow Win32 DLL
3570 * freeglut-1.3/freeglut_geometry.c: Many updates from John Fay.
3571 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
3572 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3573 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3574 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3575 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3576 freeglut-1.3/freeglut_stroke_mono_roman.c,
3577 freeglut-1.3/freeglut_stroke_roman.c,
3578 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
3579 Many updates from John Fay.
3580 * freeglut-1.3/freeglut_joystick.c: Fixes from freeglut_portable patch.
3581 Memory leak fix from John. Return_if_fail fix.
3583 2002-11-26 Don Heyse <dheyse@hotmail.com>
3585 * doc/freeglut_user_interface.html: Added on behalf of John Fay.
3587 2002-10-22 Don Heyse <dheyse@hotmail.com>
3589 * freeglut-1.3/freeglut_geometry.c: Implemented tetrahedra, octahedra,
3590 dodecahedra, and icosahedra. Checked in on behalf of John F. Fay
3591 <john.fay@eglin.af.mil>.
3593 2002-05-20 Don Heyse <dheyse@hotmail.com>
3595 * freeglut-1.3/freeglut_font.c: Fixed previous fix so it compiles.
3597 2002-05-20 Christopher John Purnell
3599 * freeglut-1.3/freeglut_font.c: My bad.
3601 2002-05-18 Christopher John Purnell
3603 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_font.c,
3604 freeglut-1.3/freeglut_stroke_mono_roman.c,
3605 freeglut-1.3/freeglut_stroke_roman.c, genfonts/Roman_M.src,
3606 genfonts/lex.l, genfonts/to_stroke.y, genfonts/wfont.h,
3607 include/GL/freeglut.h, include/GL/freeglut_internal.h: Added stroke
3610 2002-05-17 Christopher John Purnell
3612 * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3613 freeglut-1.3/freeglut_overlay.c, freeglut-1.3/freeglut_teapot.c,
3614 freeglut-1.3/freeglut_videoresize.c, tests/one.c: Removed some DOS
3617 2002-05-16 Christopher John Purnell
3619 * freeglut-1.3/freeglut_main.c: Removed one last glib call.
3621 2002-01-20 Steve Baker <steve@sjbaker.org>
3623 * README, freeglut-1.3/.deps/freeglut_callbacks.P,
3624 freeglut-1.3/.deps/freeglut_cursor.P,
3625 freeglut-1.3/.deps/freeglut_display.P,
3626 freeglut-1.3/.deps/freeglut_font.P,
3627 freeglut-1.3/.deps/freeglut_font_data.P,
3628 freeglut-1.3/.deps/freeglut_gamemode.P,
3629 freeglut-1.3/.deps/freeglut_geometry.P,
3630 freeglut-1.3/.deps/freeglut_init.P,
3631 freeglut-1.3/.deps/freeglut_joystick.P,
3632 freeglut-1.3/.deps/freeglut_main.P,
3633 freeglut-1.3/.deps/freeglut_menu.P,
3634 freeglut-1.3/.deps/freeglut_misc.P,
3635 freeglut-1.3/.deps/freeglut_overlay.P,
3636 freeglut-1.3/.deps/freeglut_state.P,
3637 freeglut-1.3/.deps/freeglut_structure.P,
3638 freeglut-1.3/.deps/freeglut_teapot.P: Removed a bunch of '.P' files
3639 that don't belong in the CVS archive.
3641 2001-08-05 Christopher John Purnell
3643 * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_main.c,
3644 freeglut-1.3/freeglut_window.c, include/GL/freeglut_internal.h: Added
3645 keyup events code. Added missing specal keys. Made menu callbacks
3647 * freeglut-1.3/freeglut_window.c: More position tweeks.
3649 2001-08-04 Christopher John Purnell
3651 * freeglut-1.3/freeglut_main.c, include/GL/freeglut.h: Fixed redisplay
3652 bug. Fixed modifier values.
3653 * freeglut-1.3/freeglut_window.c: Improved window positioning.
3655 2001-07-30 Christopher John Purnell
3657 * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: A
3660 2001-07-30 Andreas Umbach <marvin@dataway.ch>
3662 * freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_main.c: one more
3664 * include/GL/freeglut_internal.h: removed glib dependencies from win32
3665 * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
3666 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_window.c: -
3667 removed glib dependencies from win32 code
3669 2001-07-29 Christopher John Purnell
3671 * freeglut-1.3/freeglut_structure.c: Fixed bug list code.
3672 * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3673 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3674 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3675 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3676 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3677 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
3678 freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c,
3679 genfonts/Makefile.am, genfonts/genfonts.c, genfonts/genstroke.c,
3680 include/GL/freeglut.h, include/GL/freeglut_internal.h: Removed glib
3682 * configure.in, freeglut-1.3/Makefile.am, genfonts/Makefile.am: The
3683 build system now looks for X.
3685 2001-07-27 Steve Baker <steve@sjbaker.org>
3687 * doc, doc/download.html, doc/freeglut.html, doc/freeglut_logo.png,
3688 doc/index.html, doc/ogl_sm.png, doc/progress.html, doc/structure.html:
3690 * genfonts/.deps, tests/.deps: Removed some more files that don't belong
3692 * configure, freeglut-1.3/Makefile, freeglut-1.3/Makefile.in,
3693 genfonts/Makefile, genfonts/Makefile.in, include/GL/Makefile,
3694 include/GL/Makefile.in, include/Makefile, include/Makefile.in,
3695 tests/Makefile, tests/Makefile.in: Removed files checked in in error.
3696 * freeglut-1.3/.deps, freeglut-1.3/.deps/freeglut_callbacks.P,
3697 freeglut-1.3/.deps/freeglut_cursor.P,
3698 freeglut-1.3/.deps/freeglut_display.P,
3699 freeglut-1.3/.deps/freeglut_font.P,
3700 freeglut-1.3/.deps/freeglut_font_data.P,
3701 freeglut-1.3/.deps/freeglut_gamemode.P,
3702 freeglut-1.3/.deps/freeglut_geometry.P,
3703 freeglut-1.3/.deps/freeglut_init.P,
3704 freeglut-1.3/.deps/freeglut_joystick.P,
3705 freeglut-1.3/.deps/freeglut_main.P,
3706 freeglut-1.3/.deps/freeglut_menu.P,
3707 freeglut-1.3/.deps/freeglut_misc.P,
3708 freeglut-1.3/.deps/freeglut_overlay.P,
3709 freeglut-1.3/.deps/freeglut_state.P,
3710 freeglut-1.3/.deps/freeglut_structure.P,
3711 freeglut-1.3/.deps/freeglut_teapot.P,
3712 freeglut-1.3/.deps/freeglut_videoresize.P,
3713 freeglut-1.3/.deps/freeglut_window.P, freeglut-1.3/Makefile,
3714 freeglut-1.3/Makefile.in: Initial revision
3715 * ., AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
3716 TODO, acconfig.h, aclocal.m4, configure, configure.in, freeglut-1.3,
3717 freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
3718 freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
3719 freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
3720 freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
3721 freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
3722 freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
3723 freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
3724 freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_structure.c,
3725 freeglut-1.3/freeglut_teapot.c, freeglut-1.3/freeglut_videoresize.c,
3726 freeglut-1.3/freeglut_window.c, freeglut-1.3/templates,
3727 freeglut-1.3/templates/cpp_template,
3728 freeglut-1.3/templates/header_template, freeglut.dsw,
3729 freeglut.kdevprj, freeglut.lsm, freeglut13.dsp, freeglut13.plg,
3730 genfonts, genfonts/.deps, genfonts/.deps/genfonts.P,
3731 genfonts/.deps/genstroke.P, genfonts/Makefile, genfonts/Makefile.am,
3732 genfonts/Makefile.in, genfonts/Roman.src, genfonts/Roman_M.src,
3733 genfonts/genfonts.c, genfonts/genstroke.c, include, include/GL,
3734 include/GL/Makefile, include/GL/Makefile.am, include/GL/Makefile.in,
3735 include/GL/freeglut.h, include/GL/freeglut_internal.h,
3736 include/Makefile, include/Makefile.am, include/Makefile.in,
3737 install-sh, mkinstalldirs, stamp-h, stamp-h.in, tests, tests/.deps,
3738 tests/.deps/one.P, tests/Makefile, tests/Makefile.am,
3739 tests/Makefile.in, tests/one.c: Initial revision