Commit Graph

177 Commits

Author SHA1 Message Date
Michael Vance a74ddadd59 Improved TreeListView copy/paste support.
- Fix sorting to respect visual ordering by ID, including parent.
- Provide Ctrl-A to 'Select All'. Note that there is an extant
bug with the redraw where renderdocui will not repaint when
it gets focus back.
2017-04-03 07:18:41 -07:00
baldurk bda6cf0870 Fill out default script editor contents after initialising python 2017-03-13 17:23:41 +00:00
baldurk f76a4cc339 Don't launch blocking execute call on UI thread, pop up progress ticker
* This most commonly happens launching an Android program that takes a
  while to launch, or if you're launching a program with the delay for
  debugger option set.
* Instead of the whole UI hanging, you'll get a progress dialog to
  appear while it's waiting.
2017-02-24 17:34:02 +00:00
baldurk fd0a9bee70 Copy in pythonlibs.zip as part of the build process if it exists 2017-02-22 14:53:10 +00:00
Matthäus G. Chajdas 1ba783dea6 Remove quotes from the exePath.
This solves copy/pasting a path from explorer using "Copy as path", which always adds quotes.
2017-02-08 01:51:36 +00:00
baldurk 11db513705 Rename 'capture' button to 'launch' on CaptureDialog to clarify usage 2017-01-26 23:31:56 +00:00
baldurk ac47036368 Add an option to hide any markers with only "API Calls" but no draws. 2017-01-09 18:15:45 +00:00
baldurk 329ebc2d05 Don't allow the program to close while a global hook is active 2017-01-06 12:34:36 +00:00
baldurk 030cbfde9a Batch update copyright years everywhere 2017-01-06 12:13:31 +00:00
baldurk b088b21757 Allow renaming the label on captures in the connection window. Refs #476 2017-01-03 17:53:12 +00:00
baldurk 3002c00337 Add warning message if python libraries aren't loaded (mostly for devs) 2017-01-02 20:16:26 +00:00
Michael Rennie d249faacd3 Test Android target connection for up to MaxConnectTimeout seconds.
Added new setting to SettingsDialog, and passed it to native code via
RenderDoc::Inst().GetConfigSetting("MaxConnectTimeout")
2016-12-24 19:22:10 +00:00
Arseny Kapoulkine 45d7f14b4d Inject into the process upon a double-click
A canonical UI paradigm is that when you have a dialog with a list of
items as a central element and an "Ok" action, double-clicking the item
results in the dialog confirmation.

This change adds this behavior to the Capture dialog.
2016-12-12 10:55:50 +00:00
baldurk f7e939cda9 Sort node selection from treelistview before iterating on copy-paste. 2016-11-13 13:50:40 +01:00
baldurk 01c0ec36b0 Update URLs to point to https:// 2016-11-10 16:19:16 +01:00
baldurk f1b247fa3d Don't change filetype to PNG while trying to invoke callback 2016-11-07 18:14:48 +01:00
baldurk f260d5e2c8 Don't display 'resolve samples' option for non-resolveable formats 2016-11-07 18:14:47 +01:00
baldurk 3dc767415f Catch and handle exceptions when saving constant buffers to CSV 2016-11-04 21:45:10 +01:00
baldurk 1b475e017e Remove API text from capture pane's title 2016-11-03 17:41:26 +01:00
baldurk 503484c9c8 Make checking for process children less aggressive 2016-11-03 16:16:56 +01:00
baldurk 5a5c576a33 Allow TGA and PNG to discard/flatten alpha as desired. Refs #407
* DDS will always save the format entirely literally, and the float
  formats do not support alpha processing currently.
* TGA and PNG will either discard the alpha and write entirely opaque,
  or they'll include it in the file. Blending to colour or checkerboard
  is not supported.
2016-11-02 23:39:35 +01:00
baldurk 50eaf793f1 By default hide help when specifying a custom buffer format 2016-11-02 23:39:35 +01:00
baldurk a2979984ba Add a preview pane to the live capture with a full-res screenshot 2016-11-02 23:39:35 +01:00
baldurk f197156ee6 When an edit happens in the python shell, remove any line-number marker 2016-11-02 23:39:35 +01:00
baldurk 964a0f6b12 Make "no api" situation more explicit in live capture 2016-11-02 23:39:35 +01:00
Michael Rennie 8899cb8e73 If adb path is set, use adb devices to enumerate Android devices.
Process::LaunchProcess() optionally returns the child's stdout & stderr.
Added carriage return to string trim().
2016-11-02 16:10:29 +01:00
baldurk 385b719883 Make warning on inject screen much more obvious 2016-10-27 21:22:46 +02:00
baldurk 886d49fd2a Don't crash if we try to refresh a non-host node, just skip it 2016-10-27 20:35:52 +02:00
baldurk 119ff00440 Don't get cbuffer in constructor, do that in OnLogFileLoaded when shown 2016-10-21 21:44:24 +02:00
baldurk 4545761f42 Unregister logviewer callback when constant buffer previewer is closed 2016-10-21 21:44:24 +02:00
baldurk cc35215a12 Always call SetVariables from UI thread, don't use InvokeRequired 2016-10-21 21:44:24 +02:00
baldurk 1f610a8b31 Treat D3D11 and D3D12 the same around the UI (for naming things, etc) 2016-10-18 10:38:53 +02:00
baldurk 820b343ef3 Remove redundant numSubresources struct member that was just mips*slices 2016-10-14 16:19:15 +02:00
Adrian Bucur eaa85bf1fa Enable SPIR-V External Disassembler Tool
- Added the ability to select an external SPIR-V disassembler and to use
  it for editing any of the shaders in the pipeline.
  Tested with SPIRV-Cross (https://github.com/KhronosGroup/SPIRV-Cross)
  Fragment, Vertex, Geometry, Compute shaders
2016-10-06 13:02:23 +02:00
baldurk 9f4a60028e Handle injecting environment variable params
* This also fixes the problem of capturing 32-bit programs with 64-bit
  RenderDoc failing to properly insert environment variables and
  error'ing when it tries to do it directly.
2016-09-28 17:55:45 +02:00
baldurk 563fb2dd72 Improve the 'inject into process' UI a bit
* I'd still recommend against using this whenever possible, but there
  are cases where it's useful.
* Added sorting by columns, and a new column with the window title.
* Fixed the refresh button being off the edge of the layout.
* Auto-fill as much space as possible with the list of processes.
* Added a find-as-you-type filter, which works by PID, exe name or
  window title.
2016-09-26 19:09:46 +02:00
baldurk 43a2568f24 Double check whether invoke is required for SetVariables() 2016-09-23 14:08:43 +02:00
baldurk 2f8fd706db Change where remote lookup counter is inc/decremented for better results 2016-09-14 12:06:48 +02:00
baldurk 2736716aa1 Don't enum & add hosts until controls are properly created & available 2016-09-14 12:06:19 +02:00
baldurk 0442401a57 Allow unsetting default save directory by entering blank. Refs #335 2016-09-14 11:39:39 +02:00
baldurk c10c487a02 Allow shutting down the active remote server 2016-09-13 16:07:57 +02:00
baldurk 588d6149cd Don't disable inputs when selecting localhost
* If there aren't any other host, then selecting localhost will still
  need to keep the option to add a new host
2016-09-12 18:20:45 +02:00
baldurk 19cc4fa415 Make sure host (if non-local) shows up in connection window title 2016-09-12 15:36:08 +02:00
baldurk 6d114ba250 Scroll pane to the bottom when getting new output from python 2016-09-09 20:53:20 +02:00
baldurk df326cf992 Rename python core object, so renderdoc can be the module/namespace 2016-09-08 14:45:27 +02:00
baldurk 68cb108995 Only warn about no connection to delete/save for non-local captures 2016-09-05 13:25:26 +02:00
baldurk 5715731894 Prompt to add if an env var is being edited when the dialog is closed 2016-08-30 17:54:21 +02:00
baldurk 1faf46ddc5 Handle StaticExports.GetVersionString() being missing
* If the user is somehow running a really new UI with old DLL, handle
  the exception and continue to allow the user to update without
  crashing.
2016-08-30 17:37:06 +02:00
baldurk a35c88e577 Close some minor UX holes when live-connected but without replay context
* If there's no replay context we can still use the live connection to
  copy and delete captures remotely. Try to use that whenever possible
  and warn the user when it's not possible (i.e if the program has been
  closed and there's no replay context, we have no way to access the
  files anymore).
* If the user tries to open a remote log without a replay context,
  prompt them either to swithc to a replay context on that host or to
  save the log locally.
2016-08-30 11:55:36 +02:00
baldurk a875a33f7f Display a prompt if a capture file is about to be lost/leaked
* This can happen if the program is closed, and no remote replay context
  is active. Unlikely locally, the UI cannot natively save or delete
  temporary captures.
2016-08-29 20:28:25 +02:00