Commit Graph

189 Commits

Author SHA1 Message Date
rdb b05ae1f762 tform: fix MouseWatcher ABI incompatibility with NDEBUG builds 2020-03-30 14:06:39 +02:00
rdb 43fa7efaaa tform: do not stop mouse button capture until all buttons are released
We may want to consider a more elegant solution for capturing in the future.  In the meantime, this fixes #843.
2020-03-18 18:29:42 +01:00
rdb f98c14c290 tform: prevent MouseWatcherRegion leave event being fired twice
Fixes #858
2020-02-29 12:10:20 +01:00
rdb 08572f3c38 general: Fix a variety of ABI incompatibility issues with opt4 builds 2019-10-08 19:44:29 +02:00
rdb 837d3d6b6d tform: add properties to MouseWatcherRegion 2018-12-19 20:54:48 +01:00
rdb cbda6166a8 tform: fix MouseWatcherRegion area calculation
Fixes #233
2018-12-19 20:54:34 +01:00
rdb 585ba2d647 Prepare input API for multipointer support 2018-11-30 20:54:37 +01:00
Sam Edwards 4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06:00
Sam Edwards b2bfb31114 general: Remove `using std::*` from headers
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.

Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
rdb eab8b1c7a3 tform: MouseWatcher sort should uniquify duplicates
Also change the code to use range-for when appropriate, which improves code readability.
2018-06-12 13:44:24 +02:00
rdb 65217a258d tform: allow calling MouseWatcher::add_region with same region twice
Previously, this was an error.  Now, it will simply silently be ignored, making it behave more like a set.
2018-06-12 12:45:48 +02:00
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
Sam Edwards e2b4353800 general: Replace NULL (and 0 as pointer) with C++11 nullptr
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
rdb 95bffa8503 Fix crash when typing unicode characters above 7fff into text field
Can be reproduced when typing Shift+AltGr+5 into a DirectEntry on macOS.
2018-03-29 14:17:39 +02:00
Sam Edwards 9dd37e9dbc general: Add guards to ensure proper BUILDING_ macros defined
This is designed to sanity-check the buildsystem, ensuring that the
expected BUILDING_ macros are defined at the expected time. It
also helps catch cases where the wrong BUILDING_/EXPCL_ macros
are used.
2018-03-25 13:17:52 -06:00
rdb dd2806c8bd Mark constructors 'explicit' for which coercion makes no sense 2017-11-06 19:47:38 +01:00
rdb 8381118a97 Assorted tweaks and compile warning fixes 2016-07-14 12:54:39 +02:00
rdb ce29ae490d Interrogate improvements, more properties, MAKE_SEQ_PROPERTY 2016-05-11 00:16:53 +02:00
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 834cc57deb More properties for classes 2015-12-16 21:41:55 +01:00
rdb db3ab953e4 Remove ppremake, genPyCode, and all hacks created to support them 2015-11-09 19:06:49 +01:00
rdb 63a9b5dfec Re-expose MouseWatcherGroup; clearer error message for make_seq when getter is not exposed 2015-11-01 15:45:52 +01:00
rdb cc62e731b7 Fix compilation with ppremake 2015-06-01 00:21:32 +02:00
rdb 0a64bdb33b Fix MouseRecorder & let PandaNode inherit from TypedWritableReferenceCount 2015-01-24 16:12:04 +01:00
rdb a65b477734 Commit patches by cfsworks:
cxx: Fix missing includes masked by composite builds.
misc: Fix typos in comments.
config: Fix missing config forward-declarations.
direct: Adjust Python imports to panda3d.* instead of pandac.*.
display: Split graphicsWindow out into an extension.
framework: Use if/elif/elif/endif instead of ifdef/elif/elif/endif.
ode: Remove erroneous INLINE declarations.
interval: Fix missing import.
2014-10-19 22:41:47 +00:00
rdb 85a5be984f Raw button event support, with X11 implementation (untransformed QWERTY) 2014-03-07 12:52:15 +00:00
rdb 8b40d8f83c fix compiler warning 2013-01-13 14:48:05 +00:00
David Rose 849f276dd8 track mouse beyond DisplayRegion too 2012-02-22 04:23:11 +00:00
David Rose 186da11f36 Trackball::set_control_mode() 2012-01-24 15:24:18 +00:00
David Rose dfe16c64f6 rename all Panda-built libraries to begin with libp3 or libpanda 2011-12-06 02:39:21 +00:00
David Rose 501470169f stdfloat_double 2011-10-10 05:25:10 +00:00
David Rose 0cf03bc158 untabify 2011-06-29 22:09:10 +00:00
David Rose 93637862da add trackball-use-alt-keys 2010-12-16 00:54:33 +00:00
David Rose 9124513b82 side-by-side stereo 2010-07-19 18:43:24 +00:00
gogg 876bd72fb9 Remove unused member _mods from mouseWatcherRegion declaration. 2009-12-01 00:38:04 +00:00
gogg fe94fedc10 fix for ancient bug that causes non-gui keyboard input to be discarded if the mouse pointer is outside the client area of the window 2009-11-24 01:21:19 +00:00
David Rose 928aec618d better handle touchscreens 2009-05-05 22:41:02 +00:00
David Rose 09f8d67a8a iphone touches 2009-04-26 01:11:49 +00:00
David Rose f486d3c152 make Transform2SG keep a reference-counting pointer to its node 2009-04-20 15:10:00 +00:00
David Rose 85e5ad2e45 MouseWatcher::set_frame 2009-02-05 23:42:38 +00:00
David Rose 807cae3bfa fix for incorrect within events 2008-12-31 01:12:22 +00:00
David Rose 58e0537e3c wide interrogate improvements: sequence protocol, MAKE_SEQ, __setitem__, and parameter coercion 2008-11-07 21:12:42 +00:00
David Rose d4c2c9858d SIMPLE_THREADS_NO_MUTEX -> LightMutex 2008-10-08 23:23:40 +00:00
David Rose c82dbc649b initialize keycode 2008-09-29 18:36:04 +00:00
David Rose f9cbb6f984 sort MouseWatcherGroup regions. Maybe fix for scroll bar getting stuck. 2008-09-15 20:14:46 +00:00
David Rose 2928e1088e new fix (idea suggested by Clemens Pecinovsky) 2008-06-11 20:54:50 +00:00
David Rose 494217ea89 revert incorrect patches in 1.60 and 1.62 2008-06-11 20:28:01 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
David Rose 28dbf6e736 suggested patch from Clemens Pecinovsky 2008-05-09 18:53:31 +00:00
David Rose d956aee536 handle pixel_zoom properly 2008-05-09 00:07:13 +00:00