Commit Graph

15 Commits

Author SHA1 Message Date
baldurk 3d11c502f5 Don't use SWIG_BUILTIN_INIT for passing SWIG ptrs, use SWIG_POINTER_OWN
* The former is only needed inside tp_init of a new object. Instead when
  we want to pass in and own a pointer, we use SWIG_POINTER_OWN.
* This also removes the need to pass 'self' all the way down in
  ConvertToPy which tidies up a lot of code.
2017-09-29 12:11:15 +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 09ba0b46af Add typemap for QPair 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 25c72714cd Fix errors to be more friendly when converting QWidgets in python 2017-06-22 14:20:19 +01:00
baldurk 0b1c3725b9 Add a fallback path for opaque qwidgets if pyside2 isn't compiled in
* Even if we don't have pyside2 to treat qwidgets as full objects and
  access their methods and data, we still need to be able to pass around
  the QWidget* as an opaque pointer to be able to use the API properly.
* This change falls back to just using SWIG's default opaque pointer
  wrapping and unwrapping when pyside2 isn't available.
2017-06-09 17:02:09 +01:00
baldurk 829e1aa77e Fix handling of 'slots' Qt keyword clashing with python
* On linux without any PCH we have a slightly different case to windows
  with the PCH, so we need to be careful not to redefine the macro.
2017-04-28 19:36:09 +01:00
baldurk 1f8a93c37a Add precompiled header file use to qrenderdoc on VS 2017-04-28 18:36:55 +01:00
baldurk 35f9c53486 Rename *Method to *Callback to be more explicit in the name 2017-04-18 14:57:48 +01:00
baldurk 494086f40d Rename RenderManager to ReplayManager 2017-04-18 14:57:48 +01:00
baldurk 35ae996a34 Check docstrings in the qrenderdoc bindings as well 2017-04-18 14:57:44 +01:00
baldurk 694d7b6c7b Split apart renderdoc.i for better organisation 2017-04-18 14:57:43 +01:00
baldurk 6f52ef5c68 Add support for passing QWidget * to/from PySide in qrenderdoc bindings 2017-04-18 14:57:43 +01:00
baldurk a77fecf44d Wrap BlockInvoke() calls with a helper function that releases the GIL
* This means that if we BlockInvoke a python callback, we don't end up
  in a deadlock where we're holding the GIL during script execution but
  also waiting on the renderer running (which is trying to acquire the
  GIL before calling the callback).
2017-04-18 14:57:43 +01:00
baldurk cbc27222e2 Add qrenderdoc python SWIG bindings, for the stable/clean interface 2017-04-18 14:57:43 +01:00