-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider if cxx_type and return_cxx_type are still required #289
Comments
Workarounds if this was to be removed, eg if you have a UniquePtr / &T in Rust and T in C++ PropertiesCreate a getter/setter with UniquePtr / &T invokables in Rust, then create a subclass in C++ that defines the Q_PROPERTY, getter/setter/signal with T that wrap the Rust getter/setter InvokablesCreate an invokable using taking/returning the UniquePtr / &T in Rust, then create a subclass in C++ with a second invokable that wraps Rust invokable SignalsCreate the signal using UniquePtr in Rust, then create a subclass in C++ with a second signal that connects the first and does the conversion. Inherit from base classCreate a C++ subclass of the base that has T, which exposes a method with UniquePtr / &T then Rust / CXX can bind to this. @LeonMatthesKDAB @Be-ing Now that most Qt types are trivial and we can easily inherit from classes, can we see any other scenarios where our old |
I'd like to do further testing with CXX-Qt in a real project before making decisions like this. But I suspect this can go to the chopping block. |
My hope is that these are needed to rarely that the workarounds listed above using a bit of C++ are enough for the few use cases one might have. As this would reduce complexity on our side quite a lot :-) |
These aren't needed anymore as most Qt types are trivial. This prevents us directly binding to things like signal later. And these can all be worked around in C++ with proxies. Closes KDAB#289
These aren't needed anymore as most Qt types are trivial. This prevents us directly binding to things like signal later. And these can all be worked around in C++ with proxies. Closes KDAB#289
These aren't needed anymore as most Qt types are trivial. This prevents us directly binding to things like signal later. And these can all be worked around in C++ with proxies. Closes KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
These aren't needed anymore as most Qt types are trivial. This prevents us directly binding to things like signal later. And these can all be worked around in C++ with proxies. Closes #289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to KDAB#289
This is now unused as the type conversion has been removed. Related to #289
Do we still need the cxx_type and return_cxx_type ? If they can be removed then signal emits don't need a wrapper. And macro attribute parsing may be simpler. And the templates for converts can be removed.
The text was updated successfully, but these errors were encountered: