glutMainLoop(), per discussion on the list. The code looks okay,
to me, though I remain less than wholly convinced that treating idles
as special cases is the best way to go. Still, a case can be made
for taking "non-event" idle callbacks out of the "event loop".
From an organizational perspective, I think that it's an improvement,
and it fixes a bug for at least one program.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@244 7f0cb862-5218-0410-a997-914c9d46530a
The lines that he was altering were very oddly-split, so while I was at
it, I repaired the line-break damage.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@243 7f0cb862-5218-0410-a997-914c9d46530a
code was not setting the GLUT window prior to calling callbacks.)
Please verify. If so, this closes out, I think, the latter half of
that bug report, so anyone with the means to modify/close bug reports
should do so upon verification of the fix.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@242 7f0cb862-5218-0410-a997-914c9d46530a
...
/*
* <Enslish recapituation of the single following C statement>
*/
<single C statement>
...and rewrote as:
...
<single C statement>
freeglut_main.c still has a lot of that in it, but it looks a bit
better, now.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@241 7f0cb862-5218-0410-a997-914c9d46530a
Deleted numerous 4-line "padding" sequences of C-as-English trans-
literation comments.
Re-indented some (but not all) code that is using 2-space indentation.
(Most of the freeglut code seems to be using 4-space indentation.)
I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
filled with a ton of over-long lines and also appears to be in more
flux than the rest of the code. (Well, I added one error-check
to a strdup().)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@240 7f0cb862-5218-0410-a997-914c9d46530a
* Got rid of the "rewrite C as English" comments.
* Corrected several bogus references to "carriage returns" (in strings).
The symbols were newlines or EOLs or LFs (\n).
They were *not* carriage returns or CRs (\r).
* Clarified the comments on glBitmap() calls.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@232 7f0cb862-5218-0410-a997-914c9d46530a
Modified the two Fractals* demos so that they only clear (for the random
one) or redraw (for the non-random one) if there is need to do so. (E.g.,
pressing the space bar should not clear and redraw the random fractal since
no parameters are altered.)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@231 7f0cb862-5218-0410-a997-914c9d46530a
Mostly got rid of the say-it-in-English comments that were adding 1 line
of English and 2 or 3 lines of filler for each of several lines of C code.
Updated a couple of other comments, and tweaked some white-space.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@228 7f0cb862-5218-0410-a997-914c9d46530a
(Type NONE is not properly supported, yet.)
Corrected behavior for the several old types:
* Wrong glyphs.
* Reversed glyphs (left/right confusion!)
There are some remaining imperfections, but it's a lot closer to
GLUT comformity, now.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@226 7f0cb862-5218-0410-a997-914c9d46530a
none of them are Earth-shattering, but as I swept through
looking somewhat more systematically for errors, I picked
these off. See the diff's for details.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@225 7f0cb862-5218-0410-a997-914c9d46530a
* glutInit*() calls should preceed glutInit(), per se, generally.
This is so that glutInit()'s configuration (which picks up on user
parameters) can override application defaults.
* glutInit() should be called before ANY attempt to process {argv, argc}.
This is because there may be GLUT/freeglut parameters (such as
"-display" on X11).
* If the window is tall and skinny, rather than short and squat, we need
to handle aspect ratios differently.
The first is a user-interface bug. The second is a serious bug (especially
since the demo assumes that argv[1] contains a filename). The third is a
display bug.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@218 7f0cb862-5218-0410-a997-914c9d46530a
This is done so that subwindows on X11 will get "resize" events when
they are created. Old GLUT did this---presumably by design in order
to ensure that (a) All windows get notified of their size as soon as
the window exists, and (b) probably more importantly, so that windows
and sub-windows behave as much alike as possible. I believe that GLUT
was right to do this, and I believe that compatibility requires this
(I have a sample program that breaks in freeglut but not GLUT without
this fix).
I did not touch the Microsoft side, because I don't know what their
OS does---nor if old GLUT was historically system-dependant about this.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@217 7f0cb862-5218-0410-a997-914c9d46530a
The broad outlines are:
* Color schemes are now in variables, are closer to old GLUT, and
are system dependant (as old GLUT did).
* You can change the font to any bitmapped font more easily, which
can aid in finding a better approximation. (Old GLUT does not seem
to have used a GLUT font for the menus, which causes problems for
us.) The menus rescale automatically, including the triangle "arrow"
for sub-menus.
* Menus have real borders, and the placement of highlighting is
much improved.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@215 7f0cb862-5218-0410-a997-914c9d46530a
Untested, but it compiles for me.
Should also add Joystick support for older FreeBSD systems. Also
untested.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@211 7f0cb862-5218-0410-a997-914c9d46530a
first three can work with menus), in X. This closes a compatibility gap
with old GLUT, and leaves us the option of supporting scroll-wheels
properly.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@210 7f0cb862-5218-0410-a997-914c9d46530a
to sleep, we need to go through ALL windows to check for pending joysticks
and to check for pending redisplays. I was just going through all TOP-
LEVEL windows. Eeek. This won't do.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@205 7f0cb862-5218-0410-a997-914c9d46530a
#ifdef TARGET_HOST_...
to:
#if TARGET_HOST_...
in src/freeglut_init.c. These changes should not have any functional
impact at this time, but you don't want bad examples lying around to
trip people up later.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@203 7f0cb862-5218-0410-a997-914c9d46530a
* GLUT_SINGLE now should behave more or less correctly.
Thanks to Brian Paul!
* Sleeping is now cognizant of outstanding redisplays.
* Fractals_random has been restored more or less to as-before, save that
it uses the more minimal glFlush() rather than glutSwapBuffers().
glutSwapBuffers() was only required when freeglut was incorrectly
handling promotion to double-buffering.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@202 7f0cb862-5218-0410-a997-914c9d46530a
It now rasies the menu windows before showing them.
Move the show to after the reshape and position so we don't get a flash of
the menu window at it's old size and position.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@162 7f0cb862-5218-0410-a997-914c9d46530a