Commit Graph

892 Commits

Author SHA1 Message Date
spanne
0aedc9e758 Fixed SF bug #1204256: Off-by-one error in X11 mode switching.
The code which changes the X11 video mode has an off-by-one error,
resulting in a wrong mode or segfault. I've refactored the code
slighty to make it hopefully clearer what's going on and corrected
some #ifdefs on the way. Now at least the "One" demo works for me.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@615 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-19 06:54:27 +00:00
spanne
cea3641a13 Fixed SF bug #1204261: Mini space leak when creating an X11 window
(X11 text property values have to be freed after using them)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@614 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-19 06:51:03 +00:00
fayjf
83dcd8b899 Removing a C++ comment and simplifying the string handling
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@613 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-18 12:39:43 +00:00
fayjf
51ce35c19d Misiek\'s changes to fix Game Mode--getting display settings under Windows
and setting the window size correctly on all operating systems.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@612 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-17 16:50:30 +00:00
puggles
3dda2ed20b 2.4 Release Candidate 2
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@611 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-16 01:12:49 +00:00
puggles
35efb72763 Mark for 2.4 RC 2
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@609 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-16 01:09:39 +00:00
fayjf
0f8a824bc7 Removing two unused variables so this will compile on Linux with -Wall
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@608 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-13 12:54:38 +00:00
fayjf
413f5c131e Updating the ChangeLog ...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@607 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-12 15:54:11 +00:00
fayjf
90cd4fe1c1 Takeshi Nishimura\'s menu changes--menus should now work properly. Use
the GLUT \"GLUTmech\" and \"walker\" demos to test them.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@606 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-12 13:00:49 +00:00
fayjf
74da1b5cf9 Takeshi Nishimura\'s menu fixes
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@605 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-12 02:01:01 +00:00
puggles
042916af53 2.4.0 Release Candidate 1 Released
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@604 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-09 01:43:07 +00:00
puggles
ba265639ae Freeglut 2.4.0 Release Candidate 1
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@603 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-09 01:40:28 +00:00
spanne
ca4f47277d Fixed a cuboctahedron vertex, implemented wire mode for that shape.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@601 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-06 15:44:34 +00:00
spanne
4257efb83f Necessary compilation fixes for newer GCCs (e.g. 3.3.5, 4.0).
Side effect: The shapes demo has a new 'i' key now.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@600 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-06 15:39:24 +00:00
fayjf
53c452c7a2 Updated the ChangeLog again ...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@599 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-05 17:34:00 +00:00
fayjf
c8f9a63d03 Replacing the original \"freeglut\" \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many thanks to the OpenGLUT community for writing it. The copyright notice stays in the program.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@598 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 21:02:22 +00:00
fayjf
29339a69ee Changing hard-coded constant (number of mouse buttons = 3) to a \"glutDeviceGet\" call in two places under X11
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@597 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 13:19:38 +00:00
fayjf
f2813782f5 Changing the version number from 2.0 to 2.4.0 ... do we need to add any new interface functions?
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@596 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:59:45 +00:00
fayjf
2e3bcfe04e Removing an unused variable
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@595 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:57:57 +00:00
fayjf
7198d2443f Adding a comment on why \"freeglut\" differs from GLUT in a particular way
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@594 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:55:56 +00:00
fayjf
3f4250d748 Removing an unused function
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@593 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:53:48 +00:00
fayjf
47259d1983 Making the \"key repeat\" initialization consistent with the rest of its usage; also making the \"initDisplayString\" ever-so-slightly mroe general
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@592 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:51:53 +00:00
fayjf
da057e797e Updating the ChangeLog and TODO files in preparation for the upcoming release
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@591 7f0cb862-5218-0410-a997-914c9d46530a
2005-05-04 12:38:41 +00:00
fayjf
6fad66f7dd Adding a \"TODO\" comment about dynamically allocating joystick buttonj and axis arrays
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@590 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-29 13:35:06 +00:00
fayjf
5c37eb4026 Updationg the ChangeLog ...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@589 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-29 13:22:18 +00:00
fayjf
4f2f270b9a Adding a \"README.Win32\" file with instructions on how to install \"freeglut\" under Windows.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@588 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-28 19:47:20 +00:00
fayjf
33a4d1473a Adding Window Exit event handling to the Windows code; also adding a note that eventually it would be good to handle the Window Entry event
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@587 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-28 14:42:26 +00:00
fayjf
b16eb7cc2f Fixing bug [ 1111218 ] fullscreen not working
Better late than never.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@586 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-27 17:27:20 +00:00
fayjf
819c712006 Fixing Bug Report [ 1160442 ] glutGet(GLUT_ELAPSED_TIME) is too granular
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@585 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-27 16:02:31 +00:00
fayjf
0bd8456a65 Fixing the typecasts on the callback fetches and invocations to allow \"freeglut\" to compile with GCC 4.0
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@584 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-26 17:44:57 +00:00
fayjf
cd7f74dca3 Fixing erroneous implementation of Takeshi\'s fix
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@583 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-26 15:52:27 +00:00
fayjf
0a1ca74613 Changing include path from relative to absolute to support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@582 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-26 13:38:27 +00:00
fayjf
7a4f95e49d Adding \"LISEZ-MOI\", the French version of \"README\"
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@581 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-26 13:08:51 +00:00
fayjf
839f0c0a98 Updating the ChangeLog ... it seems to be something of a stepchild if we\'re not careful.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@580 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-25 14:55:22 +00:00
fayjf
3baca83139 Yuri D\'Elia\'s changes to get the virtual maximum screen extent instead of the actual screen size.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@579 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 20:35:24 +00:00
fayjf
a972964124 Yuri D\'Elia\'s changes to the game mode window
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@578 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 20:29:55 +00:00
fayjf
ddda7ab09f Change a hard-coded number to a defined constant and add some initializations
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@577 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 18:18:29 +00:00
fayjf
401e4369e5 Removing duplicate cursor code. This and the previous change (in freeglut_main.c) apparently got combined.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@576 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 15:23:12 +00:00
fayjf
437bb127b4 Updating the ChangeLog to reflect activity over the past few months
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@575 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 15:15:52 +00:00
fayjf
43f57a35bb Trying again to change \"fgStructure.Window\" to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to \"fgStructure.CurrentMenu\" for easier maintenance.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@574 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-22 14:17:31 +00:00
fayjf
a72757e31d Updating the ChangeLog as a means of testing pCVSc
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@573 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-15 13:28:16 +00:00
fayjf
073c39afd2 Testing!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@572 7f0cb862-5218-0410-a997-914c9d46530a
2005-04-15 13:16:33 +00:00
brianp
baa96828be added comment about AUX flags
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@571 7f0cb862-5218-0410-a997-914c9d46530a
2005-03-23 15:14:32 +00:00
brianp
0090d41ba9 fixes for menus being attached to multiple buttons/windows (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@570 7f0cb862-5218-0410-a997-914c9d46530a
2005-02-16 00:52:23 +00:00
brianp
cd34db4902 added error check (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@569 7f0cb862-5218-0410-a997-914c9d46530a
2005-02-16 00:49:28 +00:00
brianp
5653791bd0 AUX buffers for Windows (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@568 7f0cb862-5218-0410-a997-914c9d46530a
2005-02-15 14:49:39 +00:00
brianp
fd3bf94540 Aux color buffer support. Pass one of GLUT_AUX[1234] to glutInitDisplayMode.
Only implemented/tested on GLX, not Windows.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@567 7f0cb862-5218-0410-a997-914c9d46530a
2005-02-11 15:22:09 +00:00
brianp
e9be78b6fc Fix object/function pointer inconsistencies which are a problem for gcc 3.4.2.
Added GLUTproc type, returned by glutGetProcAddress().


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@566 7f0cb862-5218-0410-a997-914c9d46530a
2005-02-11 15:18:04 +00:00
spanne
3506d4ac40 autoconf 2.58 is enough
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@565 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-23 18:08:20 +00:00
spanne
f4eff70e98 Stylistic change only (added "do { ... } while( 0 )" around multi-statement macros)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@564 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-23 17:52:16 +00:00
spanne
61ddeb2e75 Testing for errno.h is overkill. :-)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@563 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-23 17:44:58 +00:00
spanne
29e57cdace Windows platforms only: Merged some cursor-related code from John Fay
(with minor changes)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@562 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-23 17:38:33 +00:00
spanne
b1e9a6e16d Hopefully removed all damage done by commits without merge
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@561 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-05 14:28:22 +00:00
spanne
ac2e30aecd Reworked the X11 part of glutSetCursor, fixing bug #764187 (Variable mouse
pointers don't work) on the way:
   * Use slightly more compatible cursor shapes for GLUT_CURSOR_RIGHT_ARROW
     and GLUT_CURSOR_LEFT_ARROW.
   * Refactored and fixed the erroneous code for GLUT_CURSOR_NONE.
   * Removed the incorrect use of XFreeCursor and use a cache of cursors
     instead. Cursors are never freed now, we could do this e.g. via
     reference countig if this is really needed.
   * Fixed error handling.
   * Unknown cursor types are an error now.
   * Now the window state always corresponds to the wanted cursorID, even in
     the case of GLUT_CURSOR_FULL_CROSSHAIR.

NOTE: I am not sure where the cursor cache should really reside, currently it
is simply a file-local variable.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@560 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-05 13:11:30 +00:00
spanne
1aa0b5ccf6 Fixed part of bug #926883 (Video mode matching code, memory leaks,
fullscreen), i.e. issue warnings when XF86VidModeFOO fails.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@559 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 17:11:33 +00:00
spanne
c70e6634ff (234) Fixed part of bug #926883 (Video mode matching code, memory leaks,
fullscreen): Now we first try to get an exact mode match, ignoring the
refresh rate if none could be found. This way the X11 part and the WinDoze
behave similarly. NOTE: We still don't behave like GLUT, because it has a
wider notion of "best" match. We have to refactor and extend freeglut quite
a bit to do that.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@558 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 16:49:37 +00:00
spanne
f7ef083831 Fixed part of bug #926883 (Video mode matching code, memory leaks,
fullscreen), i.e. memory leak caused by not freeing the mode lines
returned by XF86VidModeGetAllModeLines


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@557 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 14:14:56 +00:00
spanne
2e4ddfd047 Improved error message a bit when no suitable visual could be found
(X11 only).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@556 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 12:42:09 +00:00
spanne
d52d41a3e3 autoconf'd vfprintf
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@555 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 12:02:42 +00:00
spanne
162255a20a Removed redundant #include
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@554 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 12:00:21 +00:00
spanne
a954e5c33e autoconf'd <errno.h> handling and removed an unused '#include <sys/stat.h>'
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@553 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 11:35:18 +00:00
spanne
3817d97ab7 autoconf'd <limits.h> and <sys/param.h> handling, removing MIN/MAX
macros on the way.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@552 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 11:22:59 +00:00
spanne
a425a411af Cosmetics.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@551 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 10:58:18 +00:00
spanne
c6d8295732 autoconf'd <fcntl.h> and <sys/ioctl.h> handling
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@550 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 10:57:58 +00:00
spanne
45a783693d Improved <sys/typed.h> / <unistd.h> handling as suggested by the
autoconf docs.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@549 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 10:35:36 +00:00
spanne
11192577c4 Fixed <sys/time.h> / <time.h> handling as suggested by the autoconf
docs.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@548 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 10:24:15 +00:00
spanne
561481f9d2 Moved '#include "config.h"' to freeglut_internal.h, we will need it
there soon and it makes everything a bit shorter.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@547 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 10:13:27 +00:00
spanne
6ffeb69190 Resurrected my recent additions which were nuked by the previous
commit, adding the latest change on the way.   :-(


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@546 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 09:13:26 +00:00
spanne
810a67a80f Removed acconfig.h, it is deprecated and we don't need it.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@545 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 09:07:00 +00:00
spanne
8afaa43f1d Make it compile again with "-Wall -pedantic -Werror", redoing quite a
few things I've fixed already a few days ago. Have today's commits
been done by copying instead of merging? :-(


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@544 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 08:44:48 +00:00
puggles
cfef5bfb34 Changes remove duplicate menu code from "freeglut_window.c" and put it into one place in "freeglut_menu.c" where it belongs. - John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@543 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 02:11:12 +00:00
puggles
65980f45ac General ChangeLog Updates
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@542 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 02:05:43 +00:00
puggles
ee6d3a9a1c Adding initialization checking to all GLUT interface functions and removing asserts from the rest of the code - John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@541 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-03 02:04:45 +00:00
spanne
9c68fad27d Added missing files from "src" subdirectory to dist.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@540 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 18:35:44 +00:00
spanne
e691f6301c Synched with project member list on SourceForge
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@539 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 16:43:45 +00:00
spanne
90652ea32b Modernized configure.ac a bit and added a rule to Makefile.am to
update libtool. Note that all gcc compiler warnings are now on by
default.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@538 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 16:39:40 +00:00
spanne
a38edbb898 Make "gcc -Wall -pedantic -Werror" happy.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@537 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 16:09:55 +00:00
spanne
207d5dc3c9 Ignore files generated by autoscan.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@536 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 14:17:28 +00:00
spanne
eb7b024f0c Renamed "configure.in" to the officially preferred "configure.ac".
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@535 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 14:01:29 +00:00
spanne
67b8b16ea9 Removed unused stamp-h* files, configure generates them (a single
stamp-h1, to be exact).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@534 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 13:41:33 +00:00
spanne
17757f4131 Added eMbedded Visual Tools project/workspace files to distribution.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@533 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 13:39:49 +00:00
spanne
c0b1e6178d Ignore distribution tar files
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@532 7f0cb862-5218-0410-a997-914c9d46530a
2005-01-01 13:37:11 +00:00
spanne
ad7e1384cc Fixed first bug of #1064195 (two things when using signals): Don't
issue a warning about select when a non-blocked signal was caught.
This makes sense and is more compatible with GLUT.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@531 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 17:26:13 +00:00
spanne
bbacc741c5 Fixed bug #1040435 (glutBitmapString() bug).
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@530 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 16:35:23 +00:00
spanne
5448913d6e Alas, the ChangeLog has not the usual ChangeLog format, so tell
(X)Emacs about that fact.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@529 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 13:59:20 +00:00
spanne
a3e75b2f8c Fixed bug #1045054 (KeyReleaseMask typo).
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@528 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 13:55:26 +00:00
spanne
dda2b9bdcd Fixed bug #1087642 (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@527 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 13:51:35 +00:00
spanne
75ef445990 Fixed bug #1079530 (glutGetProcAddress and geometric objects).
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@526 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 13:44:06 +00:00
spanne
14f372e2fa Improved ignorance.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@525 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-31 13:42:51 +00:00
puggles
277a549cc6 Some assertion changes / removals from Dr. John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@524 7f0cb862-5218-0410-a997-914c9d46530a
2004-12-17 14:57:28 +00:00
brianp
8fd086e068 joystick init fixes (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@523 7f0cb862-5218-0410-a997-914c9d46530a
2004-10-06 14:54:13 +00:00
brianp
20ecbd409c updated comments (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@522 7f0cb862-5218-0410-a997-914c9d46530a
2004-10-05 22:07:05 +00:00
brianp
2a1a8f1a36 improved comments and mouse coord adjustments (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@521 7f0cb862-5218-0410-a997-914c9d46530a
2004-10-05 22:06:22 +00:00
brianp
6f4c8c6ed3 more clean-ups, fixes from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@520 7f0cb862-5218-0410-a997-914c9d46530a
2004-10-05 18:34:23 +00:00
brianp
f4fbf7b21f font updates from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@519 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-23 17:48:49 +00:00
brianp
fc9f0b06c4 more updates from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@518 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-23 17:42:38 +00:00
brianp
8e94eb798b assorted updates from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@517 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-23 14:34:05 +00:00
puggles
228c4bd617 Fix to glutInit() command-line argument compaction - Patch #1027724 from takeshi2
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@516 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-15 12:09:21 +00:00
brianp
a82a0dff4a more updates from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@515 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-13 18:39:10 +00:00
brianp
447cac3357 some function renaming, etc (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@514 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-13 18:09:00 +00:00
brianp
413bd1e861 joystick updates from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@513 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-10 15:51:10 +00:00
brianp
5bd18d1bcd updated comments from John Fay
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@512 7f0cb862-5218-0410-a997-914c9d46530a
2004-09-10 14:14:30 +00:00
puggles
7e23a609ff Fix a game mode crashing bug, conditional compilation for Windows, and comment out some diagnostic prints (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@511 7f0cb862-5218-0410-a997-914c9d46530a
2004-08-11 15:56:20 +00:00
puggles
34d1c10c25 Implements Richard Rauch's request that the warning about indirect rendering contexts be suppressed for his BSD operating systems.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@510 7f0cb862-5218-0410-a997-914c9d46530a
2004-08-05 01:12:50 +00:00
puggles
f20f677500 Someone used C++ style comments in a C file... tisk tisk...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@509 7f0cb862-5218-0410-a997-914c9d46530a
2004-08-05 01:12:13 +00:00
puggles
0c7fad1ec5 Bugfix for "glutBitmapString" so that it now handles end-of-line characters properly (Richard Rauch)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@508 7f0cb862-5218-0410-a997-914c9d46530a
2004-08-05 01:11:21 +00:00
puggles
d916321fd4 Incremental update ... (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@507 7f0cb862-5218-0410-a997-914c9d46530a
2004-08-05 01:10:14 +00:00
brianp
49b265eba4 give menu windows the title 'freeglut menu' (helps Chromium)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@506 7f0cb862-5218-0410-a997-914c9d46530a
2004-06-29 15:50:57 +00:00
brianp
c3a84ddd90 move glXMakeCurrent() to after the point where the window's title is set (helps Chromium)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@505 7f0cb862-5218-0410-a997-914c9d46530a
2004-06-29 15:50:26 +00:00
puggles
290f7a43e8 Add one more header file to MSVC files
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@504 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-13 02:11:26 +00:00
puggles
92180def60 John Fay: Direct/indirect rendering context change, fix a bug that somebody reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove a false deprecation of a function.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@503 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:33:12 +00:00
puggles
994e73cad8 John Fay: A bug fix re: behavior of the code when the user clicks the "x" to close a window, and commentary to a message type with fixes for a Windows event processing bug.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@502 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:31:31 +00:00
puggles
ae113a8850 John Fay: Implement the modified logic of the direct/indirect rendering context.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@501 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:29:27 +00:00
puggles
c28e19b830 John Fay: Implement the upper end of the bitmapped fonts (beyond ASCII code 127). The fonts are very close to the GLUT fonts.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@500 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:26:42 +00:00
puggles
f0e7e663b5 John Fay: These files implement the teapot for WINCE.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@499 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:23:00 +00:00
puggles
d6eae7134a John Fay: Remove some obsolete defined symbols.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@498 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:17:46 +00:00
puggles
c46ead491e John Fay: Add "freeglut_glutfont_definitions.c" to the build and tell it to look in the "include" directory for the <GL/freeglut.h> file.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@497 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-12 00:17:17 +00:00
puggles
d3fad7828e Fix broken link to CVS instructions
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@496 7f0cb862-5218-0410-a997-914c9d46530a
2004-05-02 04:06:56 +00:00
puggles
107b2d39ae Fix underline behavior due to typo (a.hover should be a:hover) ;)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@495 7f0cb862-5218-0410-a997-914c9d46530a
2004-04-13 00:35:38 +00:00
sjbaker
a19cbfa13a Removed unnecessary initialisation.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@494 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-28 15:51:33 +00:00
sjbaker
3905363c58 Added a cullface test.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@493 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-28 15:44:22 +00:00
drgoldie
c23c129b0e removed .cpp file (using LoadLibrary() instead)
removed modified gx.h file
cleaned up all // and tabs


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@492 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-22 10:19:25 +00:00
puggles
3e6bc9b199 Add "you must subscribe before you can post to our mailing lists" and correctly capitalize "XFree86".
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@491 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-18 18:43:08 +00:00
puggles
13f6488430 Add "mailto" tags to the mailing list links.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@490 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-17 17:47:41 +00:00
nigels
101fd08582 Prevent exceeding array bounds in X11 key-repeat detection
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@489 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-17 04:02:21 +00:00
drgoldie
041d8017dc replaced all tabs with 4 spaces
replaced all // with /* */ block
fixed freeglut_gx.cpp file with #if TARGET_HOST_WINCE


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@488 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-16 08:38:28 +00:00
nigels
c233e0f5db Whitespace conversion - tabs to 4 spaces
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@487 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-16 00:17:11 +00:00
nigels
4e304b51b9 Revert X11 fgCloseWindow to 1.38 pre-offscreen implementation.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@486 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-16 00:15:05 +00:00
drgoldie
154a985699 fixed mouse position and keyboard mapping.
added c-wrapper cpp file for GAPI.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@485 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 15:23:29 +00:00
drgoldie
30aa3f91c3 added support for WindowsCE (building on top of klimt)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@484 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 13:42:20 +00:00
nigels
11d357efc4 Repeat-key handling for Win32
Utilise both FreeGLUT state and per-window filtering modes


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@483 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 11:31:19 +00:00
rkrolib
3ff83f17c8 Forgot to update the ChangeLog for the benefit of those who do not have
CVS or Web access.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@482 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 06:19:33 +00:00
rkrolib
b3f3ea2cf0 Completed removal of all support for the offscreen rendering.
If you wish to do offscreen supportin a portable manner, you will
no longer be able to do so with current versions of freeglut.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@481 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 06:16:47 +00:00
rkrolib
a4e8aad90c Removed Makefile support for the offscreen demo.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@480 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 06:10:27 +00:00
rkrolib
68abc58465 Removed offscreen demo program.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@479 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 06:08:08 +00:00
nigels
d566de6bc8 Provide local include path to automake for GL/freeglut.h etc
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@478 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-15 00:07:37 +00:00
nigels
121d94e35c Code formatting tweak
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@477 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-14 04:37:17 +00:00
nigels
6065b3da65 Resolution of X11 key-repeat handling
glutSetKeyRepeat is global to all FreeGLUT windows in the application
glutIgnoreKeyRepeat is a per-window over-ride

To avoid nasty global X11 state interaction, or GLUT-style
event queue filtering - the approach in FreeGLUT is to
use the current key state XQueryKeymap to detect and
ignore KeyRelease/KeyPress pairs that are auto-generated.

See also:
http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@476 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-14 04:36:02 +00:00
nigels
a291d1e0d3 Stripped out tabs and end-of-line whitespace
Differences are in whitespace only


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@475 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-14 03:47:46 +00:00
nigels
c203af6503 Resolve [ 853044 ] FreeGLUT menus on Win32 in task bar and ALT-TAB list
CreateWindowEx(WS_EX_TOOLWINDOW,...) extended style suppresses the popup menu window from the taskbar or ALT-TAB list


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@474 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-10 05:11:04 +00:00
nigels
8ef6187d85 ignoreKeyRepeat mode in FreeGLUT is TRUE by default
For compatibility with GLUT, the mode should be FALSE by default
This issues was probably undetected until now because ignoreKeyRepeat didn't yet work.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@473 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-08 06:06:57 +00:00
nigels
9e4156f49f Resolved bug #869765 glutIgnoreKeyRepeat() Fix (Win32)
glutIgnoreKeyRepeat now behaves correctly on Win32


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@472 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-08 05:49:55 +00:00
nigels
7542599aa9 C++ style comment converted to C style comment
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@471 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-08 05:15:15 +00:00
nigels
1523c69539 Include freeglut header via <GL/freeglut.h> rather than "../include/GL/freeglut.h"
This allows some additional flexibility with file layout.
It should be the responsibility of the build environment, rather than at source level.
This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@470 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-08 05:05:38 +00:00
nigels
def83e15e9 According to John F. Fay:
The variable "num_axes" should be "joy->num_axes".


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@469 7f0cb862-5218-0410-a997-914c9d46530a
2004-03-03 03:35:42 +00:00
rkrolib
15c7f0ba24 Removed nonstandard #warning constructs. Converted to XXX comments.
(These are warnings about gamemode features not working the same on
some systems as on others.  The semantics of gamemode are dubious,
since it was never formally documented, and has for a long time
worked in different ways on different systems, so it is arguable that
there is nothing really wrong with systems that don't support
resolution-changes.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@468 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-20 23:31:41 +00:00
rkrolib
517a32d77d Fixed the bug where glutDisplayFunc() was effectively invoking
glutPostRedsiplay().  This is wrong on the face of it, and may be
at root for some of the annoying "timing" issues we've had with
redisplay events being called inappopriately.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@467 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-20 05:05:35 +00:00
rkrolib
3b23a58148 I had rubbed the offscreen/Makefile.am off from the shapes demo. I forgot
to remove a couple of references to the shapes.c and shapes.dsp (.dsw?)
files.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@466 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-19 11:13:11 +00:00
rkrolib
813e5ed5ac Added "offscreen" demo, a very simple program that produces an onscreen
window and, upon command, renders a similar offscreen display and writes
the result to disk.

Also, modified the build structure for UNIX_X11 to autobuild the demo.
(Not done for WIN32 at this time.)

Also, forgot to previously commit the updated freeglut_ext.h include.
Eeep.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@465 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-19 10:09:29 +00:00
rkrolib
819e75a0f3 Minor comment adjustments.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@464 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-18 06:52:50 +00:00
nigels
192d0ba74e Refinements to comments
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@463 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-18 02:51:04 +00:00
rkrolib
a1547dde81 Normalized the style of the new joystick a bit.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@462 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-14 08:51:54 +00:00
rkrolib
c03f197329 For some reason, the X "expose" event handler was *directly* calling
the display handler in the client.  (Okay, it was calling a function
that operates on the window handle.)

If you have any complexity to the display code, this can be painful
to watch.  I can't think of a good reason to do the display immediately,
so I fixed the code to do a glutPostRedisplay().


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@461 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-14 03:29:57 +00:00
rkrolib
70f0afbc07 A commit on behalf of John (in turn, and in part, also on behalf of
Thierry).

 * Renamed some of the old PLIB functions to have glut* prefixes.
   (I guess that there is some thought about exporting them to the
    API.)

 * Changes from Thierry for FreeBSD support, and/or results of testing?

 * I re-merged an XXX comment re. NetBSD/amd64 and propogated a
   comment on a duplicated #define for FreeBSD.  We need the GNU
   autoconfig stuff to be updated by someone who groks it, now.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@460 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-14 03:23:43 +00:00
rkrolib
a6d19e891d Commit of John's tidying-up of a comment, closing out an XXX comment that
I wrote.  Thanks, John.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@459 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-09 14:54:14 +00:00
rkrolib
1101bb7b23 ...AND a tab snuck into my changes for GLUT_OFFSCREEN support. Mea culpa.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@458 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 12:12:46 +00:00
rkrolib
5f324aa73b Ooops. We don't want people to be able to create a subwindow of an
offscreen window.  (^&  This is no longer permitted.

(Actually, it would be nice if it would work, but I don't think that you
can subwindow a pixmap in UNIX_X11, and assume that subwindowing offscreen
doesn't work on WIN32, either.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@456 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 12:10:26 +00:00
rkrolib
401cff3240 Added entries for the joystick updates and the offscreen experimental
support.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@455 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 11:36:39 +00:00
rkrolib
1559d50f18 Changed a couple of XXX comments. Added a new one. These all the nest of
#ifs in the BSD section of the new joystick code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@454 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 11:22:16 +00:00
rkrolib
f464318e8d "Heavy editing" by John to his CallbackMaker demo.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@453 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 10:57:17 +00:00
rkrolib
bfae88650c John added a #pragma to the joystick code for WIN32 users.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@452 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 10:52:08 +00:00
rkrolib
190a260143 Adds GLUT_OFFSCREEN as a display mode option. This includes:
* Recognizing the mode when you call glutCreateWindow().
   (Offscreen looks and acts like a top-level window in many
   ways.)

 * During the life of the offscreen "window", various window-management
   functions are modified to respect offscreen status.

   (Excepting reshaping windows, there is not much useful interpretation
    for managment of offscreen areas.  Reshaping is possibly more work
    than it's worth to support, and GLUT specs allow us to ignore the
    request.)

 * Cleanup for "offscreen" windows is a little different than for regular
   windows.

Windows still don't start up quite ideally.  Offscreen windows should
probably get a reshape event, but not a display.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@451 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-07 10:40:59 +00:00
rkrolib
3119df3a6c Big import of updated joystick code from PLIB, with permission from
Steve Baker.  Most of the adaptation done by John, with a little bit
of testing and changes by Thierry Thomas and myself.  Seems to compile on:

  WIN32
  Red Hat LINUX
  FreeBSD
  NetBSD/amd64


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@450 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-05 23:31:09 +00:00
rkrolib
46f090da2c Close a bug whereby events can be delayed arbitrarily long if they get
caught between the socket and the client-side queue on X, sometime
after glutMainLoopEvent()'s loop quits and before the sleep code is
invoked.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@449 7f0cb862-5218-0410-a997-914c9d46530a
2004-02-01 09:18:59 +00:00
rkrolib
377940880c Ammended a comment on fgCheckJoystickCallback().
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@448 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-16 12:44:50 +00:00
rkrolib
889ff65585 Minor style normalizations to minimize the diffs between *now* and from
before John's changes.  No functional changes:

 * Removed some hard TABs introduced.
 * Removed some spaces-at-end-of-line introduced.
 * A couple of function calls were touched up.

I did this separately only because I don't like messing with other people's
commits.  (I don't like feeling like the style police, either, but when
I mess with the commit, there's no room for reverting my interference if
it is deemed undesirable...)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@447 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-16 00:22:43 +00:00
rkrolib
5e022b0578 Some changes from John.
The main attraction seems to be correcting a bug with the action-on-
window-close.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@446 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-16 00:17:23 +00:00
nigels
96d0286492 Minor fix for website nav panel - FreeGLUT logo location
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@445 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 22:47:21 +00:00
nigels
2a3ccb7132 Changed CSS links to absolute URL
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@444 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 15:59:45 +00:00
nigels
b9b95cdc8c Win32 glutIconifyWindow() patch contributed by John F. Fay
Restrict resize callbacks to visible windows
When iconified via glutIconifyWindow(), don't pass (0,0) to resize callback
Note that minimising the window via the menu or minimise button is not yet resolved.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@443 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 15:49:14 +00:00
nigels
c342b2fe2a Minor tweak to generateFooter()
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@442 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 15:04:25 +00:00
nigels
10d29e38ed Updated entire website to be XHTML 1.0 Strict XML compliant
Some reorgansiation of navigation structure.
Developer Info "dinfo.php" and User Info "uinfo.php" now obsolete.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@441 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 14:44:52 +00:00
nigels
0245ec89eb Added freshmeat and openl links to navigation panel
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@440 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-05 14:43:50 +00:00
nigels
2c46236afb Added Gentoo ebuild link
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@439 7f0cb862-5218-0410-a997-914c9d46530a
2004-01-01 02:03:56 +00:00
puggles
19a2b0f841 Added the API from the docs directory. Updated the stylesheet with header styles. Noted in the news that the API is now online. Updated the user and developer info pages with a better looking "Documentation" section.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@438 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-31 03:21:06 +00:00
rkrolib
be6350a54f Split a few overlong lines.
Adjusted some spacing in a few spots to be more consistant with
freeglut style.  Including one unindented if() body.

Eliminated a dead variable.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@437 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 11:50:58 +00:00
rkrolib
ba4088e1f2 Changed several #ifdef's to proper #if's. Eeek. Oook.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@436 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 11:43:24 +00:00
rkrolib
5d5ba0e9e9 Hm... I thought that I committed this last night. What's up?
This is Nigel's modified fgSleepForEvents(), essentially.  Take 2.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@435 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 10:57:01 +00:00
nigels
4f23cc54d6 Added pre-built DevPak link for Dev C++ users
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@434 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 09:53:12 +00:00
nigels
4a51a82b08 Three supported win32 compilation environments: MSVC, Cygwin and MingW32
#pragma is specific to MS compiler


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@433 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:55:39 +00:00
nigels
176108b5eb Explicitly cast function pointer to (void *) in SET_WCB since all callbacks stored as void pointers
suppress gcc -Wall -pendantic "noise"


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@432 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:51:32 +00:00
nigels
2ed416a592 Typesafe handling of temporary window destroy callback
Move assignment out of while test, scope temporary inside loop
Be explicit about assignment/comparison in if test for gcc peace of mind
suppress gcc -Wall -pendantic "noise"


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@431 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:49:56 +00:00
nigels
54ba1965ee Three supported win32 compilation environments: MSVC, Cygwin and MingW32
The windows mmsystem header need only be included internally to freeglut
strdup vs _strdup is specific to the MS compiler


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@430 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:28:13 +00:00
nigels
b5452aeafe strlen expects (char *), rather than (unsigned char *)
suppress gcc -Wall -pendantic "noise"


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@429 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:24:05 +00:00
nigels
1fdd04c554 Replace assignment of array to struct with field-by-field assignment
suppress gcc -Wall -pendantic "noise"


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@428 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:22:11 +00:00
nigels
ddd877b469 glutBitmapString and glutBitmapLength expect (unsigned char *) rather than (char *)
suppress gcc in -Wall -pendantic "noise"


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@427 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:20:03 +00:00
nigels
4a7c8b153d Replace #ifdef WIN32 with #ifdef TARGET_HOST_WIN32, as per FreeGLUT convention
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@426 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:17:07 +00:00
nigels
4590373e8d fgState.FPSInterval is unsigned int (GLuint), environment variable GLUT_FPS can be negative
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@425 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:14:54 +00:00
nigels
d07ef326cd OpenGL context is not made current on Win32 until fgSetWindow is called.
This resolves severe problems observed in GLUI applications.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@424 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 02:01:53 +00:00
nigels
3585f68a7f #pragma message is only understood my MS compiler
#if defined(_MSC_VER) .. #endif


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@423 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 01:58:19 +00:00
nigels
4be32e042b Resolve bug 864978 - GLUT_OWNS_JOYSTICK unhandled
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@422 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 01:54:44 +00:00
nigels
5cc127d807 Tidy nested if/else to suppress gcc -Wall -pedantic noise
gcc suggests explicit braces to avoid ambiguous `else'


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@421 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-30 01:52:07 +00:00
puggles
5a8204816b Add a newline between the bug reports and the feature requests.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@420 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-29 21:11:33 +00:00
puggles
5e4c0b6c11 Add in a "view PHP source" option to all webpages that links to CVS. Clean up the template file a little more for kicks. :)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@419 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-29 19:02:34 +00:00
rkrolib
4dcf24793a Missed a set of commands to put in a "typewriter" font.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@418 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-25 17:24:27 +00:00
rkrolib
95fc4f4d4d Use "bzcat ... | tar -xvf -" instead of "tar -jxvf ...".
Also, changed to follow the convention that stuff-you-type is in
a "typewriter" font (use <tt> tags).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@417 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-25 17:23:08 +00:00
rkrolib
2d4c487aff Some cleanup and touchup to the web-pages.
Nothing exciting.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@416 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-25 16:22:03 +00:00
rkrolib
e72b2158c0 Configuring with "--enable-warnings" broke three demos:
* CallbackMaker defined, but did not use, the Joystick() function
   (a callback for the freeglut joystick interface).  I uncommented
   the callback-registration.  I assume that it was commented out
   because it was spammy.  (freeglut does joysticks by polling with a
   timer.)  Perhaps a longer interval than 10ms would be advisable?

 * fractals.c used strcpy() without getting the prototype.  Added
   #include <string.h> at the top.

 * fractals_random.c had the same problem as fractals.c.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@415 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-25 14:39:38 +00:00
rkrolib
64443c7c4b Moved the window-resize code so that it happens whenever there is a
pending resize for the window, whether or not the window is visible or
in need of a redisplay.  The resize is now done before the visibility
and need-to-redisplay checks.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@414 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-23 08:39:44 +00:00
rkrolib
38fb597973 Got rid of those int/ptr warnings on AMD64. (The code was
casting an {int} to a pointer, and later retrieving the int
by another cast.  It should be safe provided that pointers
are at least as big as {int}, but GCC was giving warnings on
my system, so...fixed.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@413 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-22 22:13:20 +00:00
rkrolib
69c32f5e17 Several test-on-assignment cases have been converted to stop GCC from
complaining about  if( a = get_a_value_for_a( ) ) type code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@412 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-22 21:39:18 +00:00
rkrolib
0687f2f596 Ooops, left some cruft in a comment in the header when committing the
last patch.  Cleaned up.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@411 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-19 01:00:07 +00:00
rkrolib
a7d846c36b Wrote SET_WCB() to set a window callback. This lets us out of using
the FETCH_WCB() as an lvalue (which it shouldn't, since the value of
the FETCH is cast to the correct function-pointer type).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@410 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-19 00:54:27 +00:00
puggles
686cb62330 Change the destination directory of the debug version to "Debug" (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@409 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-15 17:18:37 +00:00
puggles
76a87d1864 Add a newline to "make all make install" so that it'll ... work!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@408 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-14 04:55:28 +00:00
puggles
019099a2a2 Keep from claiming 100% compatibility. Richard pointed out this was false advertising and James needs to be shot three times in the stomach and then beheaded by a spoon that is too big.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@407 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-14 02:04:29 +00:00
puggles
ffcd263378 Fix link to the project interface (was pointing at the old typo3 interface!)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@406 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 20:30:01 +00:00
puggles
280fb4a52f Add a placeholder message until we update this page with real progress and timeline information.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@405 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 19:17:08 +00:00
puggles
8407d17ee9 Initial import
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@404 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 18:58:30 +00:00
puggles
ae6a201f0e Initial import of the web page -- Release of 2.2.0
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@403 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 18:56:30 +00:00
puggles
3212d13152 Uh, re-add since the module works.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@402 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 04:51:03 +00:00
puggles
1fe055088a Undo the pseudo-module now that I've added a real web-src module
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@401 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 04:47:12 +00:00
puggles
878f58d35b First try of getting the web page to work via CVS.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@400 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 03:52:54 +00:00
puggles
8625b93f73 Release 2.2.0
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@398 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-13 01:43:57 +00:00
rkrolib
8fdfd1e769 Stripped out TABs that got reintroduced.
There were no changes other than replacing about 10 to 12 TABs with a
visually-suitable number of spaces, so this can probably be blindly treated
as equivalent to the previous versions of the two affected files.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@397 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 22:13:03 +00:00
cjp
103f7e8d87 The deferred window destruction code was destroying the windows in reverse
order.  This cased a crash when the call to glutDestroyWindow() for a sub
windows was immediately followed by a call to glutDestroyWindow() for it's
parent. fgCloseWindows() would call fgDestroyWindow() for the parent first
fgDestroyWindws() would recurse over the children and then fgCloseWindows()
would call fgDestroyWindow() again for the child.

I've replaced the single linked list with one of our two way link list
structures.  I've also moved it into fgStructure because that seemed the
consistent thing to do.

I said the the deferred windows destruction causes more problems then it
solves.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@396 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 21:29:43 +00:00
puggles
a28a6de82f Include project file in the distribution.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@395 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 20:53:14 +00:00
puggles
2cbec9d142 Updates for 2.2.0 RC2
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@394 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 19:56:59 +00:00
puggles
a04ca6e4d8 Add shapes to the Visual C workspace.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@392 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 19:51:11 +00:00
puggles
3d300c8f38 Package the visual C project file with the distribution
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@391 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 19:02:07 +00:00
puggles
d305033c78 Set the version to 2.2.0
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@390 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 18:57:32 +00:00
puggles
5707f479d4 Nigel Stewart's Win32 window-sizing fix for game mode
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@389 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 18:53:06 +00:00
puggles
de8936fe30 Disable/enable lighting in the "one.c" demo (John Fay)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@388 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 18:49:38 +00:00
puggles
9438a576ba Add some essentials to get this program to compile (Nigel)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@387 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 17:05:44 +00:00
puggles
d725e892b8 Update to reflect 2.2.0 release
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@386 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 17:03:09 +00:00
puggles
a24ffcc0bc Note the release of 2.2.0 RC1
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@385 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 01:48:08 +00:00
rkrolib
6a3df5043c John correctly observed that the initialization {OldHeight} and
{OldWidth} in the window structure should be done for both windows
and sub-windows, and the easiest way to do this is in the
freeglut_structure.c:fgCreateWindow() code.  So, transplant one line.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@383 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-11 00:08:49 +00:00
rkrolib
d4f3ec79de Commit of John's change to stop an infinite-loop condition when the
only windows left are freeglut menu windows, and correctly calls exit()
if we drop out of the main loop without having requested any freeglut
extensions to glutMainLoop() handling.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@382 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-10 23:59:45 +00:00
rkrolib
3ae658e166 Two from Nigel:
* Updated shapes.c.  I think that it's just reformatting and the addition
   of some comments.

 * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project file
   for building shapes on WIN32 with MSVC++.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@381 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-07 10:12:22 +00:00
cjp
a9d59e0c78 Added an option to enable gcc compiler warnings.
I've explicitly excluded the one about adding parentheses.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@380 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-03 19:03:13 +00:00
rkrolib
2e4d5de7c0 Touched up several comments, pointing up things that may be worth reflect-
ing upon in the future.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@379 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-03 09:57:01 +00:00
rkrolib
03cf899635 Hrm. I misunderstood the purpose of {window->State.Width} and
{...Height}.  Those are *not* records of the old values, but rather
of the *desired* *new* values, hence it was inappropriate to use them
in ConfigureNotify X11 event handling.  Doing so introduced some new
problems.

So, I created OldHeight and OldWidth in the window State structure,
and *those* do what I require.

I also stripped out the obsolete comment about getting extra/bogus
reshape events.  (Though I maintain that an application should be
robust against them, freeglut should no longer generate them if the
window has not changed size since last reported.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@378 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-03 02:07:36 +00:00
rkrolib
60cc2c79ce Changed Create/ConfigureNotify handling in UNIX_X11:
* Just need to call GETWINDOW() once.  Ooops.  Heh.
 * Update {window->State} with the new size of the window.
 * If the window-size has NOT changed, then do NOT call the Reshape event.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@377 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-02 21:30:02 +00:00
rkrolib
1f312bc035 Added an "XXX" earmark for post-release contemplation. (The point is
definitely in need of consideration, I believe, but is not immediately
a major bug, so I'd rather not mess with it at the risk of postponing
a release "soon".)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@376 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-02 21:14:32 +00:00
rkrolib
642f60f651 Ensure that the time-out for sleeping is never negative.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@375 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-02 21:04:33 +00:00
rkrolib
819e8645b6 Fixed a bug for UNIX_X11 where window reshape events were causing freeglut
to mark the window as *needing* a reshape (which during general display
callback handling would result in effectively a glutReshapeWindow()).

The code is now system-dependant.  It should be abstracted to a function,
but is presently copied in two places.  Sorry.

Also, inverted the order of the associated if()/else check (in both
WIN32 and UNIX_X11 branches) since the former "else" part was a one-line
callback invocation.

This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@374 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-02 15:03:48 +00:00
cjp
d45a86a088 Added missing prototype for new list function.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@373 7f0cb862-5218-0410-a997-914c9d46530a
2003-12-01 17:59:42 +00:00
cjp
e7a19a5546 Timer optimizations.
Made the list of pendinig timers ordered.
Added a free list of used timer structures.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@372 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-28 19:19:59 +00:00
cjp
e6de6c2e6f Timer optimizations.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@371 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-28 19:08:25 +00:00
cjp
5b391a7097 Fixed windows compilation problem with last update.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@370 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-28 12:04:24 +00:00
cjp
b309d468c4 Window close fix.
The default behaiour should now be the same as with glut.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@369 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-27 19:49:53 +00:00
rkrolib
9b36eb081b Added change from Nigel to have resize events cause redraw events in WIN32.
Also slightly reshuffled comments to deal with line-wrap issues.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@368 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-26 01:21:29 +00:00
rkrolib
0dd93cb5e1 John reported, and fixed, a problem that recent changes caused for
the Lorenz demo (seems to be WIN32 specific).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@367 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 17:25:43 +00:00
rkrolib
1e09843db1 Update from John: Removed the freeglut hack of decrementing the
highst-window-ID marker when the highest window is deleted.  (This
was a half-way measure for an idea that was decided to be dubious
in the first place.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@366 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 14:17:05 +00:00
rkrolib
efb92f27a8 Added a new demo (from Nigel) showing some of the basic GLUT geometry
shapes.  "shapes" is the name of the demo.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@365 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 14:10:35 +00:00
rkrolib
e1416ae642 Commit of work from Nigel:
Massive rework of the geometric primitive code.  Includes a new
primitive (cylinder; solid and wireframe) and corresponding update
to freeglut_ext.h for the prototype.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@364 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 13:53:19 +00:00
rkrolib
96ee3c4798 More work from John (sorry for procrastinating):
* We forgot to bump our version number in freeglut_internal.h
   It is now at 2.0.2 (actually, I think that 2.1.0 might be
   a better choice), which is presumably going to be our next
   formal release.  2.0.1 is incorrectly identified as 2.0.0 in
   the header.

 * A typo in a comment has been corrected ("than"/"that").

 * Numerous "manual" checks for callbacks are omitted now, since
   INVOKE_WCB() does this for us.  These were holdovers from the
   pre-INVOKE_WCB() days.  There may be some very subtle changes
   in freeglut behavior, since freeglut used to test the callbacks
   a little earlier in some cases and may have skipped some minor
   things (like changes to the current window) in some special cases,
   otherwise.  It is not believed that any documented behavior is
   broken, and it is unlikely---not to say impossible---that any
   extant applications will detect the change.  It is even possible
   that there is no external behavioral change in freeglut.

   This also significantly simplifies some sections of code that used
   to have conditional execution.  "Unconditional code is simpler code"
   as one of the comments used to say.

 * Lots of XXX commentary is now removed.  Some of it was obsoleted
   by other changes, some by changes from John.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@363 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 04:57:10 +00:00
rkrolib
db9108dfeb Change from John (I removed a couple of spaces from a couple of lines in
his freeglut_internal.h file where they were wrapping in EMACS; otherwise,
the files are exactly as he sent them to me).

The change unifies the WIN32 and UNIX_X11 code by defining our own
window-handle-type in freeglut_internal.h.  This let John rip out some
#if garbage in several places.  The result is clearer code.

Thanks, John!


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@362 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-25 04:21:48 +00:00
rkrolib
354569a7c4 Numerous style normalizations from John:
* Convert "return( value );" to "return value;"
 * Normalize spacing around semicolons.
 * Remove extraneous parens.
 * Split multi-statement lines into multiple lines.  (Mostly things
   of the form: "if( condition ) return;".)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@361 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-21 21:15:58 +00:00
rkrolib
7e7ff3191d All changes are from John, except for:
(a) I re-inserted the meat of a comment that I still feel is relavent.
 (b) I fixed a compile-time error in the UNIX_X11 code where a variable
     is declared after executable code in a block without creating
     a new sub-block for the declaration.

Changes from John include:
 (a) Style revision.
 (b) Changes to postpone the handling of window resizes.

Lots of lines were changed, but I think that thos two cover the ground that
he hit.  See the diffs for details.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@360 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-21 00:49:51 +00:00
cjp
1c7454b49d Lots of stuff that John F. Fay pointed out.
Plus some changes to remove gcc warnings.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@359 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-18 22:09:15 +00:00
cjp
6d21d76b1a Fix spelling mistake in a variable name.
Added a comment for John Fay.
Added the copyright notice for XParseGeometry source.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@358 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-17 21:11:33 +00:00
cjp
a437c328e9 Made Modifers variable global as per glut classic.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@357 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-16 14:10:35 +00:00
cjp
b47a8b1fcc Removed old unused glutInitDisplayString code.
Reformated new glutInitDisplayString and XParseGeometry code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@356 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-16 13:49:49 +00:00
cjp
d906368add Use XParseGeometry for better geometry parsing.
Moved geometry parsing to after fgInitialize() so we can use the screen size
to correctly calculate negative positions in the geometry string.
Copied the code for XParseGeometry from the X11 sources for use in the
Win32 version.
freeglut now passes test1 of the glut test suite.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@355 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-16 01:41:18 +00:00
cjp
d161195cb4 Removed the state variable BuildingAMenu.
Instead pass a new parameter isMenu to fgCreateWindow().
Elsewhere use window->IsMenu.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@354 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 19:25:22 +00:00
cjp
22b6c59f34 freeglut_assert_ready is going to have to go at some point.
But for now I've moved setting fgState.Initalized to GL_FALSE.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@353 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 19:11:09 +00:00
cjp
3f70f7bdf2 Replace TRUE with GL_TRUE and FALSE with GL_FALSE where the type is
GLboolean.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@352 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 19:06:28 +00:00
rkrolib
06174f9086 Normalized the spacing around symbols, for the most part. Ho-hum.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@351 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 17:48:43 +00:00
cjp
e8cfcd2247 Added a call to fgDeinitialize() before the call to exit() in fgError().
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@350 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 16:52:46 +00:00
rkrolib
1fe1473fbb Style normalizations to the joystick code.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@349 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 16:39:46 +00:00
cjp
2b78c976ea Added a new state variable "Initalized".
Replaced referenced to Time.Set with this new variable where appropriate.
fgElapsedTime() now set the start time if Time.Set is false.
Moved glutGet(GLUT_ELAPSED_TIME) handling to before the assert.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@348 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-15 16:24:33 +00:00
rkrolib
6895440554 Normalized the internal header's style a bit.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@347 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 17:46:01 +00:00
rkrolib
26b98ad308 Plowed one more file this morning. Still just trivial formatting issues.
And I left alone the "INIT DISPLAY STRING PARSING" section, since
it still appears to be in flux.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@346 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 15:10:50 +00:00
rkrolib
d83464df48 Yet more trivial style normalizations.
Sorry, but that's all that I'm up to at the moment.  On the plus,
excepting the font_data file (which I've been skipping), up through
this file, I think that the code style is pretty close to uniform.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@345 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 14:59:49 +00:00
rkrolib
53dfc57542 Minor style corrections.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@344 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 14:52:15 +00:00
rkrolib
2b9010b0b1 Minor spacing quibble.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@343 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 14:39:20 +00:00
rkrolib
74e6d246ca Added a brief explanatory note to the X code for GLUT_CURSOR_NONE.
Corrected the indentation of a block of code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@342 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 14:36:27 +00:00
rkrolib
1d2ade2f1c Noted one of a few cases where we do something immediately that could more
efficiently be postponed, quite easily---and which GLUT promises *is* to
be postponed.  (It is unlikely that the difference will break any apps, but
postponing should be easy...)

No real change, just a comment in the code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@341 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-14 11:04:11 +00:00
rkrolib
4c4112fe92 Updated ChangeLog for the day.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@340 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-11 11:55:19 +00:00
rkrolib
b92f1915fe Removal of all remaining TABs in the freeglut *.[ch] files. (I missed a
few in the "one" demo, it seems, and some more crept back into
freeglut_(ext|font).c, presumably due to my own edits when I forgot to
use the "freeglut-c-mode" in EMACS.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@339 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-11 11:52:14 +00:00
rkrolib
4ccdcf6f4e Moved glutInit*() functions ahead of glutInit(). (This is proper use of
glutInit() in general, since it allows the user to override settings via
{argc, argv} command-line params.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@338 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-11 11:20:01 +00:00
rkrolib
48f65ac54d Style normalizations: Removed CRs and hard TABs mostly.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@337 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-11 11:18:16 +00:00
rkrolib
864ea93df3 Corrected the numbering of the ChangeLog (there were two (110)s).
Added entries summarizing my commits since September or late August, for
the benefit of those lacking both CVS and web access.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@336 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-11 09:05:14 +00:00
rkrolib
7621f53262 John's fix for the minimize/close/maximize controls no longer working.
WIN32 expected us to pass the message on up the chain (or do something
else with it), rather than just throwing away the event, for a certain
class of events.  (See the diffs for more details.)

The code is also slightly reformatted from what was previously in the
repository.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@334 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 18:19:53 +00:00
rkrolib
b1c4e6beb8 A *.dsp file for CallbackMaker in the demos.
Plus updated *.dsp and *.dsw files to reflect the new freeglut header
file.

NOTE: The prior version of the *.dsw file does not in fact have CRs.  I
thought that it did.  For consistancy, I am not putting them in in this
version, either.  (At least one person said that his MSVC++ system is
happy with the current files.  If there are problems, we can easily add
the CRs, but that should be a separate commit...)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@333 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 17:04:05 +00:00
rkrolib
6829d65fb3 New demo from John: CallbackMaker.
This demo shows the use of every callback that you can register with
freeglut, and also generates event reports so that you can see what is
happening to the program as it runs.

Not much to look at, but both utilitarian and a practical example.

Please double-check that I updated everything that needs to be updated.
I reran autogen.sh and ./configure, and it built okay for me.  (^&


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@332 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 16:01:05 +00:00
rkrolib
9623350767 Hm. I thought that I already hit this file for style normalization.
Oh well...  Should be no functional changes.  Should be pretty
close to in-line with the style of changes that I've been making else-
where.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@331 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 10:00:21 +00:00
rkrolib
1023b7eb84 Ooops. Forgot that we already had a call to fgClearCallBacks() in the
code and added a second one.  I just deleted the new one.  Sorry.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@330 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 09:45:47 +00:00
rkrolib
f02f918842 Added Nigel's suggested code to clear all but the destroy callback early
on, leaving Destroy to be cleared later after the last possible point
where it should be invoked.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@329 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 09:42:14 +00:00
rkrolib
6230b2de2a Modified the menus to refer to {border} rather than {FREEGLUT_MENU_BORDER},
in fghDisplayMenuBox().  The local variable was already defined and used
for some purposes, so we might as well use it throughout.  It does serve
to shorten and clarify the code a bit---though I have mixed feelings about
creating aliases that way.

Still, the variable already existed and was already used in places.  (We
could even move it into the freeglut state, or make it a {const static}
value...)

Oh well.  Stuff to ponder.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@328 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 01:21:06 +00:00
rkrolib
fb26d91989 Well, a couple of days have gone by, so I assume that items (a) and (b)
in the freeglut_cursor.c file's "Open issues" comment are now satisfactor-
ily closed.

I also partially implemented some error-checking, using my limited
understanding of how Xlib users are supposed to do this.  (No one commented
about the lack of error-checking, pro or con.  Perhaps someone will care to
comment now?)

At present, it just will print out a warning, via fgWarning().  In part
because I'm not sure what is best to do, and in part because failure to
set the cursor type is probably not a fatal problem.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@327 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-10 00:32:15 +00:00
cjp
85e34f0062 Applied Braden McDaniel's non-srcdir build patch.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@326 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-08 17:40:42 +00:00
rkrolib
6bf9d27035 A first pass over freeglut_menu.c to bring it in line with the rest of
freeglut's style.  Mostly re-indenting and splitting long lines.
For those that may be concerned: No, I didn't do any more arrangments
of the form (CONST == a) rather than (a == CONST).  (^&


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@325 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-08 11:28:34 +00:00
rkrolib
9c070e4f9b Altered the way that the {random} value (from 0..3) is chosen.
Previously, it picked out two adjacent bits in the result of rand().
Unfortunately, these adjacent bits (at least on NetBSD) have a certain
amount of dependance.  After a period (perhaps a thousand or so?), it
starts to repeat the pattern of those two bits.  (I think; I haven't
actually tested that directly.)  This presumably is locking it into a
an an N-way attractor on the "snowflake", such that if you zoom in a
ways, you will start to see some spots *quickly* are colored, and
others are *never* colored.

What I've done now is to pick up two widely-spaced bits in a single
rand() call.  (Perhaps we would do as well to pick up something like
bit #16 from two consecutive rand() calls?)  These widely-spaced bits
have a lower statistical dependance on one another (if I can get away
with using that term for an arithmetic operation; though since stats
has more to do with sampling and less to do with true randomness, I
may be safe).

The net effect, at leats on NetBSD, is far better snowflake if you zoom
in on it.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@324 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-08 01:56:45 +00:00
rkrolib
acd65a4212 From John:
[This] implements the visible/invisible for Windows.  It does
NOT call the visibility callback, though.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@323 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 17:30:32 +00:00
rkrolib
d7896b09ab Stripped out the now truly extraneous {braces} in such forms as:
if( ... )
{
    INVOKE_WCB( ... );
}

Check for compiling on WIN32.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@322 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 15:50:56 +00:00
rkrolib
9108ab693f Adopted Eero Pajarre's suggestion of using a do { ... } while
rather than { ... } for the INVOKE_WCB() macro.  This lets it
be used "more like a function", in that:

if( ... )
    INVOKE_WCB( ... );
else
    ...

...is now legal.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@321 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 15:30:59 +00:00
rkrolib
711ab5fdac Pure code janitoring: Shuffled the order of some of the case statements
in the UNIX_X11 X event processing loop.  (In general, it's nice to have
case statements sorted, especially when you have a *huge* switch statement
like this.  That makes it easier to find the one that you're looking for,
and to see if a certain case is defined...)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@320 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 10:32:38 +00:00
rkrolib
6f0ae8796a Combined EnterNotify and LeaveNotify event processing in the UNIX_X11
event loop.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@319 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 10:26:37 +00:00
rkrolib
91a94e44bc Added ReparentNotify case to UNIX_X11 event loop, to catch the extraneous
ReparentNotify event types (type 21).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@318 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 10:22:31 +00:00
rkrolib
2ddf15c536 Oh well, I might as well add the call to clear callbacks on window
destruction.  Also renamed the function to do this: fgClearCallBacks().
Ho-hum.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@317 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 10:18:10 +00:00
rkrolib
89cbd97e02 Added fgInitCallBacks() to freeglut_structure.c. (The function takes
an {SFG_Window *}.)  Added prototype to freeglut_internal.h.  Added use
of the function to the window initialization.  (Don't count on calloc(),
which sets all bits to 0.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@316 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 09:55:43 +00:00
rkrolib
ca361547ec Style normalization; removal of say-nothing-useful comments.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@315 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 08:46:53 +00:00
rkrolib
5621aa7fcb Normalized the style of freeglut_font.c No substantial alterations.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@314 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 08:25:30 +00:00
rkrolib
85b7b49ead Somewhat normalized the style of this file.
Also moved the "glutMouseWheelFunc" extension down into the "extensions"
part of the table.  (Purely internal organization.  It will still be
found.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@313 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 08:06:10 +00:00
rkrolib
d8b2c1d571 Further normalization of the code's style. No substantial changes.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@312 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 07:57:03 +00:00
rkrolib
e6b59a4b45 Split one last overlong line in freeglut_cursor.c.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@311 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 07:48:13 +00:00
rkrolib
658305f2c9 Added GLUT_CURSOR_NONE support in UNIX_X11 (well, NetBSD; you lot need
to try it on others; (^&).

Deallocated some resources that we are creating.  VERY slight memory leak,
but plugged now.


These two complete the first two "Open issues" ( (a) and (b) ).  The first
one also completes X support for glutSetCursor().  If others can verify,
we can fully demote the outstanding bug over this to WIN32-specific.

I'll delete the dead Open issues and re-letter the others if someone will
cross-check me.  Or if no one says anything in a day or two.  (^&


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@310 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 07:46:08 +00:00
rkrolib
d8f572533b Further normalized the style of the cursor code.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@309 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 06:25:20 +00:00
rkrolib
aeeabeff93 Slight style improvements. Two rules of thumb that are almost always
good to apply:

 * Don't write a == CONST.  Instead, write CONST == a.  Or, more generally
   (in C like languages): Avoid putting an lvalue on the left-hand side of
   an == comparison.  (For consistancy, I try to avoid lvalues on the left-
   hand side of any comparison---but == is the most notorious.)

   (An "lvalue" is a value that can safely go on the left side of an
   "=" assignment, of course.  (^&)

 * Do not write
       if( !condition )
           return;
       other_thing;
       return;

   (See page 18 of K&P's _The Elements of Programming Style_.)

   Instead, it is better to just write:

       if( condition )
           other_thing;
       return;

   There are times when sacrificing structured programming (e.g., via
   multiple return statements) is okay.  But, here, there is no apparent
   gain---indeed, there seems only loss---in the non-structured code.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@308 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 06:12:58 +00:00
rkrolib
974e38bfbd Grr. Forgot to enable the "freeglut" C programming mode in EMACS, and
had a few TABs in the last commit.  This fixes that.  Sorry.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@307 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 05:46:33 +00:00
rkrolib
869780207d Minor corrections to the UNIX_X11 mouse-wheel support. In part this
reflects that {button} is already shifted to the GLUT numbering, and
hence should be counted as 3&4, 5&6, etc.

The other change was simply to clarify the computation of {direction}.
The original code did some clever arithmetic.  The new code is more
straightforward, even if it requires more lines to express.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@306 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-07 05:43:34 +00:00
rkrolib
2ff70b671c Ooops. I screwed up on part of John's fixes. Sorry.
I think that I have his fix properly committed now.  Mea culpa.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@305 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-06 23:40:21 +00:00
rkrolib
65dde7f632 Cleanup pass after committing callback conversion (from structure to
array-of-pointers).  Mostly deleted commented-out struct-based code.
Also added some XXX comments that I though should be pondered.  (My
own pair of eyes, and one brain cell, were not sufficient at this time
to decide what to do for those ponderables.  (^&)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@304 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-06 23:29:55 +00:00
rkrolib
80a523394c Converted the "Callbacks" structure (with named members holding individual
callback pointers) to a "CallBacks" array in fgState.  (This is to allow
us to write a loop to clear all callbacks from windows when the window is
dead/dying.  Using this, we can safely assign NULL to each in a loop.)

Support includes two new macros, FETCH_WCB() and INVOKE_WCB().  See
freeglut_internal.h for more details there.

Some typedefs of function pointer types were altered to make them more
uniform (necessary for the macros).

All references to window-based callbacks in freeglut are updated to
use the new macros.

Old usages will cause compile-time errors.

As a side bonus, the new invocation macro sets the current window and
checks pointers so that these common steps can be uniformly done on
every window-based callback.  This makes it easier to do things right.
At the same time, the array notation (and now required associated casts)
make it harder to bypass the macros and abuse the function pointers,
in general.

After this commit, I will go through the code and clean up dangling issues
about formatting.  This commit is just a "it now works, let's checkpoint it"
type of affair.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@303 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-06 22:09:35 +00:00
rkrolib
b7dd45a935 From John, a couple of lines needed to be changed to fix the mouse wheel
support on WIN32.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@302 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-06 21:41:17 +00:00
rkrolib
406636047f Update from John: Includes mouse button, mouse motion, and mouse wheel
support.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@301 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-06 21:38:21 +00:00
rkrolib
0b588cdcb7 Multiple changes from John. Style issues, plus a bug-fix to check
a pointer before deallocating some memory.

He also removed one obsolete comment, and added some more comments.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@300 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 18:47:26 +00:00
rkrolib
585433d174 Some changes, mostly from John. Mostly style changes.
One bug fix from John: Execution state bug-fix in glutMainLoop(), per his
post yesterday.

One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
{ButtonPress} is a constant.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@299 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 18:16:52 +00:00
rkrolib
3a18a26d74 Update from John:
I [John] added a feature to check for memory leaks under Windows.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@297 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 15:53:49 +00:00
rkrolib
8df7ae3c29 Update from John:
I [John] converted everything to double precision to avoid compiler
warnings.  I also added a feature to check for memory leaks under
Windows and removed a memory leak (surprise!).


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@296 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 15:32:57 +00:00
rkrolib
cc38ef07e9 Got rid of the G_LOG_DOMAIN junk, per discussion on the mailing list.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@295 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 01:30:32 +00:00
rkrolib
30a7dfb0c4 Minor formatting quibbles. (The brain isn't up to anything more serious
at the moment.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@294 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 01:17:18 +00:00
rkrolib
2c356e1221 Missed a block where one level was 2-space indented.
Nit-picked a few other lines for consistancy.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@293 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-04 01:10:13 +00:00
rkrolib
9b257588e0 Fixed a memory leak (thanks for the correction, John!).
Smoothed over some code style issues while I was here, but left the
init-string parsing alone for now.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@292 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 21:41:07 +00:00
rkrolib
7c699fab2f Deleted 3 files (again?) from CVS, on John's request. Old/obsolete
MSVC++ project files.
(freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@291 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 21:28:54 +00:00
rkrolib
5342fe966f * Indentation issues.
* Pulled some common code into a nicely packaged function.
 * Found some pointer/int issues.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@290 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 21:25:11 +00:00
rkrolib
fa26d7b700 Heh.
Forgot to wrap the fgGetXModifiers() in a #if.  Fixed.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@289 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 10:56:48 +00:00
rkrolib
cced36cf2b Extracted some common code to a subroutine, in glutMainLoopEvent().
(The common code was a snippet to compute X keyboard modifiers as a
bit-mask of GLUT symbols.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@288 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 10:51:26 +00:00
rkrolib
9b944ec457 Caught a few more little style issues.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@287 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 10:31:41 +00:00
rkrolib
2ab6b22f80 Added a "case" for an X event that we turn on but do not use.
({MapNotify}).  We already caught {MappingNotify} and {UnmapNotify}.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@286 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 10:29:30 +00:00
rkrolib
31c0809e28 * Fixed a bug in the X11 handling of scrollwheel/mouse. The old code,
I believe, checked if *either* a wheel or button callback was set,
   and then decided which to use---and unconditionally called it.
   I left the "either" check in, but added additional checks before
   actually doing the invocation.
 * Lots of reformatting.  Massive.  The usual suspects, though, and fairly
   trivial: Re-indenting to standard size, shuffling some spaces to match
   the freeglut "standard" of:
     if( ... )
   ...and:
     func( ... )


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@285 7f0cb862-5218-0410-a997-914c9d46530a
2003-11-03 10:05:07 +00:00
rkrolib
01dc2daa05 Cleaned up one macro definition.
Picked up an over-long line that I missed before.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@284 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 20:51:56 +00:00
rkrolib
d519c9292d Fit some long lines to 80 columns.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@283 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 20:49:07 +00:00
rkrolib
02e53500a7 Last of the hard TABs in the src/*.c files.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@282 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 13:40:08 +00:00
rkrolib
c89d0c24d9 En masse removal of most (I think) of the remaining hard TABs in files.
There are still a couple of files that need to be hit.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@281 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 11:33:12 +00:00
rkrolib
5a1317c0f4 Picked up some stray TABs scattered in this file.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@280 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 11:28:14 +00:00
rkrolib
d1bfaa5c4b Noted by XXX comments that the XFlush() calls probably shouldn't be there.
Flushing the X protocol stack every little bit both adds clutter to the
code and may impede performance.

It seems that we should be able to get rid of these, though
allowing client code to directly call glutMainLoopEvent() does make it
a little more complicated.

Something to ponder.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@279 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 11:25:23 +00:00
rkrolib
a92096db1a Polished off the say-nothing-new comments and lines-over-80-columns in
freeglut_window.c

There should be no functional changes.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@278 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 11:11:48 +00:00
rkrolib
350de30921 Missed a few say-nothing-new comments in fgOpenWindow().
Eeep.  Should be better now.  (^&


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@277 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 06:25:34 +00:00
rkrolib
a1c14f4cf5 Cleansed fgCloseWindow():
* say-nothing-new comments axed.
 * de-TABbed.
 * Made the white-space to be consistant.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@276 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 06:20:07 +00:00
rkrolib
6674df547f Cleaned up fgOpenWindow():
* Removed TABs.
 * Made indentation consistant.
 * Deleted say-nothing-new comments.
 * Changed an *error*check* from an assert to an if().
   (The error-check was on window creation; we don't want to
    lose that if the user compiles with asserts deactivated.
    Also, assert()s really tell us more about programming errors,
    rather than run-time errors, so it is a little misleading to
    use assert() for error-checks, even if you can depend upon
    assert()s never being compiled away to null statements.)
 * Added some XXX comments for things that bear some rumination.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@275 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 06:11:25 +00:00
rkrolib
ba6ee1d34a Cleanup to fgSetWindow(). The usual suspects:
* Removed tabs.
 * Made indentation consistant.
 * Killed off say-nothing-new comments.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@274 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 05:34:19 +00:00
rkrolib
570e2aa0b6 Cleanup to fgSetupixelFormat(). Should be no functional changes.
Code facelift included:

 * Consistant indentation.
 * Removal of all TABs (there were a bunch).
 * Fit to 80 columns.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@273 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 04:25:34 +00:00
rkrolib
807042d126 There should be no changes to code functionality, though a fair bit of
little changes to the code appearance.

 * Fit the comments at the start of the file to fit 80 columns.
 * Noted an unusual feature of the ATTRIB() macro.
 * Added ATTRIB_VAL() macro which is really just two ATTRIB()s.
   This lets us put things like {ATTRIB (GLX_RED_SIZE); ATTRIB (1);}
   on one statement: {ATTRIB_VAL (GLX_RED_SIZE, 1);}.
   I did this to preserve some of the layout of information while also
   avoiding the nasty semi-visible ";" in the middle of a line of code.
   And by putting the {braces} in the macro definition, I was able to
   visually clean code of the form:
       if (condition)
       {
           ATTRIB( X ); ATTRIB( 1 );
       }
   ...rewriting as:
       if (condition)
           ATTRIB_VAL( X, 1 );
 * Eliminated a bunch of say-nothing-new comments in fgChooseVisual().
 * Combined some semi-useful comments into a block comment summarizing
   a loop.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@272 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-31 03:37:27 +00:00
rkrolib
92b5fb9d59 Finished off most of the issues with freeglut_structure.c, from a stylistic
point of view (at least, insofar as: The original file's code was INCON-
SISTANT.  I did not remove the "!= NULL" stuff, did not address the
shortest-branch-first issue for if-else statements, and left some rather
ugly "if (x) {... return y} /* else do this */ return NULL;" garbage.
This should, I think, be re-written as "if (x) return y; else return NULL;"
or even better, "ret = NULL; if (x) ret = y; return ret;"

In short, the code still has some issues, but I think that it's a bit
better.

(Oh, I also got rid of oustanding TABs.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@271 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-30 04:43:08 +00:00
rkrolib
191ff25528 Eliminated most of the say-nothing-new comments.
Fit most of the code to no more than 80 columns.

Raised some issues about completeness/correctness of trying to
decrement the max-window-ID (apparently in order to partially
recycle some window IDs to slightly slow the rate of growth of
window IDs).  (I didn't change what the code does, though.)


The functionality of the code should be unchanged.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@270 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-30 04:36:54 +00:00
rkrolib
3eec065016 Forgot to set {direction} explicitly to +/- 1 for freeglut mouse-wheel
API on MS-WINDOWS.  Oops.

Now it should always report +/- 1 on MS-WINDOWS, per the spec.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@269 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-30 03:51:33 +00:00
rkrolib
df711af72f Minor fix to allow for multiple ticks to be received at one time by the
WIN32 code.  Take abs(direction) as the number of ticks, and count it
down.

<stdlib.h> *should* be included by freeglut_internal.h, I think, so it
should be okay; otherwise add a suitable #include.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@268 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-30 03:20:24 +00:00
rkrolib
c2f23f0bb2 Grrr. My attempt to commit got aborted, and the commit message was lost.
Now I've lost track of what I said I'd done.  Something like:

 * Fixed some issues with multiple wheels.
 * Noted in comments some issues about other-than-3-real-buttons.
 * Fixed formatting to fit 80 columns.
 * Removed some BCPL/C++ style comments (//) that are not legal, and
   which, if memory servers, are not even strictly legal when disabled
   by preprocessor directives.  E.g.,

   #if 0
     not-syntactically-valid-C
   #endif

   ...is not legal.  Though most cpp's will discard the bracketed material
   completely before the main C compiler pass has a chance to analyze the
   syntax.  (MSVC++ and GCC both don't seem to mind the BCPL style comments
   in plain C, but let's keep the sources clean, eh?)
 * Fixed a problem that would have caused freeglut to report doubled
   wheel events under XFree86.

Not tested other than compiling.  Personally, I think that the interface
is inherently broken at this point unless you are willing to get user-
configuration.  (Which would then solve the complaint that Steve had
about computing the tick-size on behalf of applications.)  I.e., there
is NO WAY to know if we have the right buttons to start wheels at, or
if there are any buttons after the first wheel(s), etc.  We just have to
guess---and if we are wrong, we can get varying degrees of brokeness.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@267 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-30 03:08:16 +00:00
cjp
2682a53352 There is a problem with the way I did glutFullscreen() in my last commit.
So I've copied the way the game mode does it.  It's not ideal but it works.
The glutGet() for the window border sizes will also have to be fixed at
some point.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@266 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 23:01:56 +00:00
cjp
1ac66fba61 Rewrote glutFullscreen().
It now correctly places the window in X11.
It now uses system dependant code for more efficient use of
windowing system calls.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@265 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 18:19:17 +00:00
rkrolib
3d344ad2de Should be no real changes to the code function.
I missed a few lines that went past 80 columns.  (^&

Also made formatting more consistant.

Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@264 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 18:05:48 +00:00
rkrolib
1b7f3df686 Should be entirely superficial changes to code style:
* Fit lines to 80 columns.  (It does get tiresome seeing long lines
   forced to break by the right-hand border of windows...(^&)
 * Eliminated say-nothing-new comments.
 * Made formatting more consistant in spots.
 * Eliminated some hard TAB characters.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@263 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 17:44:42 +00:00
rkrolib
126e447121 Added Thierry's change to include sys/param.h. This lets us pick out version
numbers for OS releases corresponding to system headers.

I modified it to also work with NetBSD; I cannot confirm if it is safe with
any other systems, so it remains protected by a #if.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@262 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 17:29:10 +00:00
rkrolib
faf725fe15 Deleted some say-nothing-new comments.
Added some XXX's where comments seemed to require future attention.

Added some new comments with XXX's where future attention seems profitable.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@261 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 07:49:59 +00:00
rkrolib
4078f9a7a9 Deleted a bunch of say-nothing-new comments. Someday, there shall
be an end to them.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@260 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 07:18:10 +00:00
rkrolib
b46806dc31 Previous changes were made without the freeglut major mode in EMACS.
Re-tweaked some lines (mostly got rid of some TABs, but also resulted
in some changed indentation).

Reformatted a big comment to fit to 80 columns.

Removed bogus references to "Linux".  (UNIX, and/or X11 were relavent,
and "UNIX/X11" was substituted for "Linux" in those places.  This includes
UNIX-alike systems.)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@259 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 07:13:55 +00:00
rkrolib
2abe3abee5 Rewrote the TODO BEFORE THE STABLE RELEASE comment to fit to 80 columns.
Cleanup of fghGetConfig().  (One return statement, simpler code.)

Made glutSetOption() have a more consistant style---and also got its lines
to stay under 80 columns.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@258 7f0cb862-5218-0410-a997-914c9d46530a
2003-10-29 06:57:07 +00:00