aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QDotNetAdapter: Simplify delegate macroHEADdevOrgad Shaneh2023-06-131-20/+18
| | | | | Change-Id: I86e3af57f429c72475deacc724878bedcbba04ab Reviewed-by: Miguel Costa <miguel.costa@qt.io>
* Add solution fileMiguel Costa2023-06-121-0/+274
| | | | | Change-Id: I790be96c2fa3d40467ee9f72da2b53462232abfa Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add READMEMiguel Costa2023-06-125-0/+622
| | | | | Change-Id: Ifc19d2925baa326aee38423b933dd3868811d204 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add example projectsMiguel Costa2023-06-1259-0/+4475
| | | | | | | | | | | | | | Chronometer: * QML front-end to a .NET module with a well-defined "business logic". EmbeddedWindow: * WPF window containing an embedded QML view, which runs in-process. QtAzureIoT: * Integrating Qt and .NET in a non-Windows setting. Change-Id: I4dff485b95835a3d880fe03f110c46c457a419b3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add test projectsMiguel Costa2023-06-1216-5/+1500
| | | | | | | | | | | | | | | | | | | | tst_qtdotnet: * Auto tests targeting the full Qt/.NET stack. * Tests are implemented with Qt Test. Test_Qt.DotNet.Adapter: * Auto tests targeting the Qt/.NET Adapter module. * Uses the .NET unit-test SDK. Perf_Qt.DotNet.Adapter: * Performance tests targeting the Qt/.NET Adapter module. * Can be tested with the VS performance profiler. FooLib: * "Dummy" .NET library, used for testing purposes. Change-Id: Iefcf5ce8e2479e4dd7bfcf3298792989b38cce1f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Generate class name headersMiguel Costa2023-06-122-0/+60
| | | | | | | | | | This project generates at build-time the class-name header files pointing to the actual headers with the corresponding type definitions. This allows #include clauses to reference type names from the Qt/.NET library (e.g. #include <QDotNetObject>). Change-Id: I292cae9d6e1d7fd4a8d8f8c778cc0b3b91409b03 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add wrapper facilities for .NET typesMiguel Costa2023-06-1210-0/+1296
| | | | | | | | | | | | | | | | Auxiliary types for writing C++ wrapper classes to encapsulate the low-level interoperability with managed types. In particular, the QDotNetObject C++ class can be extended to implement unmanaged proxies for .NET types, allowing native code to seamlessly interact through a C++ interface with managed code. Extending both QDotNetObject and QObject in the same wrapper class is the basis for a close, seamless integration between Qt applications and .NET code. Change-Id: Ib6d9472ff113868551ead1375764db7dd79643ea Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Implement native/managed adapterMiguel Costa2023-06-1215-0/+2296
| | | | | | | | | | | The adapter module provides low-level interoperability services for native applications to be able to call into managed code. These services include, among other things, obtaining function pointers to call into .NET methods, subscribing to .NET events, and passing native types as implementations of .NET interfaces. Change-Id: Ia7c0173a46ea3035bfe3e252f4006884f39223ad Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Implement .NET native hostMiguel Costa2023-06-125-0/+1063
| | | | | | | | | | | Implements a native host for the .NET runtime, as documented by: https://learn.microsoft.com/en-us/dotnet/core/tutorials/netcore-hosting The host was implemented in C++ and using Qt. It is intended to provide Qt applications the ability to interoperate with managed code. Change-Id: I28d3f3d2f795806b69f5c019860a88541dce9c5c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add .gitignoreMiguel Costa2023-06-121-0/+15
| | | | | Change-Id: Ie4eab07b244353c8c69aa09836ccd62e7d95298a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Initial empty repositoryJukka Jokiniva2023-05-170-0/+0