Commit graph

39 commits

Author SHA1 Message Date
therecipe
aa8a227277 even more changes related to the js binding + fixes for Qt 5.14
* support for static darwin docker deployments
2019-12-21 17:42:05 +01:00
therecipe
0cc82d7b2f more changes related to the js binding 2019-12-12 20:47:54 +01:00
therecipe
6dbef71d44 various changes related to the js binding 2019-12-10 17:08:50 +01:00
therecipe
3738bb9320 greatly extend the Go <-> Qml/JS interoperability
These changes introduce two new functions called (*qml.QJSEngine).NewGoType and (*qml.QJSEngine).ToGoType, that can be used (similiar to how core.NewQVariant1 and (*core.QVariant).ToGoType can be used) to convert Go objects and functions to *qml.QJSValues and vice versa.
This allows for a more natural communication between Go and Qml/JS and makes it possible to simply pass a Go structs to Qml/JS and then call Go methods on that object.
For this to work, the object passed to Qml/JS needs to implement the `Pointer() unsafe.Pointer` and `SetPointer(unsafe.Pointer)` functions atm.
Which means, since all Qt classes already implement these functions, that you can now use the whole binding from Qml/JS as well and theoretically create a full Qt application inside an QJSEngine as well. A few example applications almost entirely written in JS can be found here: https://github.com/therecipe/examples/tree/master/js/
Furthermore, the `widgets_playground` example (https://github.com/therecipe/widgets_playground) now fully works on desktop and mobile targets as well.

other changes:
* core.NewQVariant1 and (*core.QVariant).ToGoType now recognize json tags
* workaround for qtmoc issue related to named imports
* speed-up go module android docker deployments
* fix webengine related qtdeploy bug on macOS
* fix int overflow issue for arm docker images
* fix js docker images
2019-11-17 18:05:18 +01:00
therecipe
e9f3046c76 new (*QObject).ConnectSignal function + new fedora docker image
* new docker images to make it easier to deploy to "embedded" armv6/armv7/arm64 systems such as Raspberry Pi, Orange Pi, Banana Pi, BeagleBone, BeagleBoard, ODROID, Asus Tinker Board, ...
2019-10-06 22:14:18 +02:00
therecipe
79b8fae1a7 breaking changes: support *long + change internal qt.{Connect,Get,Lend}Signal signature
* various minor fixes and cleanups
* support interface{} returns for js/wasm
* fix android builds on darwin
* support for the virtualkeyboard module
* fixes for docker image builds
* cleanup callback handling
* fix possible moc memory leaks
* new virtualkeyboard examples
2019-04-20 19:34:45 +02:00
therecipe
c2524f50a5 breaking changes: make *bool usable
+ various fixes for js/wasm
+ fix QT_DEBUG_QML for android(-emulator)
+ make os.Args usable in android(-emulator) and ios(-simulator)
2018-11-12 18:38:23 +01:00
therecipe
70c935202e fixes for various minor issues + webassembly support 2018-10-30 16:53:05 +01:00
therecipe
491342284b initial support for the js target 2018-06-09 02:31:50 +02:00
therecipe
4fbdae21b3 fix android ptr issue + mxe win 64 docker issue + remove warnings for msys2 and pkg-config 2017-07-28 22:07:13 +02:00
therecipe
846da6efa0 cleanup callback functions 2017-07-18 00:35:33 +02:00
therecipe
2e6a226ed9 support for pure go types in signals/slots/properties + plist fix 2017-06-14 16:12:17 +02:00
therecipe
18470b010b fix qtmoc constructor pointers 2017-06-13 13:57:44 +02:00
therecipe
9470f7dba3 android jni related fixes + clear finalizers upon destroy + qtmoc fix 2017-06-09 01:47:53 +02:00
therecipe
35143f319a fix destructors 2017-06-02 16:18:30 +02:00
therecipe
8617cc6943 fix concurrent signal map access 2017-05-31 23:49:52 +02:00
therecipe
06a1fd8bdf fix destroyed signals 2017-05-30 23:01:01 +02:00
Kenneth Shaw
567a430704 Dropping exec permissions on files 2017-04-12 15:21:13 +07:00
therecipe
70f198d247 fix connect functions, dynamic mxe lookup, futher qmake related changes 2017-03-02 19:24:25 +01:00
therecipe
a15e5055c5 preparation for qmake + new update mechanism + qtmoc fix 2017-02-24 22:53:17 +01:00
therecipe
2ac66d2373 remove (QByteArray == string) + better primitive conversion 2016-11-09 19:31:25 +01:00
therecipe
bac79d8fdd cleanup + split qtdeploy 2016-10-29 23:28:13 +02:00
therecipe
0bd230d5f6 cleanup + better logging 2016-10-28 04:00:58 +02:00
therecipe
c0d3e45458 support homebrew on macOS + update ci + new debug logger 2016-10-20 03:25:57 +02:00
therecipe
7bcd38cd53 fix signal table cleanup 2016-08-26 15:33:11 +02:00
therecipe
2f211fcbb9 fix signal table lookup 2016-08-24 17:00:49 +02:00
therecipe
2db75f937f fix qbytearray conversion 2016-08-21 17:04:39 +02:00
therecipe
8670fc11d2 use gradle + minor android and ios fixes 2016-05-19 21:28:54 +02:00
therecipe
de2b0f97a6 noninvasive android support 2016-05-16 17:39:45 +02:00
therecipe
7e98e7f877 update to qt 5.6.0 2016-05-11 15:33:24 +02:00
therecipe
c0571eec4e cleanup and support for abstract classes 2016-04-28 19:43:44 +02:00
therecipe
a14a2606f5 new quick/bridge example 2016-04-13 17:33:41 +02:00
therecipe
45e7985486 broke dependency circle, more primitives + overloaded signals, new widgets/video_player example 2015-12-16 02:02:59 +01:00
therecipe
6415019ade support for impure virtual functions that return void, android stdout to logcat 2015-12-15 02:01:51 +01:00
therecipe
1f2e33b775 support for androidextras 2015-11-19 19:29:30 +01:00
therecipe
5969e3810f windows + android support 2015-11-12 01:29:32 +01:00
therecipe
153efeaa25 android support 2015-11-09 18:23:42 +01:00
therecipe
1eb57fbb81 complete rewrite 2015-10-24 17:18:24 +02:00
therecipe
7eb21168b6 Initial commit 2014-12-02 21:51:56 +01:00