Commit Graph

53 Commits

Author SHA1 Message Date
baldurk 8a375abe41 Add self-deletion and waiting to LambdaThread 2016-10-12 16:51:29 +02:00
baldurk ec1ce1d738 Fix bool checks across threads to be correct, so it's not optimised out 2016-10-12 13:01:09 +02:00
baldurk fbcb04944d Add texture saving dialog 2016-10-12 00:26:15 +02:00
baldurk b4b45835b0 Delete thread when it's cleaned up, not automatically 2016-10-11 18:32:34 +02:00
baldurk 6b99f40b2b Remove direct use of RENDERDOC_LogText in favour of Qt's logging 2016-10-10 18:50:39 +02:00
baldurk 3051c48357 Add RefreshStatus to force-replay to the current event 2016-10-10 13:29:05 +02:00
baldurk 9d49b7ae38 Add menu-showing function to RDDialog (using manual event loop pump) 2016-10-10 13:28:52 +02:00
baldurk 7f6e7583b0 Fix weird clang-format confusion on X-macro 2016-10-07 21:26:53 +02:00
baldurk 2d4c79b244 Rename main.cpp to qrenderdoc.cpp to be more clear 2016-10-07 19:51:06 +02:00
baldurk 03eb2ea696 Save and load persistant config file 2016-10-07 19:51:05 +02:00
baldurk 63b92f76c8 Pass IReplayRenderer to INVOKE_MEMFN calls 2016-10-07 19:51:03 +02:00
baldurk ff6da5d81e Add layout loading/saving to main window 2016-10-07 19:51:02 +02:00
baldurk b96d49190c Avoid naming manually connected slots on_x_y() 2016-10-07 15:58:45 +02:00
baldurk bfac4adfb8 Expose full logging to UI layer, pipe Qt messages etc into main logs 2016-10-07 15:58:45 +02:00
baldurk ccfa1ceaed Add some utility functions to rdctype::array/str
* Avoids the need to directly reference .elems to cast to const char*
  for strings, and has begin()/end() for C++11 foreach loops
2016-10-07 15:58:44 +02:00
baldurk a901fc0d5b Fix isRunning check - just wait for m_Thread to be NULL 2016-10-07 15:58:43 +02:00
baldurk 3ea107fd6c Don't race to a double-delete, LambdaThread deletes its own thread 2016-10-05 20:20:19 +02:00
baldurk 044c16a0a3 Switch to helper functions for blocking dialogs (file and message)
* To continue the workaround for QTBUG-56382 we need to run our own
  manual message loop for dialogs as well. We only use a couple so we
  can just run it through a handful of thin wrappers.
2016-10-05 16:52:05 +02:00
baldurk 86623528bf Work around QTBUG-56382 with manual event loop flushing
* See https://bugreports.qt.io/browse/QTBUG-56382 for more details -
  creating DXGI swapchains adds a windows hook, and enough windows hooks
  forces out Qt's internal hook which it relies upon for proper event
  processing.
2016-10-05 16:52:05 +02:00
baldurk c47ab2c515 Fix for conflicts between X headers and Qt due to overlapping #defines 2016-10-05 01:13:09 +02:00
baldurk a8ca89e0f5 Fix compile warnings 2016-10-05 01:13:08 +02:00
baldurk b14135a22e Compile fix, typo'd variable name 2016-10-05 01:08:49 +02:00
baldurk ea81c9ef8e Move includes to header file for Display/xcb_connection_t definitions 2016-10-04 20:13:57 +02:00
baldurk fe1e86d35a Fill out pipeline state with API pipelines 2016-10-04 19:54:32 +02:00
baldurk 39bfe99ae5 Implement common pipeline state abstraction 2016-10-04 19:54:32 +02:00
baldurk 0b6b6b3e86 Add MIT License comment to the head of all source files 2016-10-04 19:54:31 +02:00
baldurk e91634004f Rename Core to CaptureContext 2016-10-04 19:54:31 +02:00
baldurk 7bb9c36de4 Switch from QList to QVector for internal storage. 2016-10-04 19:54:28 +02:00
baldurk 9489e4e4d1 Don't try to close & delete a NULL thread 2016-10-04 19:54:23 +02:00
baldurk df77ef6cbe Make sure thread is closed before shutdown 2016-10-04 19:54:22 +02:00
baldurk 7f3a61d3fa Add pixel context view 2016-10-04 19:54:20 +02:00
baldurk 62e18306de Add a helper macro for simple async render thread invokes 2016-10-04 14:40:09 +02:00
baldurk 6d22781610 Set a timeout on the render manager thread 2016-10-04 14:40:09 +02:00
baldurk e3cf86fba2 Keep modified qrenderdoc arguments around until end of execution 2016-09-20 13:21:09 +02:00
baldurk 221bb4ad65 Specify current exe directory as a path for Qt platform plugins 2016-09-14 15:12:14 +02:00
baldurk 7beb3b494a Remove remote server code from qrenderdoc until it's refactored 2016-08-19 12:23:19 +02:00
baldurk 4e450dbfcc Rename RemoteRenderer to RemoteServer 2016-08-19 12:23:19 +02:00
baldurk 61d8060630 Fix QRenderDoc to new replay API call 2016-07-12 19:54:04 +02:00
baldurk 5f28b745a2 Format code according to newly added clang-format
_  /)
                 mo / )
                 |/)\)
                  /\_
                  \__|=
                 (    )
                 __)(__
           _____/      \\_____
          |  _     ___   _   ||
          | | \     |   | \  ||
          | |  |    |   |  | ||
          | |_/     |   |_/  ||
          | | \     |   |    ||
          | |  \    |   |    ||
          | |   \. _|_. | .  ||
          |                  ||
          |repository history||
          |                  ||
  *       | *   **    * **   |**      **
   \))ejm97/.,(//,,..,,\||(,,.,\\,.((//
2016-05-22 19:41:53 +02:00
Cory Bloor 45a0f62139 Add about dialog to qrenderdoc 2016-04-17 04:48:15 -06:00
baldurk 70b99a4412 Remove antiquated 'multiple frames in one capture' support.
* Cleans up the code a bunch, this support is unlikely to ever return
  and if it does it will need a rethink anyway.
2016-04-13 00:28:09 +02:00
baldurk 3e37e1a112 Linux compile fixes 2016-02-22 01:47:57 +01:00
baldurk 48248c460c Update qrenderdoc to handle vulkan pipeline state 2016-02-07 18:42:13 +01:00
baldurk c1344c2ff3 Implement jump and find functionality in event browser 2015-07-10 16:38:42 +02:00
baldurk 97920b7b31 re-indent Qt code to match rest of C++ code 2015-07-10 16:38:41 +02:00
baldurk 4f5673941d Implement load-log-by-commandline behaviour 2015-07-10 16:38:37 +02:00
baldurk 162269451a Make sure to properly initialise member variables 2015-07-10 16:38:36 +02:00
baldurk a405ee13ca Loads of changes, fix thread & invoke helpers, skeleton of Core working
* GUIInvoke helper changed to use QMetaObject::invokeMethod which works
  on threads better.
* LambdaThread helper class now has a thread member, it doesn't derive
  from thread (this seems to be recommended practice).
2015-07-10 16:38:34 +02:00
baldurk 19784f6554 Add a utility class/func to allow easy lambda invokes onto GUI thread 2015-07-10 16:38:31 +02:00
baldurk 005d1d0875 Change RenderManager invoke method to be std::function to allow lambdas 2015-07-10 16:38:30 +02:00