Commit Graph

102 Commits

Author SHA1 Message Date
baldurk cf1ef45a5e Add settings dialog for Qt 2017-02-03 20:11:06 +00:00
baldurk 923dfbd6fb Add Qt version of statistics viewer 2017-02-03 20:11:06 +00:00
baldurk 346550e012 Add debug message view to Qt 2017-02-03 20:11:04 +00:00
baldurk 477df04072 Make sure we're on a consistent event before calling OnLogFileLoaded
* Certain panels like BufferViewer assume there is a current drawcall
  at startup and not an invalid event ID like 0. Normally the event
  browser is loaded first and sets the event ID, but if it's later in
  the list this will break.
2017-02-01 11:17:56 +00:00
baldurk 9690db525b Add support for raw buffer views (not mesh output) 2017-01-26 23:31:58 +00:00
baldurk 0cbb43b7bf Remove QString formatting on output log 2017-01-26 23:31:57 +00:00
baldurk 19034c0d93 Don't use resizeColumnsToContents on full data, add column per component 2017-01-26 23:31:57 +00:00
baldurk a200ed8455 Tweak grid layout lines to match up better for non-square tables 2017-01-24 19:00:57 +00:00
baldurk 31c29c3149 Give Vulkan shader stage structs in pipeline state consistent names 2017-01-24 12:12:33 +00:00
baldurk 7ef73f92ef Add shader viewer (view only - not edit/debug) using Scintilla widget 2017-01-23 19:09:29 +00:00
Alex Smith 6e2fc42cbd qrenderdoc: Show currently selected event in the API inspector
Currently, selecting an event with children (e.g. vkCmdExecuteCommands)
in the event browser will cause the API inspector window to show the
final child event, rather than the event itself. This behaviour makes
sense everywhere else: selecting an event with children shows the state
after all children have completed.

However, for the API inspector, we want to be able see API calls for
the parent event when it is selected rather than those of its last
child, particularly in the case of vkCmdExecuteCommands which may have
other API calls leading up to it.

To allow this, distinguish between the "current event" and "selected
event". For an event with children, the former refers to the last
child, while the latter refers to the event itself. ILogViewerForm now
has two separate event callbacks for when either one changes.

The API inspector now makes use of the selected event, while everything
else continues to use the current event.
2017-01-14 20:23:51 +00:00
baldurk 030cbfde9a Batch update copyright years everywhere 2017-01-06 12:13:31 +00:00
baldurk 5cf16ccbd4 Fix warnings from clang compilation 2017-01-03 14:49:42 +00:00
baldurk 288cce9de5 Add utility integer alignment function 2016-11-28 17:45:57 +01:00
baldurk 08bd19a990 Fix compilation (mostly) on OSX, with stubs for VK WSI. 2016-11-28 12:57:55 +01:00
baldurk 4ce3c31fef Add un-finished work in progress mesh buffer viewer 2016-11-25 17:05:58 +01:00
baldurk 48169536f5 Implement float formatting rules 2016-11-25 15:43:25 +01:00
baldurk a2d40f8061 Add constant buffer previewer for qrenderdoc 2016-11-25 14:17:20 +01:00
baldurk 90a1b03a0f Fix some switch statements missing breaks 2016-11-25 14:14:47 +01:00
baldurk 6ef7dbb356 Add pipeline state viewer and implement vulkan viewer
* Minus interactions with as-yet-unimplemented windows like buffer and
  shader viewers.
* Also missing HTML export
2016-11-24 19:47:05 +01:00
baldurk 9ab11786b2 Add a utility to style a QGridLayout with actual lines between elements 2016-11-24 19:47:04 +01:00
baldurk 0b9e11d1ec Add some more ToStr::Get implementations 2016-11-24 19:47:03 +01:00
baldurk e13b6277ed Add API Inspector 2016-11-21 19:33:19 +01:00
baldurk ad3ea6513d Fix a potential race where we'd double-delete a command
* If it was a blocking invoke, we'd release the processed semaphore then
  the main thread could delete cmd before we check self delete (which
  could be garbage and look like it's true) and delete it again.
2016-11-21 19:12:35 +01:00
baldurk c068a71903 If no capture directory is specified in the UI, save to $TEMP/RenderDoc 2016-11-21 17:59:59 +01:00
baldurk 23d8c12457 Add status message about log warnings/errors 2016-11-21 17:38:02 +01:00
baldurk 0e7364a4c1 Process command-line remote connection and open new LiveCapture 2016-11-21 17:04:57 +01:00
baldurk 60f83c1b5e Set icons for child windows 2016-11-21 17:04:08 +01:00
baldurk a85eb017a3 Add custom browsing for executable files that checks permissions 2016-11-21 16:46:19 +01:00
baldurk 411815a300 Set XCB/Xlib data every time
* Oops...
2016-11-14 17:29:29 +01:00
baldurk 86c9742309 Let capture context manage singleton window panes 2016-11-14 15:20:51 +01:00
baldurk c0c6712140 Check thread is non-NULL before seeing if it's running 2016-11-14 14:12:49 +01:00
baldurk 893fa6d53b Assign the temp path properly when fetching it as a default 2016-11-14 14:12:48 +01:00
baldurk 1ddac3da54 Add a ToQStr overload for rdctype::str 2016-11-14 14:12:48 +01:00
baldurk 3441ce608b Add static member for Yes|No|Cancel buttons 2016-11-14 14:12:47 +01:00
baldurk 614c15d669 Create config path if it doesn't already exist 2016-11-11 20:35:59 +01:00
baldurk 1c61b82221 Add stub ToStr copied functions to fix up some implementations
* Eventually the main project's ToStr will move into a header file so
  that we don't have to duplicate any code.
2016-11-11 20:35:59 +01:00
baldurk 9fd1e6bae2 Add qprocessinfo from https://github.com/baldurk/qprocessinfo
* This lets us enumerate processes and fill the inject list on windows
  and linux at least.
2016-11-11 20:35:59 +01:00
baldurk b843c38bdc Categorise remaining TODOs somewhat 2016-11-09 19:27:44 +01:00
baldurk d6a3086394 Pass in environment modification list when capturing 2016-11-09 19:27:18 +01:00
baldurk cff5da63eb Cache method index for GUIInvoke invokes to avoid string compares 2016-11-09 19:13:22 +01:00
baldurk 28f5bdcf9d Add a mostly-complete capture dialog 2016-11-09 18:35:48 +01:00
baldurk 27f1aa71a6 Use absoluteFilePath() when the filename is needed in the path 2016-11-09 18:34:08 +01:00
baldurk 2ccc157114 Add TempLogFilename() utility function 2016-11-09 18:33:38 +01:00
baldurk 9d264e1998 Fix error message when failing to load a capture 2016-11-09 18:17:57 +01:00
baldurk 2175404d4e Ensure message boxes happen on the main thread 2016-11-09 18:09:56 +01:00
baldurk bb2f3a205c Move common Qt utility functions & JSON I/O together in a single place 2016-11-09 13:23:53 +01:00
baldurk 5a243c4b42 Add an implementation of QOverload to avoid depending on Qt 5.6
* Also switch travis to 5.6 so we don't add a dependency on 5.7 by
  accident.
2016-11-07 19:22:56 +01:00
baldurk 18898b7f09 Set up proper log loading/closing
* This includes the recent log menu list, progress bars and popup.
2016-10-12 16:59:25 +02:00
baldurk 8a375abe41 Add self-deletion and waiting to LambdaThread 2016-10-12 16:51:29 +02:00