Commit Graph

842 Commits

Author SHA1 Message Date
Matthäus G. Chajdas 03343239c7 Implement a Performance Counter Viewer pane, hook up selection dialog 2017-08-24 13:21:03 +01:00
Matthäus G. Chajdas ba4c9d6837 Prepare everything for the performance counter viewer window. 2017-08-24 13:21:02 +01:00
Matthäus G. Chajdas 29376f34cc Add a performance counter selection dialog. 2017-08-24 13:21:01 +01:00
baldurk 40a0272a3e Remove use of bool32 replay API type&optimise mem layout in some structs 2017-08-24 10:44:45 +01:00
baldurk e85c8d19bf Combine 'special' with 'specialFormat' as single resource format type
* There was no good reason to have a flag indicating if the special
  format was valid or not. Now it's a single enum, with a value
  'Regular' indicating that the compCount/compWidth/compType fully
  describe the format itself.
* This makes code patterns easier as you no longer need to check for
  special then check for specialFormat, you can just test the type
  directly.
2017-08-24 10:37:16 +01:00
baldurk b55ff14242 Use nested ResourceFormat in MeshFormat struct.
* The old C# interop didn't support this for structs going from the UI
  to the core module.
2017-08-21 18:14:44 +01:00
baldurk 1b88a39339 Optimise tree widget clearing and child adding by batching updates
* This takes a nice chunk of time off the pipeline state view in
  particular when changing between events.
2017-08-21 17:14:21 +01:00
baldurk 43ac48a493 Don't use event browser as area reference if it's not visible.
* Fixes a crash opening the API inspector if the event browser was
  closed.
2017-08-21 15:43:20 +01:00
baldurk 9b4ee72af6 Pass pipeline state around by reference instead of copying by value 2017-08-18 19:37:18 +01:00
baldurk 2b8b101fa5 Make sure QVariant is available before including renderdoc_replay.h 2017-08-18 19:37:17 +01:00
baldurk 981436b75f Don't pass around string name of ResourceFormat, request it when needed 2017-08-18 19:37:16 +01:00
baldurk 4c24b0f28f Remove use of ToQStr to convert rdctype::str to QString 2017-08-18 14:13:22 +01:00
baldurk 2291a92302 Fix format string 2017-08-17 13:00:41 +01:00
baldurk ef84f494a2 Add a macro that enables qt-compatibility in the renderdoc replay API
* This will be used to remove the ToQStr everywhere (where it's not
  used for actual stringification of enums/structs)
2017-08-16 18:28:11 +01:00
baldurk cfd816d7f3 Enable RDStyle by default, add style selection in the settings dialog 2017-08-16 17:39:37 +01:00
baldurk b70e897838 Change workaround for visual assist bug with large raw strings in macros
* The bug seems to happen if two raw strings concatenated together are
  large enough, so instead we pass them as separate parameters to a
  different macro then concatenate them inside the macro.
2017-08-16 16:29:56 +01:00
baldurk 38028b1b64 Add default initialisation for tag object, fixes a warning on gcc 2017-08-16 16:25:29 +01:00
baldurk f23adfbb41 find previous button should be left of the find next button 2017-08-15 17:36:28 +01:00
baldurk 09341a4192 Don't use pixel shader details for debugging vertex shader 2017-08-15 17:36:27 +01:00
Cody Northrop 7144ba1652 android: Rename function that pushes layer to installed application 2017-08-15 09:36:20 -07:00
Cody Northrop d5cce3e194 android: Update layer pushing dialogues for readability 2017-08-15 09:36:20 -07:00
Cody Northrop b52d91224e utils: Update messageBoxChecked to use bool directly, no local copy 2017-08-15 09:36:20 -07:00
Cody Northrop fb8eef23d0 android: Improve workflow on devices with root
During initial scan of application, detect if root access is available
and track it.  If user later selects "Click here for ways to fix this".
display a new dialogue that offers to push the layer directly.

If pushing fails, fall back to production dialogue.

Also add a new persistent setting to enable automatic layer pushing.
2017-08-15 09:36:20 -07:00
Cody Northrop 58b0d29bf4 utils: Add new messageBox helper that includes checkBox 2017-08-15 09:36:20 -07:00
baldurk b1bd718be0 Add information for people building on windows on where to get Qt etc 2017-08-14 18:09:59 +01:00
baldurk 4d2da84ca4 Reference an explicit tag release of renderdoc's swig fork
* The tag is signed, and there's a release on that github repo with
  signatures for the source tarball/zip files
2017-08-04 17:35:32 +01:00
baldurk c74c3d36bc Improve ResourceId repr/str handling, and add an int() handling 2017-08-03 19:10:41 +01:00
baldurk 09ba0b46af Add typemap for QPair 2017-08-03 17:57:24 +01:00
baldurk ee67b85b58 When we hit an exception, pass the line number of the top-of-stack
* This allows us to update the current line highlight before stopping.
2017-08-03 17:57:24 +01:00
baldurk 87ef595cce For a block invoke to another thread, safe and restore
* In future we could handle async exceptions by storing the exception
  information in a std::function derived object (instead of the separate
  ExceptionHandling that lives on the stack) and query it out in a new
  WaitForInvoke function maybe. Right now we just print the exception
  to the output log and abort the callback.
2017-08-03 17:57:23 +01:00
baldurk 1c93ee9441 If a python error has occurred, don't try to do any work, just bail 2017-08-03 17:57:22 +01:00
baldurk f41f6a2b66 Fix race condition accessing UI stuff on async loading thread 2017-08-03 17:57:22 +01:00
baldurk 86a9d70bb7 Only remover disassembly toolbar when debugging, not when viewing shader 2017-08-03 17:57:21 +01:00
baldurk 9878223839 Don't allow displaying non-debuggable disassembly forms when debugging 2017-08-02 15:30:58 +01:00
baldurk 608cd152d9 OS X compile fix 2017-07-28 20:31:52 +01:00
baldurk feb99ca6a4 Compile fix, cast to QRectF first then adjust 2017-07-28 20:01:41 +01:00
baldurk 5b3fd0a2f9 Add handling for tab bars and tab widgets 2017-07-28 19:06:47 +01:00
baldurk 1bbe9f5409 Update toolwindowmanager to 62adf4b 2017-07-28 19:06:47 +01:00
baldurk d57cc1b188 Add more consistency to docking panels and widgets
* Dock panels shouldn't have any frame border or anything like that.
* They should have an external margin of 3 pixels at their border,
  but then no further margins on the layouts (like sub-controls for
  the pipeline state views.
* Toolbars should be Raised & Panel frames. Later we'll replace them
  with actual QToolBars to better customise the painting.
2017-07-28 19:06:46 +01:00
baldurk 541aa23a93 Add menu rendering (both menu bars/menus and popup menus) 2017-07-28 19:06:46 +01:00
baldurk 89945f711d Switch to SVG topology diagrams
* We need to custom paint the SVG at the right devicepixelratio because
  Qt seems to be busted at scaling up - nothing I can see causes the
  SVG to be rendered at higher than it's default resolution, so you end
  up with plain bilinear upscale.
* Since we're doing custom palette swap anyway, it's not much harm to
  just render ourselves, as we already basically had a dependency on
  QtSvg - just need to add the include files to the dependencies.
2017-07-28 19:06:46 +01:00
baldurk 9434b622a1 Make sure that pan remains unchanged when setting scrollbar range 2017-07-28 19:06:46 +01:00
baldurk 58d6e2540d Only highlight enabled toolbuttons on hover, not disabled ones 2017-07-28 19:06:46 +01:00
baldurk c19b4fb0a3 Add some basic style hints for menus and message boxes 2017-07-28 19:06:46 +01:00
baldurk 4591457ad7 Set up custom splitters, for now just empty rects.
* May need to revisit this in future depending on what outlining we have
  for individual docking widgets
2017-07-28 19:06:45 +01:00
baldurk 01c1365224 Don't draw any frames for status bar items 2017-07-28 19:06:45 +01:00
baldurk 719b7ea478 Fill in the background even for line edits without frames 2017-07-28 19:06:45 +01:00
baldurk a0bee29162 Make sure not to account for an invisible frame when sizing line edits 2017-07-28 19:06:45 +01:00
baldurk b63c91da0f Remove fake box frames around find/goto. Superceded by custom style 2017-07-28 19:06:45 +01:00
baldurk c471153770 Add styled progress bars, including animations for the 'infinite' case 2017-07-28 19:06:45 +01:00