Commit Graph

1821 Commits

Author SHA1 Message Date
dcnieho
5a0d107a9c wrote out the ipow function so its easier to mentally parse
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1401 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-18 03:31:47 +00:00
dcnieho
82cfc20eac small enhancements to shapes demo:
- pitch and yaw rotation speeds are now prime numbers so we don't have a
  repeating cycle
- made window slightly larger so we have more space for the info printed
- added info for 2D rotation vs 1D rotation
- added keys to info where they were missing


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1400 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-18 03:30:54 +00:00
dcnieho
a1daa9fc77 fixed install target:
- freeglut shared library now in /bin dir, as is its pdb file
- its import library, the static library and the static lib's debug info
  are installed in /lib


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1399 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-17 02:20:20 +00:00
dcnieho
a7771ab4b2 menus attached to child windows did not appear in the right place.
Fixed in fghActivateMenu, whose logic is now simpler and commented as
well


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1398 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-17 01:02:30 +00:00
dcnieho
de8853e675 minor cosmetics
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1397 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-17 00:07:30 +00:00
dcnieho
610b006221 now have function to get window style based on FreeGLUT's stateflag
(fgState.DisplayMode) so that window decoration specification is only in
one place in the code. Also, glutGet(GLUT_WINDOW_BORDER_WIDTH); and
glutGet(GLUT_WINDOW_HEADER_HEIGHT); now return the right sizes, i.e.,
taking the display mode into account, for the border and caption when no
window is created yet


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1396 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-17 00:03:10 +00:00
dcnieho
dec5717f1e added note about maximizing behavior on Windows (when the maximize
window tool is pressed by the user) -- resize borders are by default of
the screen to maximize the client area. Lets not change this as FreeGLUT
has stuck with this default for a long time.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1395 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-16 15:07:33 +00:00
dcnieho
0500cfdf4c reimplemented the client-area/window-area conversion code. It should now
be robust across Windows and Visual Studio versions. Bugs in window
size with VS2012 fixed!


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1394 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-16 11:02:06 +00:00
dcnieho
9241bedc2f including OpenGL/gl.h and OpenGL/glu.h when on apple platform
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1393 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-16 00:14:55 +00:00
dcnieho
45f45042c2 fixing conflicts with opengl headers on some systems, same solution as
by John in r1385


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1390 7f0cb862-5218-0410-a997-914c9d46530a
2012-09-25 07:46:25 +00:00
dcnieho
767cf1bcbe GLUT_WINDOW_HEADER_HEIGHT should always have been GLUT_WINDOW_BORDER_HEIGHT.
Adding the second, keeping the first for backward compatibility


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1389 7f0cb862-5218-0410-a997-914c9d46530a
2012-09-25 07:39:13 +00:00
dcnieho
eae233fe6e fixed shader route in shapes demo:
- small bug in gl_frustum implementation in matrix lib, element (4,4)
  should be 0
- default OpenGL ambient color is (.2, .2, .2, 1.), not black
little bit of formatting


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1388 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-13 04:59:48 +00:00
dcnieho
b76e745afc shapes demo: material color now set to red in shader, ambient light off again. looks
better now that i understand light a bit better


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1387 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-13 02:57:30 +00:00
jtsiomb
b8ea74d51e The mapping from XInput button mask to the standard X event button mask is not 1-1, fixed.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1386 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-09 01:36:31 +00:00
jtsiomb
03fea19290 - trying to fix bug 2781865
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1385 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-07 11:15:01 +00:00
dcnieho
d598173a25 also add an InvalidateRect call before the BeginPaint in WM_PAINT
handler.this ensures the whole window is repainted, and hopefully fixes
some bug reports.



git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1384 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-06 15:05:10 +00:00
dcnieho
80ed4c02f9 better to put code to check if menu should be deactivated in
fg_menu_mswin.c


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1383 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-06 15:03:20 +00:00
dcnieho
c1492ab1ef some doc on why not using GetClientRect for getting the position of the
client rect on the screen


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1382 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-06 03:10:33 +00:00
dcnieho
19c5ab0140 calling glutExit in the erro callback is a really bad example...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1381 7f0cb862-5218-0410-a997-914c9d46530a
2012-08-05 04:28:57 +00:00
jtsiomb
4c740e0f35 gamemode-x11: fixed the conditions checking for XR&R >= 1.1, as it where they would match 1.0 too
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1380 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-31 14:33:26 +00:00
dcnieho
01d00ef0d0 forgot to set use to true (not that its useful, but avoid confusion that
could arise when returning false)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1379 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-29 05:33:07 +00:00
dcnieho
3173417248 attempt to implement fghPlatformGetCursorPos on X11
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1378 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-29 05:28:10 +00:00
dcnieho
89df7d96ed fg_cursor is a much better place for code reading the mouse position
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1377 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-29 05:18:36 +00:00
dcnieho
faf732bda6 some cleanup
now have function fghPlatformGetMousePos to get current mouse position
in screen coordinates
Using this in fg_menu as all that code should be platform independent


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1376 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-29 05:11:53 +00:00
jtsiomb
3162c53c9f Fixed broken X11 menus. The MPX patch would naively just call the
standard (non-multi) callbacks directly, overriding all the
menu-handling logic in the standard X event processing loop.



git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1375 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-29 04:11:01 +00:00
dcnieho
8c81fedaa0 little bit of cleanup and extra comments
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1374 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-26 15:11:37 +00:00
dcnieho
fc4d999897 the Callbackmaker demo, with its window close callback, is a nice place
to test glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE,GLUT_ACTION_CONTINUE_EXECUTION)
working fine :)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1373 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 17:43:12 +00:00
dcnieho
1b92446cdd adding option (on windows) to also install .pdb files
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1372 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 17:38:58 +00:00
dcnieho
2a1ed68305 fix to smooth demo to work with GL 3.3 and higher, thanks Neil Mannall
(bug tracker ID 3496257)!


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1371 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 15:37:28 +00:00
dcnieho
75bc716354 update to README.win32 from José Caetano A. C. Silva (bug tracker
#3505577). Thanks!


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1370 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 15:30:35 +00:00
dcnieho
fc3aa8f406 added warning and error callbacks to demo
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1369 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 15:03:53 +00:00
dcnieho
0e41b344b8 implementing menu status callback
Now erroring out when trying to modify menu when a menu is currently
active
small fix to callbackmaker: glutMenuDestroyFunc is per defined menu


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1368 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-24 14:37:42 +00:00
dcnieho
8fb0c5d924 glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on a child window now
return top-left of child w.r.t. parent's client area
resizer demo now also has child window button 'c'. doesn't work with
fullscreen for some reason....


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1367 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 13:52:55 +00:00
dcnieho
b5664b39e7 some cleanup of one demo. added menu back in gamemode
Now proper animation whose speed does not depend on the number of
windows currently open
Got some flicker in gamemode when other windows (that weren't visible)
were also updated (only occurs when child windows present). Simply no
drawing to these windows fixes things - one shouldn't draw anyway as
they aren't visible.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1366 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 10:37:40 +00:00
dcnieho
c2266aa027 now added fix suggested by Ioannis to make menus work when an entryfunc
is defined for the window


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1365 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 09:51:34 +00:00
dcnieho
fe05157a34 Should only do check if mouse is outside client area when not opening a
submenu as well...


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1364 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 09:50:14 +00:00
dcnieho
985693f528 child window now only used for keyboard callbacks and setting focus in
windowproc, was a bit overeager before


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1363 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 08:52:50 +00:00
dcnieho
dba5bb070e now also closing menus when non-client area is pressed (thanks for
suggestions Ioannis!)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1362 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 07:04:06 +00:00
dcnieho
fc2ee24b1b When receiving WM_SETFOCUS, check if its child window that should
actually get focus
That fixes corner case issue with menus in main and child windows being
open at the same time


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1361 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 07:00:14 +00:00
dcnieho
77ae3c4f4c added one more child window (child-of-child) to one demo for testing
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1360 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-23 06:55:45 +00:00
dcnieho
4c8096c90c now checking for NULL window in fgDeactivateMenu (thanks for Ioannis to
point out this occurs)
now dealing with the aftermath of the corner case bugs of different
menus in main and child windows both being open at the same time (which
is a bug in itself, but can't figure out a fix). No more crash at least!



git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1359 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-22 10:54:39 +00:00
dcnieho
7cdcd49c93 added entry callback to one demo
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1358 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-22 10:03:36 +00:00
dcnieho
662a168536 argh, some debug code made it in (don't commit and then make changes to
the file before its fully transmitted...)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1357 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 14:19:38 +00:00
dcnieho
2be86de619 some clean up in WM_KILLFOCUS handler
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1356 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 14:18:13 +00:00
dcnieho
4a14f60a4e added a child window to one demo, added different menus attached to
different mouse buttons, for testing
Also added missing post redisplay to keep animation going


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1355 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 14:15:39 +00:00
dcnieho
233d93d550 can now also handle the case where menus is opened, client area of
window with menu is clicked and then user switches to another window.

Implemented menu enumerator and a function for getting currently active
menu, if any


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1354 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 04:04:45 +00:00
dcnieho
e32b8f09fb better test of menus: one window now has right and left click menus
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1353 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 03:58:04 +00:00
dcnieho
ec9b01736e fixes two cases of menu's not closing when they should:
1. open a menu in one of the freeglut windows, then activate another app
(or the console window) by clicking on that. The freeglut menu doesn't
close, and as it is topmost, it shines through everything.
2. open a menu in one of the freeglut windows, then click on the
non-client area of another freeglut window (e.g. the title bar): menu
doesn't close




git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1352 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 03:11:57 +00:00
dcnieho
622479f8b4 When having submenu open in one window and activating its root menu in
another window, submenu didn't close and root menu's activate state
wasn't reset. Fixed.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1351 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-21 02:32:58 +00:00
dcnieho
2f1b14fb21 small addition to debug msg handy for testing
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1350 7f0cb862-5218-0410-a997-914c9d46530a
2012-07-20 08:07:52 +00:00