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
63e130e72a
Handle example editors better - don't treat example name as filename
2026-08-13 21:05:15 +01:00
baldurk
b3710eba3b
Fetch & display tooltips for each entry along with autocomplete options
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
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
ec5cd1f049
Add new python examples, also available embedded into UI
2026-08-13 21:05:11 +01:00
baldurk
1bad994e84
Rate limit how often the current line is updated in python shell
...
* If there's a very tight loop there could be a _lot_ of updates to the point
where the UI takes longer to redraw than the script does to step a line.
Updating at 100Hz is still plenty fast.
2026-08-13 21:05:11 +01:00
baldurk
b60f42d8b1
Move find/replace logic out of shader viewer so it can be reused
2026-08-13 17:46:48 +01:00
baldurk
a42d8ba2dd
Don't push blank lines into python REPL history
2026-08-13 17:46:47 +01:00
baldurk
e3b0fa0a24
Add UI thread invokers for all windows
...
* This is necessary as they expect to be run on the UI thread, but can be
fetched from python scripts running on the python script thread. We block
invoke over to the UI and suspend python's GIL to avoid deadlocks.
2026-08-13 17:46:46 +01:00
baldurk
e6cd4d2e98
Add an entry to the recent files list for unsaved/temp recovery script
2026-08-13 17:46:45 +01:00
baldurk
f02fbd7ffa
Fix cases where function tooltip would stick around too long
2026-08-13 17:46:45 +01:00
baldurk
7fab2e0e0a
Add a forwarding ReplayController wrapper for python that auto invokes
2026-08-13 17:46:44 +01:00
baldurk
459bfb2592
Add a project explorer to the python scripting window
...
* This displays the current UI extension files, some built-in examples, and
recently opened loose files
2026-08-13 17:46:44 +01:00
baldurk
c95a69c8a1
Returning const arrays forces a copy
...
* This doesn't cover all cases but helps with 'pythonic' cases where a list
returned from a function should be expected to be mutable. Modifying direct
'members' can still modify through const.
2026-08-13 17:46:43 +01:00
baldurk
0bab6e4059
Fix cases where syntax checking timer wouldn't properly be started
...
* We let it run after any change unconditionally rather than stopping/starting
it. Instead if it fires and we ar in the middle of an autocomplete we just
ignore that instance.
2026-08-13 17:46:43 +01:00
baldurk
88782bea97
Use reflection script for autocomplete and help in python shell
...
* Also add syntax checking via parse attempts.
2026-08-13 17:46:43 +01:00
baldurk
2aff86b678
Change python scripting panel to allow multiple editor windows
...
* We also remove the old completion/help functionality as it will be replaced.
2026-08-13 17:46:43 +01:00
baldurk
23ca2cf053
Show syntax errors when editing in python script editor
2026-08-13 17:46:41 +01:00
baldurk
22444aa44d
Disable python debugging buttons if it's not supported
2026-08-13 17:46:41 +01:00
baldurk
a995ded466
Add quick-helper to view extension output from manager dialog
2026-08-13 17:46:41 +01:00
baldurk
02ead51303
Add a status entry showing loaded python extensions & debugger status
2026-08-13 17:46:40 +01:00
baldurk
3c6dfd23b4
Add a drop-down for the script output panel to switch context
...
* By default we still display all messages, but this allows users to switch to
just seeing the output from one extension if desired.
2026-08-13 17:46:40 +01:00
baldurk
768d8fa615
Add a static context for connecting Qt signals for python extensions
2026-08-13 17:46:40 +01:00
baldurk
836a5da7fa
Re-organise python shell to be dockable and dock REPL at bottom
2026-08-13 17:46:40 +01:00
baldurk
3ff393c91f
Add option to launch/wait for debugger on python contexts
2026-08-13 17:46:40 +01:00
baldurk
d71827d6a1
Load debugpy when possible to allow python debugging in-program
2026-08-13 17:46:39 +01:00
baldurk
13ad7875f2
Add annotation display in resource inspector and as standalone panel
2026-01-28 14:42:10 +00:00
baldurk
856c838def
Update copyright years to 2026 and fix copyright ranges
...
* In a previous update in 2021 many copyright ranges were truncated
accidentally, and some files have been copy-pasted with wrong years. These
dates have been fixed based on git history and original copyright messages.
2026-01-05 14:17:28 +00:00
Jake Turner
cf4e8b15fc
ICaptureContextx APIs for externally referenced dependency files
...
void EmbedDependentFilesIntoCapture();
void RemoveDependentFilesFromCapture();
2025-12-11 11:13:29 +13:00
baldurk
b4615dbd18
Add a delayed callback helper for python
2025-09-09 18:57:34 +01:00
baldurk
2322e165de
Update copyright years to 2025
2025-03-14 18:54:37 +00:00
baldurk
31d29fcea1
Add python function to clear replay cache
2025-02-21 14:19:12 +00:00
Jake Turner
b7b5ec0c14
Remove device scaling factor from margins in the UI
...
Makes ShaderViewer, Capture Comments and Python Shell margins look correct for non-unit system scaling
2024-06-12 16:37:02 +01:00
baldurk
1194531fc5
Add a descriptor viewer for showing all of a heap, root sig, or set
2024-04-10 18:58:53 +01:00
baldurk
153cd2aa16
Expose queries for descriptor stores and D3D12 root signature range
...
* This will allow a UI viewer or consumer of the replay API to more easily query
'all' descriptors for a given store.
2024-04-10 18:58:53 +01:00
baldurk
2bbe1a8cd9
Update shader viewer and debugging with new reporting for shader binds
...
* This shifts from reporting from the old style bindset/bind to the new system
of only referencing by shader interface and index (independent of binding
model).
* The vulkan shader debugger re-uses the replay interface to cache descriptor
access and descriptor contents in a fashion friendly to interface-index
lookup.
2024-04-10 18:58:51 +01:00
Jake Turner
3cb8998841
Vulkan DebugPixel support for multiview debugging
...
Output "ViewIndex" into the pixel shader hits array
Select the pixel shader input which matches the viewIndex to the passed in view
Ignore the view parameter if set to ~0U (rd.ReplayController.NoPreference)
Ignore the view parameter if any subpass has empty multiviews
2024-03-13 07:58:48 +00:00
baldurk
9f4f0e6aa1
Update copyright years to 2024
2024-02-12 11:04:52 +00:00