qt6-bb10/tests/auto/corelib/kernel
Volker Hilsheimer 31f98957cf Add compile-time generation of JNI class names
As with method signatures, register class names using template function
specialization in the QtJniTypes namespace, and then declare C++ types
as JNI classes with a class name string. Such classes implicitly get
registered as JNI types as well.

Add a QJniObject construct method (since C++ constructors that are
templates cannot be explicitly instantiated with a type), and a
QJniEnvironment::findClass overload.

Add test coverage, also for the recently added macros for native
methods.

As a drive-by, change the name of the Q_JNI_DECLARE_NATIVE_METHOD
macro to Q_DECLARE_JNI_NATIVE_METHOD for consistency.

Change-Id: Ic19562d78da726f202b3bdf4e9354e8ad24d8bd9
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-05-27 22:27:13 +02:00
..
qapplicationstatic Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qcoreapplication Fix return value of qGlobalPostedEventsCount() 2022-05-18 17:54:15 +02:00
qdeadlinetimer Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qelapsedtimer Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qeventdispatcher Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qeventloop Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qjnienvironment Add compile-time generation of JNI class names 2022-05-27 22:27:13 +02:00
qjniobject Add compile-time generation of JNI class names 2022-05-27 22:27:13 +02:00
qjnitypes Add compile-time generation of JNI class names 2022-05-27 22:27:13 +02:00
qmath Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetacontainer Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetaenum Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetamethod Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetaobject Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetaobjectbuilder Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetaproperty Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmetatype Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmimedata Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qobject QMetaType: disable conversion from smart pointer<const QObject> 2022-05-21 11:43:59 +02:00
qpointer Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qproperty Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsharedmemory Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsignalblocker Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsignalmapper Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsocketnotifier Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsystemsemaphore Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtimer Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtranslator Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qvariant Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qwineventnotifier Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
CMakeLists.txt Generate JNI signature strings at compile time 2022-05-05 07:29:25 +02:00