Commit Graph

1887 Commits

Author SHA1 Message Date
dcnieho
8363fa9507 WM_SETFOCUS should not change focus to child instead, then all input goes to child even if it should go to parent. Mousewheel needed to check if actually in child, other mouse action (move, press) are automatically passed to child
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1516 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 06:11:51 +00:00
dcnieho
6f9152c92e Use GetMessagePos, not GetCursorPos to make sure we get the right mouse position. Also, no need to get mouse position at time of keypress, every mouse movement before the keypress is processed in an earlier WM_MOUSE message already, so mouse position in the window state is all we need.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1515 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 05:58:56 +00:00
dcnieho
b1274e9078 added API doc for glutSetKeyRepeat and glutIgnoreKeyRepeat
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1514 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 04:58:23 +00:00
dcnieho
00260311f3 clean up glutSetKeyRepeat function body
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1513 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 04:44:14 +00:00
dcnieho
e9318d4e55 Added subwindows to CallbackMaker demo, for testing and demonstration. Also figured out how key repeat's global and per-window flags are supposed to interact, documented and demonstrated it.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1512 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 04:36:48 +00:00
dcnieho
71c6054fe0 added modifier key status to callbackmaker output, also added entryfunc
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1511 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-27 03:58:05 +00:00
dcnieho
ddda931bac reworked fullscreen code based on implementation of Chromium. can now handle/restore windows in maximized state and no longer uses WS_POPUP.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1510 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 16:49:19 +00:00
dcnieho
5fa61c0c64 subwin demo now has a grandchild (subwin in subwin) for testing
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1509 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 16:14:41 +00:00
dcnieho
3b5f3573a1 some msgs only sent to parent window, find child under cursor. This before only search for childs of the parent, not grandchilds or more derived. Fixed
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1508 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 16:13:09 +00:00
dcnieho
fdbb8086ed better name for key up/down function
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1507 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 15:21:34 +00:00
dcnieho
a6e021db4a win API docs say that defWndProc must be called for system keydown/keyup
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1506 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 15:20:18 +00:00
dcnieho
cf6e2a419c win32: updating keyboard down/up handling. Split off to own function that deals with both down and up to reduce code duplication. Also only get async keystate to see if left or right alt, control, shift is pressed/released when a press on one of these is detected in the first place, not with every message that comes in.
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1505 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-26 15:05:41 +00:00
dcnieho
813addede1 moving fgPlatformReshapeWindow and fgPlatformDisplayWindow from fg_main_x to fg_window_x. Hope this didn't break anything for X11 or andriod
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1504 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-13 10:28:26 +00:00
dcnieho
4f1f85c231 api doc for glutWMClosefunc was wrong....
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1503 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-13 09:48:51 +00:00
dcnieho
dae7120ed5 now have 64bit internal time on Windows, as we deal with wrap of timeGetTime manually
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1502 7f0cb862-5218-0410-a997-914c9d46530a
2013-02-09 11:59:32 +00:00
dcnieho
17a8372217 can now configure build such that runtime warnings and/or errors occuring in lib are not printed to stderr (thanks Nigel Steward)
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1501 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-27 12:38:28 +00:00
dcnieho
f79dae9865 smoothgl3 and shapes demos, now checking if glutGetProcAddress calls give us valid function pointers
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1500 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-27 11:56:32 +00:00
dcnieho
05a9a7c907 Make CTRL and SHIFT arrive properly in single (as opposed to MultiButton) mouse events, thanks Philipp!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1496 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-17 14:53:30 +00:00
dcnieho
d657a564e5 fixed closing window crash, thanks Philipp!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1495 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-17 14:51:25 +00:00
dcnieho
242d359f5b oops, debug code that shouldn't have been committed got in there...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1494 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-17 14:46:22 +00:00
dcnieho
14276cac9e Updating last edit time and FreeGLUT version for API document
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1493 7f0cb862-5218-0410-a997-914c9d46530a
2013-01-17 14:33:54 +00:00
dcnieho
bbefe8aee0 avoid crash on null temp_window, thanks Phillip Kutin!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1490 7f0cb862-5218-0410-a997-914c9d46530a
2012-12-18 05:19:21 +00:00
dcnieho
ff0366185f removed unnecessary token pasting (##) preprocessor directives that blew
up some builds. thanks Phillip Kutin!



git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1489 7f0cb862-5218-0410-a997-914c9d46530a
2012-12-18 05:13:42 +00:00
dcnieho
afdc54e910 kicking out the FGCBSelect function prototype that has been here since
the beginning of times (r3), but is not used anywhere and has no
equivalent in GLUT


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1488 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-24 01:18:34 +00:00
dcnieho
809dad066b argh! commit 1485 was cut and paste instead of copy paste...
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1487 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 10:35:24 +00:00
dcnieho
231f05cf2c tiny cosmetics in resizer demo
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1486 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 09:43:18 +00:00
dcnieho
0715a20796 that was too quick, fgStructure.CurrentWindow can be NULL when glutGetting window
width or height


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1485 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 09:42:54 +00:00
dcnieho
1917f56dce GLUT_WINDOW_WIDTH and GLUT_WINDOW_HEIGHT can simply be gotten from the
window's state. This also simplifies GLUT_WINDOW_X and GLUT_WINDOW_Y a
lot


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1484 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 09:31:52 +00:00
dcnieho
0eb960d0a1 prevent resize callback (and indeed the whole resizing logic) from getting
called twice


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1483 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 09:30:57 +00:00
dcnieho
9d51152ba6 timer func now changes two colors alternatingly, using multiple active
timers


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1482 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 08:40:13 +00:00
dcnieho
95b2935ce9 nicer output to terminal in Position callback
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1481 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 08:22:28 +00:00
dcnieho
409ca5b133 now providing new position of child relative to parent in the position
callback
also need to set position func for the child window in the resizer demo


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1480 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 08:21:24 +00:00
dcnieho
9db85cd9b3 resizer demo now uses timer to display window information
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1479 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 08:03:20 +00:00
dcnieho
6badc4e20a removed unnecessary calls to SetWindowPos when entering and leaving
fullscreen mode. This caused the Position callback to fire more than
necessary


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1478 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 07:51:10 +00:00
dcnieho
aa38dc56b4 implemented position callback on windows and some other minor edits
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1477 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 07:41:39 +00:00
dcnieho
a0b41213a5 prepared callbackmaker for testing position callback
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1476 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 07:06:57 +00:00
dcnieho
4f66100b51 used a macro to remove all the code repetition in fg_callbacks.c
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1475 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 06:55:52 +00:00
dcnieho
d1efa5eb48 added glutPositionFunc callback, now just need to implement so it does
something
For all callbacks now using function type definitions from
fg_internal.h.
Reorganized and cleaned up fg_callbacks.c so that there are no wrong
comments in there (timers are global, not per window) and so that all
global, per menu, and per window callbacks are grouped together


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1474 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 06:40:06 +00:00
dcnieho
a99ea4e190 looked into purpose of glutWMCloseFunc, it was to prevent the window on
which the callback is called from being closed. The ultimate aim was to
prevent GLUT from exiting. We do this in a different way, which is added
to the docs in the discussion of glutCloseFunc


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1473 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 06:13:31 +00:00
dcnieho
6724c68a10 also added note about glutWMCloseFunc to docs, and forgot to put
glugCloseFunc in the index.


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1472 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 05:35:31 +00:00
dcnieho
13a5f957f7 added WCB_Position callback in callback table (only so far), code for
zeroing callbacks upon window creation continues to work correctly


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1471 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 05:26:36 +00:00
dcnieho
e81ec9d7cd documenting glutCloseFunc. Thanks Phillip Kutin for the patch!
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1470 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-23 00:50:02 +00:00
dcnieho
bfddcf9f7e some reorganization in docs as well, some callbacks missing or misplaced
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1469 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-22 06:05:30 +00:00
dcnieho
419e4793b0 more cleanup in callbackmaker demo, now showing best practice for
various callback. also added menustate/menustatus callbacks


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1468 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-22 05:52:02 +00:00
dcnieho
d07f4255be cleaned up callback registering code in One demo, now its best practice
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1467 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-22 05:49:53 +00:00
dcnieho
79f3a0d64d some callback naming cosmetics as suggested in an old comment
git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1466 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-22 05:27:19 +00:00
dcnieho
eb968382e8 extensive changes in callbackmaker: each of the two windows now has its
own events registered and displayed separately


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1465 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-22 04:38:03 +00:00
dcnieho
a85eaf5632 nicely lining up the two windows for the callbackmaker demo, small other
edit


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1464 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-21 08:30:47 +00:00
dcnieho
74b361d347 now using WHEEL_DELTA for mouse wheel processing, instead of a magic
number


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1463 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-21 05:15:31 +00:00
dcnieho
2359c3cc11 wrote macro for the special key checks (shift, alt, ctrl) to
significantly reduce code length (and it was copy-paste code anyway)


git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1460 7f0cb862-5218-0410-a997-914c9d46530a
2012-11-21 04:18:32 +00:00