Commit Graph

8035 Commits

Author SHA1 Message Date
rdb a1b2d5b8dc Make use of new function call methods in Python 3.9 2020-12-12 17:28:21 +01:00
rdb ed397b3ab8 Merge branch 'release/1.10.x' 2020-12-09 17:59:37 +01:00
rdb 35eeb27386 VFSImporter: fix detection of source file encoding in Python 3
Incidentally, this should (in theory) also fix the _bootlocale import loop referenced in #1065
2020-12-09 15:46:51 +01:00
rdb 7b4ecbd60f directtools: Fix use of built-in direct instead of base.direct 2020-12-09 15:44:13 +01:00
rdb c9aedc2b44 Merge branch 'release/1.10.x' 2020-11-28 22:26:04 +01:00
rdb 4e7742b8e2 VFSImporter: replace deprecated U open() flag
Fixes #1063
2020-11-28 22:22:32 +01:00
Mitchell Stokes bd7b6d8fe7 build_apps: Allow setting hidden imports via setuptools options
This is exposed as a hidden_imports option, which is a dictionary. The
keys are module name and the values are a list of modules to include
when an import for the key is found.
2020-11-25 01:08:36 +01:00
LD f4d372fdcd dist: Add platform name to NSIS installer filename and generate it into the dist directory
Closes #1038
2020-11-17 23:56:30 +01:00
rdb d62146a317 Merge branch 'release/1.10.x' 2020-11-17 23:56:00 +01:00
Daniel 7eba53cffa showbase: Fix an entire DirectSession being (re)created on node selection
Closes #1051
2020-11-17 12:02:53 +01:00
rdb f1ca8a9018 direct: Additional linking in Loader API documentation 2020-11-17 12:01:42 +01:00
rdb f88441c584 dist: Fix error building Windows executable in Python 3.9 2020-11-17 12:01:05 +01:00
Drew C 75fb0d3b50
More modern Direct Session UI
Parents it to the corners properly, and has a nicer look to it
2020-11-04 14:05:52 -05:00
rdb c788912070 Merge branch 'release/1.10.x' 2020-10-02 12:20:58 +02:00
Daniel b507c88cd9 directtools: Fix empty scaling node of object handle
Closes #1029
2020-10-02 12:16:10 +02:00
rdb 54b93116e8 Merge branch 'release/1.10.x' 2020-09-16 10:59:59 +02:00
rdb 36eed0d9c9 dist: don't exclude api-ms-win-crt-*.dll libraries
These are needed to run the program on systems without the right CRT installed.
2020-09-14 12:30:43 +02:00
rdb 8e39072f6f dist: don't search same directory for dependencies more than once 2020-09-14 11:58:57 +02:00
rdb 9da7988909 CMake: fix pandac/PandaModules.py to match makepanda's 2020-09-13 16:18:02 +02:00
rdb 921cbc6bae Merge commit 'e0d34131822a8852ff72dc9c5597f4dc6900719a' 2020-09-13 16:17:06 +02:00
rdb 22e5f95c7f dist: don't warn about missing DLLs that are a part of Windows 2020-09-13 15:26:56 +02:00
LD 2e862c1bbe dist: fix the relative path of the files and output dirs in the generated NSIS script
Closes #1008
Fixes #1003
2020-09-13 15:17:02 +02:00
rdb 4e8ee5bae5 dgui: Add snake_case aliases for DirectGuiGlobals 2020-09-13 15:17:02 +02:00
rdb 66ac3be604 Merge branch 'release/1.10.x' into master 2020-09-12 23:23:58 +02:00
Mitchell Stokes 306c0fce0f build_apps: Disable the pip version check when downloading wheels
If the user is not using the latest version of pip, they will likely be
spammed by pip enough as is. There is not much need to remind them about
this for each built platform.
2020-09-12 12:01:05 -07:00
rdb 54238e9730 direct: Add more links to manual pages in module docstrings
See panda3d/panda3d-docs#53

[skip ci]
2020-09-11 13:15:58 +02:00
rdb 4d20b36098 doxygen: exclude directscripts directory building C++ API reference 2020-09-09 17:59:53 +02:00
rdb cd435ecec8 filter: Support HDR in CommonFilters (using ACES tonemap) 2020-09-06 14:23:45 +02:00
rdb f7375e215e filter: Add built-in sRGB encoding filter 2020-09-06 13:30:02 +02:00
Drew C 16f489ac5b showbase: Parent the OSD to a2dTopLeft
The Y position is set to -0.1 as the original value was 0.9, so it was intended to be about 1 unit down from the top.

Closes #977
2020-09-01 11:17:31 +02:00
rdb 6c8066bb61 direct: Remove a remaining sys.version_info check 2020-09-01 11:12:00 +02:00
rdb 707ea089cb Merge remote-tracking branch 'origin/release/1.10.x' 2020-09-01 11:09:29 +02:00
rdb ea01c3e0eb directutil: Remove MySQL-related classes (see discussion in #1000) 2020-09-01 11:03:42 +02:00
rdb fcfe3206eb cleanup: Remove newlines at end of direct/src/fsm/State.py 2020-09-01 10:55:37 +02:00
rdb dae9e31223 direct: fix various uses of types.MethodType in Python 3 (from #1000) 2020-09-01 10:54:38 +02:00
rdb ab6bf5f4f7 general: Add workaround for Windows bug in various uses of isprint()
See #994; there is a regression in certain versions of the Windows CRT that gives the wrong result for isprint().  This adds workarounds to various potentially affected locations where isprint() is being used.
2020-08-21 14:51:42 +02:00
rdb b655aa86c5 Merge branch 'release/1.10.x' 2020-08-17 13:05:51 +02:00
Mitchell Stokes 2cb3779204 build_apps: Use FreezeTool.__replacePaths() to cleanup tracebacks
This alters paths in tracebacks to contain just module names instead of
full, absolute paths. This makes tracebacks easier to read and leaks
less information about the build machine.

Closes #991
2020-08-17 10:59:18 +02:00
rdb dfa1eb78cd dist: Fix replacePaths just prepending "linecache" before paths 2020-08-17 10:59:18 +02:00
rdb 8178fb21f3 direct: don't rely on vfs being present in builtins 2020-08-11 09:40:34 +02:00
rdb 32143055bd PythonUtil: Fix usage of reduce() for Python 3
Backport to 1.10.7; see #980
2020-08-04 11:08:51 +02:00
pythonengineer 13011278af PythonUtil: Fix usage of reduce() for Python 3 2020-08-04 11:05:29 +02:00
rdb 3c4f666509 direct: Improvements to API reference, better cross-linking 2020-07-27 13:40:31 +02:00
rdb dcc08ac572 Merge branch 'release/1.10.x' 2020-07-25 14:58:35 +02:00
rdb 52127f6805 ShowBase: None comparison cleanup 2020-07-25 12:49:58 +02:00
rdb 43b5345588 ShowBase: significant improvements to ShowBase API documentation
Fixes #198
2020-07-25 12:48:54 +02:00
Tohka 5fdbc97499 direct: Fix TexMemWatcher crash when graphics memory reaches 1 GB
Closes #975

Co-authored-by: rdb <git@rdb.name>
2020-07-25 10:32:36 +02:00
rdb e787929c85 Merge branch 'release/1.10.x' 2020-06-29 14:50:59 +02:00
rdb d659a3b0ff dist: fix location of numpy/Pillow shared libraries
Fixes #914
2020-06-29 11:58:00 +02:00
Donny Lawrence 0f3948005f FreezeTool: Place blob in custom segment on macOS
The motivation behind this is in the code's comments. FreezeTool will
only put the blob in a custom segment if the provided deploy-stub
contains a __PANDA segment stub. Otherwise, it keeps the old behavior of
simply putting the blob at the end of the binary.
2020-06-22 22:41:33 +02:00
Donny Lawrence 23041ec069 FreezeTool: Make blob_size multiple of page size
A Mach-O segment must be sized in 4KiB increments. This shouldn't change
behavior for other platforms since mmap would round it up to hit a
page boundary anyway.
2020-06-22 22:41:30 +02:00
Donny Lawrence 46ae5a52d3 FreezeTool: Don't write blobinfo to wrong offset
The mechanism for searching for a specific symbol in a Mach-O binary got
tripped up when hitting the blobinfo stab entry, causing it to return an
offset of 0.
2020-06-22 22:41:26 +02:00
rdb 4a21329a79 Merge remote-tracking branch 'origin/release/1.10.x' 2020-06-20 19:49:55 +02:00
Fireclaw 86cfbc22b1 direct: Fix errors in PythonUtil.detectLeaks() function (#955)
* Replaced removed choice() function with ternary expression
* Add sanity check for _crashOnProactiveLeakDetect, don't crash by default

Closes #955
2020-06-15 15:26:17 +02:00
Kyle Smith 7f9680bd69 dcparser: The dcparser now compiles outside of panda
Closes #945
2020-06-14 13:10:01 +02:00
rdb f469edf71c direct: remove a few more Python 2-isms 2020-06-14 12:32:19 +02:00
rdb 36c3d3e622 Merge branch 'release/1.10.x' 2020-05-05 18:15:57 +02:00
rdb 9159fc1029 operator delete should check for null pointer before deallocating
It is a pervasive belief that using "delete" with a null pointer is safe, so our custom delete operators should also handle this case correctly.

This may fix regressions introduced by #934
2020-05-05 18:13:13 +02:00
Fireclaw 316d254c64 distributed: Fix two ServerRepository issues in Python 3 2020-05-05 17:28:32 +02:00
rdb e4573ef0fe cleanup: Remove more unnecessary nullptr checks before delete
Follow-up to #934
2020-05-05 14:46:30 +02:00
Chitresh13 929202bd9b dist: Remove Python 2 code from deployment system
Closes #892

Co-authored-by: rdb <git@rdb.name>
2020-04-26 20:22:11 +02:00
rdb d799a09002 cleanup: Remove support for EOL versions of Python
Fixes #905
2020-04-26 20:07:56 +02:00
rdb e2177ecbdb Merge branch 'release/1.10.x' 2020-04-26 00:16:25 +02:00
rdb 98c82ddb9c wxwidgets: don't create ShowBase instance upon importing WxPandaShell 2020-04-25 14:33:39 +02:00
rdb 202a871a7e showbase: remove wantUberdog from builtin scope
Applications that need it can trivially copy it to their own modules.

Closes #895
2020-04-13 12:25:16 +02:00
rdb 9e80282aff dist: replace p3fmod_audio with p3openal_audio if former is missing
This helps when deploying to macOS, where p3fmod_audio is the default for 1.10 builds, a fact that is very easy to overlook when deploying to macOS and only including the p3openal_audio plug-in.
2020-04-02 22:34:04 +02:00
rdb 69296585a4 dist: make config.prc handling a bit more robust
Strip comments after value, don't look for variable names mid-string, and sort the prc files deterministically.
2020-04-02 22:31:13 +02:00
Derzsi Dániel 7ce1a9ffed direct: Fix RuntimeError during ControlManager deletion
Closes #884
2020-04-02 13:52:47 +02:00
rdb 30d9f88f8e Merge branch 'release/1.10.x' 2020-04-01 18:53:00 +02:00
rdb 73ea170f2b showbase: improve docstrings of ShowBase and ShowBaseGlobal 2020-04-01 18:32:22 +02:00
rdb 8672054e30 showbase: fix erroneous docstring (audio unit is metres by default) 2020-03-30 13:57:15 +02:00
rdb 6a7bd49296 dist: don't warn about missing libc++.1.dylib on macOS 2020-03-30 13:55:59 +02:00
rdb f524f00e8e Merge branch 'release/1.10.x' 2020-03-14 15:01:38 +01:00
Derzsi Dániel 32a9ea2cef dgui: Fix DirectScrolledList scrollTo error in Python 3
As a rule of thumb, Python 3 divisions always have float results. Unfortunately, this piece of code is still relying on the old Python 2.7 behavior.

Closes #880
2020-03-14 14:55:32 +01:00
rdb 918d268b80 Merge branch 'release/1.10.x' 2020-02-28 15:57:06 +01:00
Derzsi Dániel eccfce4606 task: Fix memory leak related to Python 3 signal API changes
Python 3's signal.py API does not properly support custom signal handlers. An exception is created every frame because of this, which fills up the memory of the application.

Closes #873
2020-02-28 15:55:28 +01:00
Fireclaw c73415b4ba dgui: fix sizing after changing Slider/Scrollbar orientation
Closes #700
2020-02-23 16:28:40 +01:00
Thaumaturge 50d27166d8 particles: expose birth_litter() to support burst emission
Closes #524
Closes #340
2020-02-23 15:17:57 +01:00
fireclawthefox f21ab509ec FSM: support "any" state transitions
Closes #344
2020-02-23 14:54:30 +01:00
rdb c59b91f503 Merge branch 'release/1.10.x' 2020-02-23 14:53:16 +01:00
Mitchell Stokes 391578ea1f build_apps: Fix running with Pip 20
Fixes #854
Closes #856
2020-02-22 12:10:49 +01:00
rdb fda898807a Merge branch 'release/1.10.x' into master 2020-02-10 13:52:05 +01:00
Fireclaw 5d93237386 dgui: fix regression in DirectScrolledFrame (see #699)
Made initialization ignore the setScrollBarWidth function
Respect the length/height of the scrollbar and only change the actual
width in the setScrollBarWidth function
Added a very basic unittest class for the scrolledFrame

Closes #864
2020-02-10 13:17:05 +01:00
Leandro (Cerberus1746) Benedet Garcia 5f7809469c general: removed all WIN32, WIN32_VC and friends 2020-02-05 22:45:03 -07:00
rdb b272af8bbf Merge branch 'cmake' 2020-01-22 11:20:51 +01:00
rdb 26b86dfe5f Merge branch 'release/1.10.x' 2020-01-22 11:20:24 +01:00
rdb bd3dd63cbe actor: only remove control effects of given animations in unloadAnims
The previous behavior was for unloadAnims() to remove the control effects from all animations, even when only one animation was passed in, which is unintuitive behavior.

Fixes #853
2020-01-22 08:40:50 +01:00
rdb 05d5bac598 Merge branch 'release/1.10.x' into incoming 2020-01-21 15:34:25 +01:00
rdb 2960b67c7a actor: minor style fixes 2020-01-21 15:27:31 +01:00
rdb 3b361974dc actor: improve API documentation for Actor.cleanup()
Intended to address panda3d/panda3d-docs#40

[skip ci]
2020-01-19 11:23:35 +01:00
Sam Edwards 28b85d2f58 CMake: Work around CMake issue 20206 2020-01-10 16:48:59 -07:00
rdb b212d254d0 Merge branch 'release/1.10.x' into incoming 2020-01-07 22:09:59 +01:00
rdb a50d375c35 dgui: fix DirectSlider regression on Python 2 2020-01-07 22:07:39 +01:00
rdb 6b12fbe6f2 dgui: show assertion when passing a NaN into DirectSlider
If we don't do this, we get an assertion somewhere in the bowels of the scene graph, which will be much less helpful for tracking down the origin of the NaN.
2020-01-07 21:41:04 +01:00
rdb 1c4773a8e4 dist: move "import pip" from module level to download_wheels
The aim of this is that pip is no longer a dependency to be able to run test_imports.
2020-01-07 14:52:06 +01:00
LD 201f9a48be dist: Also use copy_with_dependencies() for executables to flatten their dependencies
Closes #837
2020-01-07 14:50:38 +01:00
rdb 81b33a7afa Merge branch 'release/1.10.x' 2020-01-06 21:06:57 +01:00
rdb b245c480c0 dist: fix ModuleFinder reading .pyc files in Python 2.7-3.3, 3.7 and 3.8
Fixes #836
2020-01-06 21:05:22 +01:00
LD f09ee92582 dist: glob pattern must be lowercase as it is compared to lowercase filenames
Closes #832
2020-01-06 18:18:04 +01:00
LD bd5841781c dist: Add missing dependency for CEFPython on macOS
Closes #835
2020-01-06 18:18:04 +01:00
LD 8d0d733da8 dist: Flatten also @rpath/ dynamic library references
Closes #834
2020-01-06 18:18:04 +01:00
rdb 389cc4bfdb Merge branch 'release/1.10.x' 2020-01-06 03:25:22 +01:00
rdb ca89b7420a Update Python 2.7 EOL warnings to indicate that EOL date is reached
[skip ci]
2020-01-06 00:36:49 +01:00
rdb a8a775ad09 Merge branch 'release/1.10.x' 2020-01-04 02:49:28 +01:00
rdb 3367fe266f tkpanels: properly test "None" return from askopenfilename 2020-01-03 18:19:39 +01:00
rdb 7ca66bfe6f tkpanels: work around tkinter bug cancelling file open dialog on macOS
Fixes #811
2020-01-02 01:06:03 +01:00
rdb c02bbe50af p3d: add deprecation notice to all direct.p3d modules 2019-12-31 17:15:34 +01:00
rdb 3755e157bf dgui: remove erroneous `p3d.` prefix (regression from #819) 2019-12-30 03:24:16 +01:00
LD 88fd65394b dgui: Add DirectGui events for wheel up and down mouse events
Closes #819
2019-12-30 03:07:52 +01:00
rdb b78b7be326 Merge branch 'release/1.10.x' 2019-12-30 01:50:54 +01:00
rdb 15d6e0c543 actor: support custom Python loader hooks
Fixes #750
2019-12-29 14:57:43 +01:00
rdb 0972dfa457 dcparser: fix ability to compile outside of Panda
Fixes #759
2019-12-29 14:27:05 +01:00
rdb c0fd600454 stdpy: threading2: join non-daemonic threads at interpreter shutdown
Fixes #758
2019-12-28 23:51:54 +01:00
rdb bb3bfebdc2 stdpy: support name and daemon properties in threading2 module 2019-12-28 23:48:04 +01:00
rdb 2f31c9ce68 stdpy: recognize daemon=True argument in Thread constructor 2019-12-28 23:46:58 +01:00
rdb cb53e5d822 dcparser: fix unpacking uint64 and int64
Closes #751
2019-12-25 16:57:06 +01:00
Derzsi Dániel 9455fb3f73 dgui: resolve DirectFrame regression
Closes #810
2019-12-20 11:44:25 +01:00
rdb f1575eafbc dist: set default platform tag for macOS to macosx_10_9_x86_64
This is in accordance with #300.  It will still pick macosx_10_6_x86_64 wheels if the 10.9 wheels are not available.
2019-12-18 18:00:51 +01:00
rdb 390abac276 Merge branch 'release/1.10.x' 2019-12-18 18:00:41 +01:00
rdb 8e6ae703c1 dist: use macosx_10_9_x86_64 by default for Python 3.8+
This is because Python 3.8 is only available for macOS 10.9+, and no longer for 10.6.
2019-12-18 09:10:58 -05:00
rdb 0b52241e95 stdpy: return number of bytes from write() method 2019-12-17 22:58:12 +01:00
rdb 25217d9f73 Merge branch 'release/1.10.x' 2019-12-11 18:03:39 +01:00
max 2ca37b8c97 dgui: refactor code common to DirectFrame setGeom, setImage, setText
Closes #776

Co-authored-by: rdb <git@rdb.name>
2019-12-11 17:57:15 +01:00
rdb c3052f3ae0 dist: support implicit namespace packages (as per PEP 420)
Fixes #778
2019-12-11 16:10:46 +01:00
rdb 9565d99fab Merge branch 'release/1.10.x' 2019-12-08 15:18:51 +01:00
rdb 55f624e073 windisplay: add a variable to disable Panda's message pump
This is particularly important for Tcl/Tk, which assumes it is in charge of the Windows event loop.

Fixes #586
2019-12-08 15:04:06 +01:00
rdb b43b0c9fad dist: ship regular "distutils" even when in PyPI "virtualenv" env
Fixes #747
2019-12-08 12:42:05 +01:00
rdb 1ea8c9f299 Merge branch 'release/1.10.x' 2019-11-28 22:28:31 +01:00
rdb 92476a3788 dist: fix exception when module has None __path__ 2019-11-17 20:36:40 +01:00
rdb d088263f6f Merge branch 'release/1.10.x' 2019-11-11 03:28:39 +01:00
Mitchell Stokes 47feac9a3d build_apps: Fix defaults for package_data_dirs
Fixes #779
2019-11-10 16:58:39 -08:00
Thaumaturge c0daa75353 particles: add parameter to delay particle birth in soft_start()
Also adds a get_tics_since_birth() getter.

This feature can be used to synchronize different particle effects.

Closes #769
2019-11-10 20:33:45 +01:00
rdb f47fd8875c particles: add snake-case aliases to Python particle classes 2019-11-10 20:26:45 +01:00
Sam Edwards 9b7bcf2564 Merge branch 'master' into cmake 2019-11-07 21:21:04 -07:00
rdb 847ebf667f Merge branch 'release/1.10.x' 2019-11-06 10:49:05 +01:00
rdb 2e3b350510 dgui: allow creating DirectOptionMenu without ShowBase 2019-11-03 12:12:42 +01:00
rdb 69e8b4ed3c showbase: make render2d available to GUI items without ShowBase 2019-11-03 12:09:36 +01:00
fireclawthefox eb3b45ebb1 dgui: Fix reset text scale on DirectOptionMenu item unhighlight
Set text scale to previous unhighlighted scale on unhighlight to keep
custom scales
2019-11-03 11:51:36 +01:00
rdb 6d96028b71 Merge branch 'release/1.10.x' 2019-11-02 20:42:32 +01:00
rdb 39988e4787 general: update a few outdated links in API documentation 2019-11-02 19:41:56 +01:00
rdb 22e88a5b6a direct: a few improvements to API documentation 2019-11-02 19:41:11 +01:00
rdb 40b3c7ccc9 direct: remove empty useless direct.controls.PhysicsRoller module 2019-10-29 23:55:14 +01:00
rdb a72be90f17 Merge branch 'release/1.10.x' 2019-10-29 23:13:22 +01:00
fireclawthefox b3c79096e5 distributed: fix division exception in ServerRepository
change operator to double slash for integer division

Closes #762
2019-10-29 20:47:48 +01:00
rdb f149fb4ab0 direct: big formatting changes for the benefit of API reference
Part of the effort to move the API reference to Sphinx, see panda3d/panda3d-docs#21
2019-10-29 20:43:41 +01:00
rdb ffeb8937bf task: fix unnecessary use of PythonUtil.Queue class
A standard list will do just fine here.
2019-10-29 14:57:20 +01:00
rdb 0a622d08e9 direct: fix a few broken imports 2019-10-29 14:57:04 +01:00
Sam Edwards 12c16eb9ff Merge branch 'master' into cmake 2019-10-15 23:43:25 -06:00
rdb 247f3c415a Merge branch 'release/1.10.x' 2019-10-08 19:50:48 +02:00
rdb 099be1f652 stdpy: fix bad performance reading all data from file
See Moguri/panda3d-gltf#31
2019-10-08 19:44:29 +02:00
Sam Edwards 5961cc2ee0 Merge branch 'master' into cmake 2019-10-05 15:00:49 -06:00
rdb 114a7c0995 Merge branch 'release/1.10.x' 2019-10-05 21:13:42 +02:00
Aidan Noll 984d70e8e0 dgui: update DirectScrolledList type checking for Python 2/3 compatibility 2019-10-05 21:10:05 +02:00
rdb 6c0a4c722c dist: fix various errors in icon.py 2019-09-30 13:51:40 +02:00
Sam Edwards 9645aaee07 CMake: Fix generated pandac.PandaModules on Py2
Python 2 doesn't use the fully qualified module name in
its ImportError output; only the local name. Test for that.
2019-09-18 01:13:33 -06:00
Sam Edwards fe7fdc0976 CMake: Reclassify direct/distributed/ headers as installed headers 2019-09-16 17:43:03 -06:00
Mitchell Stokes 660249a5cc Remove p3d/AppRunner/plugin system
Co-authored-by: rdb <git@rdb.name>

Closes #734
2019-09-10 16:49:57 +02:00
rdb 2c42cfcc1a Merge branch 'release/1.10.x' 2019-09-10 16:34:11 +02:00
rdb 5339b8239c dist: style fix for None comparison in FreezeTool.py 2019-09-08 09:51:41 +02:00
Ian Eborn (Thaumaturge) 73d6c52da6 deploy-ng: fix typo in FreezeTool.py
This causes an error when a module referenced by a star pattern doesn't exist.

Fixes #721
Closes #725
2019-09-07 09:45:06 +02:00
Paul m. p. P ec1c3ef347 extract_docs: fix reference to undefined typename
Closes #730
2019-09-06 16:02:51 +02:00
rdb df848965fb showbase: *Global.py modules should not export 'sys' module 2019-09-06 16:02:51 +02:00
rdb 6428e1b3cb Merge branch 'release/1.10.x' 2019-09-06 15:51:34 +02:00
rdb e535473b65 tkwidgets: fix missing sys import from Valuator.py
[skip ci]
2019-09-06 14:12:04 +02:00
rdb 504257f4d2 ParticleEffect: loadConfig should respect model-path
Fixes #687
2019-09-06 14:11:13 +02:00
rdb 31a054c933 tkwidgets: change how TreeNode icons are located/loaded
This makes it follow the regular resolution rules of the model-path and doesn't risk a RuntimeError when importing the module.
2019-09-06 14:01:55 +02:00
Sam Edwards dbe7a2f94b Merge branch 'master' into cmake 2019-09-06 04:05:12 -06:00
rdb d92b440617 Merge branch 'release/1.10.x' 2019-09-06 09:46:20 +02:00
rdb ba1023efa9 stdpy: clarify comment to indicate os.PathLike is supported in open() 2019-09-04 12:26:43 +02:00
rdb 2e03eb405b deploy-ng: handle .pz and .gz models correctly 2019-09-03 22:45:40 +02:00
rdb 35135ea0e1 Merge branch 'release/1.10.x' 2019-09-01 21:54:57 +02:00
Sam Edwards 5fa4af9189 CMake: Rely on GNUInstallDirs to specify install paths
This makes multiarch OSes happy as they can dictate that
64-bit libraries go into 'lib64'
2019-08-31 00:48:42 -06:00
Sam Edwards 1a654cba04 CMake: Record the location that headers are installed
This populates INTERFACE_INCLUDE_DIRECTORIES on the targets
after they're installed.
2019-08-30 22:58:18 -06:00
rdb d843c5c198 deploy-ng: use median cut algorithm when palettizing icon
This prevents infrequently occurring colors from being washed out.

See #718
2019-08-28 22:58:59 +02:00
rdb 28d9a33db4 deploy-ng: fix an exception when all icon images could not be read 2019-08-28 22:58:50 +02:00
rdb 00376c9d0a deploy-ng: fix some Python 3 issues in icon generation code
See #718
2019-08-28 22:41:58 +02:00
Sam Edwards 855d217f35 CMake: Update for upstream changes
- Miles is gone; remove all references
- pystub is gone; remove all references
- dcparser uses Interrogate extensions properly; don't depend on Python
- stringStream* moved to express from downloader
2019-08-24 18:07:22 -06:00
Sam Edwards 19ed9f6b47 Merge branch 'master' into cmake 2019-08-24 18:07:12 -06:00
Sam Edwards 6c3013a29c dcparser: move Python-specific code to extension files
We can now build dcparser without linking to Python and dcparse.exe's dependency on pystub is removed.

Co-authored-by: rdb <git@rdb.name>
2019-08-23 18:58:19 +02:00
Sam Edwards 36df3bdf0b dcparser: Delete dcPython.h
py_panda.h has the same purpose; we also don't want
Python.h brought in from the headers (only from the
.cxx files) so that including the headers won't require
linkage against Python.
2019-08-23 13:15:36 +02:00
rdb 665d2fc56b Merge branch 'release/1.10.x' into incoming 2019-08-23 10:53:09 +02:00
rdb 2575c01261 Loader: fix passing a tuple to loader.loadModel 2019-08-22 10:44:34 +02:00
rdb 1e6be1b2ee Merge branch 'release/1.10.x' into incoming 2019-08-20 01:26:32 +02:00
rdb 062460cbe0 dgui: store guiItems on ShowBase class dict instead of module 2019-08-20 01:07:39 +02:00
rdb a0aa7de291 dgui: fix critical regression introduced by 43a5719 2019-08-19 21:26:35 +02:00
rdb a40228202b Merge branch 'release/1.10.x' 2019-08-18 22:34:23 +02:00
rdb 170ad017bb deploy-ng: fix some issues with .icns files generated on macOS
Also add support for 1024x1024 icons, supported as of Mac OS X 10.7

I'm not sure that it's significant to put the mask before the respective sized image, but I've seen other working icons do it, so it can't hurt.
2019-08-18 11:14:39 +02:00
Mitchell Stokes d3c9199d9f deploy-ng: add icon support for macOS (#468) 2019-08-18 11:13:18 +02:00
rdb f708402760 deploy-ng: add 128, 256 to req. icon sizes, prefer scale from double 2019-08-18 11:10:40 +02:00
rdb 2fe0599255 deploy-ng: support adding icons to Windows binaries (part of #468) 2019-08-17 22:42:52 +02:00
Sam Edwards 31c9a88dcf CMake: Ugh, just give p3distributed a dummy .cxx instead
Windows won't even create the .lib unless there's at least one
source file. Whatever, this is easy to do.
2019-08-15 16:47:55 -06:00
Sam Edwards d008037244 CMake: Use Python::Module, not Python::Python, for extension linkage
CMake 3.15+ provides the former, which extension modules should link
against in order to ensure the ABI-appropriate linkage for the
platform.

For older versions of CMake, try to hack up the correct linkage for
the platform. If the platform isn't recognized, tell the user to
upgrade CMake.

This also tweaks p3pystub just a bit, since now it's actually relied
upon to resolve runtime link issues when p3dcparse pulls in direct,
as p3dcparse doesn't link against Python at all.
2019-08-15 16:47:53 -06:00
rdb 5a804925ec deploy-ng: set module suffixes properly for Python 3.8 2019-08-14 15:24:40 +02:00
fireclawthefox 24d48d8cb0 dgui: allow setting DirectEntryScroll entry after the fact
Closes #702
2019-08-14 13:31:08 +02:00
rdb 5c99cf16f8 dgui: fix DirectEntry._autoCapitalize() on Python 3.x (#628) 2019-08-14 13:26:33 +02:00
rdb 43a5719bac dgui: allow using various GUI items without instantiating ShowBase
This is done by eliminating dependency on the `hidden` built-in, which can now instead be imported from ShowBaseGlobal.
2019-08-14 13:26:27 +02:00
rdb bc563c8664 Merge branch 'release/1.10.x' 2019-08-03 11:24:05 +02:00
fireclawthefox 2b64a7d74f dgui: Scrollbar width changeable after initialization
Closes #699
2019-08-03 09:42:16 +02:00
fireclawthefox c395460390 directtools: Added missing imports
Closes #698
2019-08-03 09:40:11 +02:00
rdb b558bc8bfb Merge branch 'release/1.10.x' 2019-07-30 19:32:16 +02:00
rdb 7b9f87412a loader: support Python loader plug-ins
This allows defining custom loader types from Python code.  Packages can use metadata entry points to register file types with the loader.

Example code: https://gist.github.com/rdb/cb3c2f4a98ce371c722e3f297b445153
2019-07-30 13:04:46 +02:00
rdb 7ab377f28e dgui: fix option menu's cancelFrame not working in scrolled frame
Fixes #658
2019-07-29 13:07:26 +02:00
rdb 36e1b66349 Merge branch 'release/1.10.x' 2019-07-18 20:21:07 +02:00
rdb 22d50297a2 actor: fix makeSubpart on models with pre-bound animations
Fixes #647
2019-07-18 20:18:22 +02:00
rdb 3a7ab6c319 Merge branch 'release/1.10.x' 2019-07-15 19:51:19 +02:00
pythonengineer 46a3a72029 PythonUtil: weightedChoice should throw IndexError on empty list
Also includes a unit test.

Closes #682
2019-07-15 19:39:31 +02:00
Sam Edwards 1bd15dad60 CMake: Manually set p3distributed's linker language
It doesn't contain any source files anymore (see last commit),
so for non-metalib builds, this is necessary for CMake to
understand how to invoke the linker/archiver.
2019-07-10 15:39:46 -06:00
Mitchell Stokes 1a03d997b2 Remove support for Miles audio system
See #440 for discussion on why this is being removed.

Closes #660
2019-07-10 14:13:36 +02:00
rdb d5788d9422 Merge branch 'release/1.10.x' 2019-07-10 12:22:56 +02:00
rdb 2c9d16f62e ParticlePanel: set reasonable max values for integer sliders
Fixes #672
2019-07-10 12:01:55 +02:00
Sam Edwards e3cd658642 CMake: C++ code in direct.distributed should be an extension
This code is so heavily dependent on Python (and makepanda
doesn't even build it into libp3direct) that we shouldn't
even try to put it in the libp3direct library ourselves.
2019-07-07 16:09:52 -06:00
Donny Lawrence f0b4d7637b CMake: Separate composite files by extension. 2019-06-27 17:38:18 -06:00
wezu 617f3f7c7b
Snake-case aliases for BufferViewer
Add snake_case aliases for BufferViewer
2019-06-16 12:01:54 +02:00
rdb 1302b215ea Merge branch 'release/1.10.x' 2019-06-07 22:18:26 +02:00
Fireclaw 387b43adde dgui: Fix popupMarker_pos related crash
Set initial popupMarker position to previous default by using None as default
2019-06-07 22:13:25 +02:00
Sam Edwards 039f5af34e Merge branch 'master' into cmake 2019-06-03 23:12:23 -06:00
rdb 2e9395b766 Merge branch 'release/1.10.x' 2019-05-14 14:41:43 +02:00
rdb 7b77888e5a FilterManager: allow specifying custom fbprops in renderQuadInto
Corollary to ea0210640c (see #599)
2019-05-13 14:25:22 +02:00
rdb e8fc76747a showbase: rename attachInputDevice gui=True arg to watch=True
It describes more accurately what it does, which is attach the MouseWatcher to it.  Though it was intended to help with GUI navigation, it can also be used for eg. polling button states.
2019-05-13 13:53:33 +02:00
rdb 3f312eccd9 Merge branch 'release/1.10.x' 2019-05-12 21:03:14 +02:00
rdb c4a01ac564 pipeline: give Mutex and ReMutex more Pythonic semantics
This allows using mutices in with-blocks and wraps up the functionality of acquire() and try_acquire() into a single acquire(blocking=True).

Furthermore, the GIL is no longer released in cases of no contention.
2019-05-12 20:58:13 +02:00
rdb b8b6f2f2dc showbase: fix BufferViewer error when opening window right away 2019-05-09 19:18:25 +02:00
rdb 11808862f2 showbase: fix BufferViewer when main window is opened later
Fixes #648
2019-05-09 18:45:38 +02:00
rdb a92dce29cc Merge branch 'release/1.10.x' 2019-05-03 21:03:49 +02:00
rdb db00baa230 deploy-ng: add link to index for thirdparty wheels
This is where we can host wheels for packages that haven't uploaded wheels for all platforms, such as PyYAML and esper.

[skip ci]
2019-05-03 17:57:27 +02:00
rdb 541a2a73f0 showbase: allow attaching default MouseWatcher in attachInputDevice
This makes it easier to control GUIs using a gamepad.
2019-05-03 16:24:13 +02:00
rdb ea0210640c FilterManager: allow specifying custom fbprops in renderSceneInto
Fixes #599
2019-05-03 16:24:13 +02:00
rdb b08e38cf3d deploy-ng: add nag screen warning users who are still on Python 2
See #602
2019-05-03 16:24:13 +02:00
rdb 0ac36185a9 Merge branch 'release/1.10.x' 2019-05-02 21:34:25 +02:00
rdb 6d9b217c2c tkwidgets: fix exceptions hovering over rgbPanel menu items 2019-05-02 16:18:22 +02:00
rdb a3b4486ef3 tkpanels: fix a few exceptions in AnimPanel 2019-05-02 16:18:09 +02:00
rdb f32dc3cf2b tkpanels: add missing AnimPanel imports 2019-05-02 16:17:17 +02:00
Sam Edwards 49865c103a CMake: Modify install_python_package() so it keeps the build-dir copy up-to-date too 2019-05-01 23:44:47 -06:00
Maverick Liberty 4d33db2028 DirectOptionMenu: Fix popup menu reset of the popup marker's pos
Also defines popupMarker_pos and raises an assertion error if #showPopupMenu() is called when no items have been specified.

Fixes #636
Closes #637
2019-05-01 17:23:04 +02:00
nate97 d786709a49 sfxplayer: fixes bug when using the "node argument" in SoundInterval, also fixes Py3 TypeError exception
Closes #640
2019-05-01 17:17:06 +02:00
Sam Edwards 65d11a4cfa CMake: Fix pandac.PandaModules generation 2019-04-27 22:45:51 -06:00
Sam Edwards b3f5c38ef3 CMake: Remove references to "panda3d" from Interrogate 2019-04-14 23:10:49 -06:00
Sam Edwards 6097d34ead CMake: Neatly format everything for readability and consistency 2019-04-14 22:37:18 -06:00
Sam Edwards 671f15e052 Merge branch 'master' into cmake 2019-04-13 17:29:44 -06:00
rdb 552916efea Merge branch 'release/1.10.x' 2019-04-09 13:31:51 +02:00
rdb d89da168bb PythonUtil: fix use of types.InstanceType in Python 3 in itype()
Really, though, don't use this function.  It does not consider new-style classes, is not consistent in its return values and it seems to do nothing that repr(type(x)) doesn't do.
2019-04-09 12:53:13 +02:00
rdb 9f9665e090 direct: don't use types.InstanceType in Messenger.detailedRepr
Fixes #591
2019-04-09 12:42:06 +02:00
rdb bf8a959d60 direct: remove multi-line strings with unrunnable test code 2019-04-02 22:45:25 +02:00
Christopher Snow b06b5791ca Task: Couple two clauses which execute the same logic.
Closes #589
2019-03-29 12:18:37 +01:00
Sam Edwards f8161cc529 Merge branch 'master' into cmake 2019-03-12 02:03:16 -06:00
rdb 8d1bdf0118 Merge branch 'release/1.10.x' 2019-03-10 20:49:52 +01:00
rdb 088b90e887 TexMemWatcher: fix compatibility issues with Python 3
Closes #578
2019-03-10 20:21:54 +01:00
rdb cbb3c182a5 Merge branch 'release/1.10.x' 2019-03-04 16:57:52 +01:00
rdb 58df4064da ParticlePanel: fix Pmw error spam when hovering over File menu items
Fixes #552
2019-03-04 14:23:33 +01:00
Derzsi Dániel c337e58f4d direct: Resolve DirectScrolledFrame crash on destroy
Destroying DirectScrolledFrames currently crashes the game, because they are destroyed twice. This commit makes sure to destroy the scrolls only once.

Closes #574
2019-03-04 12:18:21 +01:00