rdb
8edc019307
device: overhaul InputDevice API:
...
- Rename "controls" terminology for analog inputs to "axes"
- Change some naming of accessors
- Unexpose methods where they are available as properties
- Add serial_number field
- Put battery levels under a "battery" field
2018-09-16 20:22:22 +02:00
rdb
8d8c5a546d
input: rename "action_x" button handles to "face_x"
2018-09-16 14:50:00 +02:00
rdb
e30b597926
Merge branch 'master' into input-overhaul
2018-09-16 12:28:22 +02:00
rdb
822f89fadb
dgui: accept arg in setText, setImage, setGeom, also add clearers
...
This enables the "setters" to behave in a way that people expect setters to behave. Since `setText(None)` now does not behave expectedly, a `clearText()` has also been added to remove the text.
Closes #385
2018-09-13 21:14:04 +02:00
rdb
8b3cc74cad
interrogate: write out OS-generic filenames in #include directives
...
Fixes #386
2018-09-13 21:14:04 +02:00
rdb
3417b9df09
egg: work around compiler bug in Visual Studio 2017
...
Fixes #379
2018-09-13 21:14:04 +02:00
rdb
ecb2b6f546
movies: forbid automatic coercion from string to MovieAudio
...
This was causing issues in the unit test when calling audiomgr.get_sound() with string.
2018-09-13 21:14:05 +02:00
rdb
47496068d3
Show materials with only base color applied properly
2018-09-09 20:56:37 +02:00
rdb
b183e99692
gobj: fix bug printing Material base color
2018-09-09 20:23:48 +02:00
jspam
a333353af6
Make Loader.loadSound() accept a MovieAudio instance as soundPath
...
This functionality seems to have inadvertently been removed by
refactoring commit 23bf9ea5.
Closes #383
2018-09-09 20:22:51 +02:00
rdb
cb9e65720a
interrogate: do not use MOVE in generated code, but use std::move
2018-09-09 13:48:50 +02:00
rdb
1a94e65b17
tests: fix mutex test on win32 where mutexes are always reentrant
2018-09-04 23:01:41 +02:00
rdb
11ecd3af87
putil: make ButtonHandle::none() constexpr
2018-09-04 12:58:48 +02:00
rdb
809f9b04f6
Fix problems with spinlock mutex/cvar implementation
...
This reimplements the spinlock on top of std::atomic_flag, which is guaranteed to be lockless. It also inserts the PAUSE (REP NOP) instruction which is strongly recommended to be placed in busy-wait loops by Intel.
This also includes a recursive spinlock implementation.
The spinlock implementation is disabled by default, but can be enabled by adding the --override MUTEX_SPINLOCK=1 flag to makepanda.
2018-09-04 12:58:48 +02:00
rdb
171ba35f26
tests: add some simple smoke tests for Mutex and ReMutex
2018-09-04 12:58:48 +02:00
rdb
cf4f8b35b6
pgui: fix deadlock in PGScrollFrame/PGSliderBar
2018-09-04 12:58:37 +02:00
rdb
670047b4b0
dtoolbase: enable use of std::atomic_flag, also on macOS
2018-09-04 12:02:13 +02:00
rdb
217cecb77f
pgui: remove some unnecessary reentrant locking in PGItem
2018-09-04 12:02:13 +02:00
Sam Edwards
e13a4d6539
pstatclient: Never pass nullptr to memcpy
...
Even though the only time this happened was when the size was 0,
it's still undefined to pass memcpy a nullptr.
2018-09-03 16:10:40 -06:00
Sam Edwards
5f72e9c763
bullet: Fix misplaced INLINE getter
2018-09-02 16:04:33 -06:00
Sam Edwards
8c09477e37
bullet: Add missing includes and declarations for non-composite build
2018-09-02 16:04:25 -06:00
rdb
b168fa6a85
tests: fix erroneous test_texture_clear_unsigned_byte test
2018-09-02 21:04:40 +02:00
rdb
927016711f
travis: use verbose flag to pytest
2018-09-02 20:59:40 +02:00
rdb
17bf50f1e8
audio: get_sound and uncache_sound should take Filename, not string
2018-09-02 20:55:58 +02:00
rdb
845ec7a990
cull: don't munge_points_to_quads if shader handles point size
2018-09-02 20:55:18 +02:00
rdb
b1f32e3f84
shader: reserve SL_SPIR_V ShaderLanguage value (as on vulkan branch)
2018-09-02 12:00:30 +02:00
rdb
eb62d7f223
tests: add unit tests for clearing and then peeking texture
2018-09-02 12:00:10 +02:00
rdb
9dec2aafb5
Fix static init ordering crashes in static build of pview
...
Fixes #381
2018-09-02 10:59:46 +02:00
rdb
3495537bf9
gobj: support clearing half-float textures
...
Fixes #374
2018-09-02 10:58:02 +02:00
rdb
c670cd45d9
gobj: handle infinity and NaN when peeking half float values
2018-09-02 10:56:20 +02:00
rdb
c4fe1ed883
gobj: slight refactor of Texture::do_get_clear_data()
2018-09-02 10:54:07 +02:00
Sam Edwards
4695557a5d
general: Don't require BUILDING_* for static builds
2018-08-31 23:54:32 -06:00
rdb
7cc100c38c
device: change ControlAxis enum to an Axis enum class
2018-08-26 21:18:29 +02:00
rdb
aae2b1e5ad
putil: fix a compiler warning
2018-08-26 21:18:11 +02:00
rdb
1d6c3f6486
Merge branch 'master' into input-overhaul
2018-08-26 19:03:21 +02:00
rdb
b1fc88027a
dtoolbase: add missing DTOOL_PLATFORM for linux_aarch64
2018-08-26 14:04:48 +02:00
rdb
27dbad6fd9
leveleditor: add missing import
2018-08-26 14:04:19 +02:00
rdb
115f8df4d5
putil: work around GCC bug causing undefined reference in debug build
2018-08-26 14:03:44 +02:00
rdb
a90159271b
tests: remove unused fixture from Datagram tests
2018-08-26 14:02:52 +02:00
rdb
c9372c3699
Fix a few GCC compile warnings
2018-08-26 14:02:33 +02:00
rdb
5147674980
Add script to run test suite on a wheel in a virtualenv
...
[skip ci]
2018-08-20 17:00:40 +02:00
rdb
4f9a2aca85
tests: fix issues with temp files without correct case on Windows
2018-08-20 16:56:45 +02:00
rdb
35fff81b6a
makepanda: fix missing BUILDING_DIRECT_DCPARSER
...
[skip ci]
2018-08-19 21:06:47 +02:00
Mitchell Stokes
f663d215d5
Remove some unused variables
2018-08-19 16:55:07 +02:00
rdb
044d84c8fd
mayaegg: fix various compilation warnings
2018-08-19 16:53:03 +02:00
rdb
91ae68f04b
tests: attempt to fix egg2pg test failure on macOS
2018-08-19 16:49:54 +02:00
rdb
b4abea17d5
tests: add various matrix unit tests
2018-08-19 16:43:34 +02:00
rdb
371c34d13b
linmath: allow constructing matrix from rows
...
This also enables using mat[n] wherever an LVecBase4 is accepted, as well as Mat4(*mat).
2018-08-19 16:42:36 +02:00
rdb
c4b657b5b2
interrogate: support implicit typecast operators in some cases
...
For example, this will let us pass a ConfigVariableFilename to anything that accepts a Filename, just like in C++.
Does not work if the return value if the typecast operator requires management.
2018-08-19 16:06:16 +02:00
rdb
21f5e77467
dtoolbase: prefer GCC AtomicAdjust implementation over i386 asm one
2018-08-19 16:05:39 +02:00