baldurk
e4bd23b671
Fix bounds check in internal parser
2026-08-31 12:30:22 +01:00
baldurk
1aac7afdf1
Add helper function for appending text to a textedit
2026-08-31 12:13:26 +01:00
baldurk
0690269cb7
Add shortcuts for using user's preferred fixed font in MiniQtHelper
2026-08-31 11:27:30 +01:00
baldurk
da8132b69c
Add MiniQtHelper functions for scrolling widgets
2026-08-31 11:26:05 +01:00
baldurk
6b02191629
Try to break potential deadlock between UI and replay threads
...
* During capture shutdown on Python < 3.13 the replay thread will try to remove
itself as a debuggable thread which requires being able to run python (holding
the GIL). If the UI thread is the one triggering the capture shutdown and is
running a call from a python script it may hold the GIL while waiting for the
replay thread to close, deadlocking.
* To alleviate this, while the UI thread is about to block on the replay thread
we try to release the python state if we are holding it so that the replay
thread can run python code if needed.
* We already do this in a manual wrapper around BlockInvoke.
2026-08-31 11:13:35 +01:00
baldurk
1d4cde2d6e
Don't add extensions to output filters multiple times in python shell
2026-08-31 10:30:37 +01:00
baldurk
cbeb5804cf
Ensure blocking controller invokes onto UI thread if using context
2026-08-28 15:53:47 +01:00
baldurk
a1b76c231e
Improve the workflow for extensions that fail on import
2026-08-28 15:46:23 +01:00
baldurk
f5240a4a47
Add missing function implementations to blocking ReplayController
2026-08-28 15:46:23 +01:00
baldurk
81bec684a3
Expose proper capture closing function to python extensions
2026-08-28 15:46:23 +01:00
baldurk
6237238cf7
Put python version in about dialog
2026-08-28 13:18:26 +01:00
Wehrwolfmann
762ec04267
Add Russian translations to the desktop entry
2026-08-28 02:02:50 +09:00
baldurk
61d9aafb1b
Set net manager thread to delete itself on close
...
* Due to the way Qt works, the owning object acts as if it lives on the thread
which in this case is running an event loop that tries to delete itself.
2026-08-27 17:29:38 +01:00
baldurk
45b5f1ad1d
Remove debug print
2026-08-27 16:34:36 +01:00
baldurk
fa5af1bf7c
Remove extra )
2026-08-27 15:29:03 +01:00
baldurk
d015c0619a
Fix race when initialising help context
2026-08-27 15:27:09 +01:00
baldurk
8cccd45e5b
More unused lambda captures
2026-08-27 14:33:53 +01:00
baldurk
675484a382
Remove unused lambda capture
2026-08-27 14:12:36 +01:00
baldurk
b100e05053
Add autocomplete for python help entry
2026-08-27 13:43:14 +01:00
baldurk
9a2ec4aa19
Use python invoker wrapper everywhere for pyrenderdoc
...
* This includes in the parameters of extension callbacks.
2026-08-27 12:45:52 +01:00
baldurk
3026718788
Handle an empty title as "Untitled script" in python editor wrapper
2026-08-27 12:44:00 +01:00
baldurk
72db77ae7c
Allow inserting tabs at the start of the REPL input
...
* If there is no non-whitespace input, we shouldn't try to autocomplete
2026-08-27 12:43:22 +01:00
baldurk
928cfcd80a
Ensure python compile error exceptions get handled properly
2026-08-27 12:42:57 +01:00
baldurk
a95d4d0461
Use titles instead of filenames for script created new editors
2026-08-26 11:37:46 +01:00
baldurk
85075565cd
Don't hang onto new extensions item, recreate each time
...
* Clearing an RDTreeWidget deletes all items in it, so we would either need to
remove it before clearing or just recreate it. We only need the handle in
order to check against it when we see clicks
2026-08-24 17:04:14 +01:00
baldurk
1aeac957bd
Compile fixes
2026-08-13 23:23:27 +01:00
baldurk
da4350a759
Add an example of advanced buffer format/processing
2026-08-13 21:05:16 +01:00
baldurk
8dd7692282
Improve parsing of enums in buffer formatter
...
* Add a [[flags]] annotation for enums that should bitmask-match, and add a
member to each interpreted enum value leaf to provide the string name.
2026-08-13 21:05:16 +01:00
baldurk
63e130e72a
Handle example editors better - don't treat example name as filename
2026-08-13 21:05:15 +01:00
baldurk
e20c2b9985
Expose buffer interpretation helpers to python
2026-08-13 21:05:15 +01:00
baldurk
964ef04526
Fix some cases where type aliases were not used in reflection
2026-08-13 21:05:15 +01:00
baldurk
71f40cef1a
Remove any extra typing aliases that were pulled into module dir()s
2026-08-13 21:05:14 +01:00
baldurk
68bb7e1ceb
Track our own custom types for user-defined functions/classes
...
* This lets us track the docstrings of these for better tooltips
2026-08-13 21:05:14 +01:00
baldurk
b3710eba3b
Fetch & display tooltips for each entry along with autocomplete options
2026-08-13 21:05:14 +01:00
baldurk
586886b3f5
Add custom change to scintilla to query bounds of autocomplete box
2026-08-13 21:05:14 +01:00
baldurk
79ad933913
Avoid accessing possibly deprecated typing members
2026-08-13 21:05:14 +01:00
baldurk
022a5e1438
Change python scripting 'debug' button to just attach, not run
2026-08-13 21:05:14 +01:00
baldurk
810e6a79d2
Run scripts in their place when they are on disk
...
* We only write the pytmp/script.py for unsaved scripts, so they can be
recovered.
2026-08-13 21:05:14 +01:00
baldurk
e7f0aac008
Don't run syntax checks while a script is running
2026-08-13 21:05:13 +01:00
baldurk
bf710530d2
Don't write scripts to temp file, run in their real location
...
* This means any changes in the external editor/debugger will be reflected
properly.
2026-08-13 21:05:13 +01:00
baldurk
a113dbbda8
Detect crashes during python extension loads and offer to disable
2026-08-13 21:05:13 +01:00
baldurk
bb23fbc741
Remove 'always load' extra opt-in for extensions
...
* If an extension is enabled in the extension manager, it will be loaded by
default after that until disabled
2026-08-13 21:05:13 +01:00
baldurk
4bd0245975
Move new extension creation wizard to python scripting
...
* We remove the operations and interactions from the extension manager and leave
it purely for browsing extensions and enabling/disabling them.
2026-08-13 21:05:13 +01:00
baldurk
650188f32c
Expose UI extension management via context menu in project explorer
...
* Allow reloading and viewing output from context. Also add items for viewing in
file explorer.
2026-08-13 21:05:13 +01:00
baldurk
14e636d1a5
Don't allow 'run' when editing UI extension files
2026-08-13 21:05:13 +01:00
baldurk
4f07e09d48
Make editor wrapper a true wrapper to allow displaying warnings per-view
2026-08-13 21:05:12 +01:00
baldurk
45d22e3f0d
Set font size properly on scintilla editors
2026-08-13 21:05:12 +01:00
baldurk
1416d92b09
Use properties consistently for custom dependency paths on windows
...
* This removes the (now undocumented) python env vars, and the never documented
Qt env vars. We add new build script arguments to specify these paths.
2026-08-13 21:05:12 +01:00
baldurk
5b90b75b79
Rewrite python docs & onboarding to be more opinionated
...
* The docs now explicitly tell people how to write UI scripts, then UI
extensions, with as quick a start as possible, and go into detail in later
documents. Use of the python module directly is also not featured prominently
as this is a rare use-case for casual scripting needs.
2026-08-13 21:05:12 +01:00
baldurk
ec5cd1f049
Add new python examples, also available embedded into UI
2026-08-13 21:05:11 +01:00