diff options
author | Christian Strømme <christian.stromme@digia.com> | 2014-02-10 18:09:15 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-13 12:39:04 +0100 |
commit | af130d3047322dc3889dc09970905cbdb40c86f4 (patch) | |
tree | 8b793456a4383e6f58cfec64ef09b0ebac552bd0 /src/androidextras/jni | |
parent | a4dd3f81448db91b10bdfb236ac81caa8617c381 (diff) |
Add non-templated versions of get[Static]ObjectField()
Ideally the getStaticObjectField() and getObjectField() methods, that
take a signature, should never have been templated. Removing the
templated versions now will cause ABI breakage, so the only solution
is to add new non-templated versions.
Change-Id: I2f6e9f259b7bc511ef5bcaeb8a2077b0f267b8c8
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Diffstat (limited to 'src/androidextras/jni')
-rw-r--r-- | src/androidextras/jni/qandroidjniobject.cpp | 19 | ||||
-rw-r--r-- | src/androidextras/jni/qandroidjniobject.h | 10 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/androidextras/jni/qandroidjniobject.cpp b/src/androidextras/jni/qandroidjniobject.cpp index 9d38afd..2448d54 100644 --- a/src/androidextras/jni/qandroidjniobject.cpp +++ b/src/androidextras/jni/qandroidjniobject.cpp @@ -1469,6 +1469,11 @@ jdouble QAndroidJniObject::getField<jdouble>(const char *fieldName) const return d->getField<jdouble>(fieldName); } +QAndroidJniObject QAndroidJniObject::getObjectField(const char *fieldName, const char *sig) const +{ + return d->getObjectField(fieldName, sig); +} + template <> QAndroidJniObject QAndroidJniObject::getObjectField<jobject>(const char *fieldName, const char *sig) const { @@ -1750,6 +1755,13 @@ jdouble QAndroidJniObject::getStaticField<jdouble>(const char *className, const return QJNIObjectPrivate::getStaticField<jdouble>(className, fieldName); } +QAndroidJniObject QAndroidJniObject::getStaticObjectField(jclass clazz, + const char *fieldName, + const char *sig) +{ + return QJNIObjectPrivate::getStaticObjectField(clazz, fieldName, sig); +} + template <> QAndroidJniObject QAndroidJniObject::getStaticObjectField<jobject>(jclass clazz, const char *fieldName, @@ -1892,6 +1904,13 @@ QAndroidJniObject QAndroidJniObject::getStaticObjectField<jdoubleArray>(const ch return QJNIObjectPrivate::getStaticObjectField(className, fieldName, "[D"); } +QAndroidJniObject QAndroidJniObject::getStaticObjectField(const char *className, + const char *fieldName, + const char *sig) +{ + return QJNIObjectPrivate::getStaticObjectField(className, fieldName, sig); +} + template <> QAndroidJniObject QAndroidJniObject::getStaticObjectField<jobjectArray>(jclass clazz, const char *fieldName, diff --git a/src/androidextras/jni/qandroidjniobject.h b/src/androidextras/jni/qandroidjniobject.h index 712082f..6098f8c 100644 --- a/src/androidextras/jni/qandroidjniobject.h +++ b/src/androidextras/jni/qandroidjniobject.h @@ -97,26 +97,36 @@ public: T getField(const char *fieldName) const; template <typename T> QAndroidJniObject getObjectField(const char *fieldName) const; + // ### Qt 6 remove templated version template <typename T> QAndroidJniObject getObjectField(const char *fieldName, const char *sig) const; + QAndroidJniObject getObjectField(const char *fieldName, const char *sig) const; template <typename T> void setField(const char *fieldName, T value); template <typename T> void setField(const char *fieldName, const char *sig, T value); template <typename T> static QAndroidJniObject getStaticObjectField(const char *className, const char *fieldName); + // ### Qt 6 remove templated version template <typename T> static QAndroidJniObject getStaticObjectField(const char *className, const char *fieldName, const char *sig); + static QAndroidJniObject getStaticObjectField(const char *className, + const char *fieldName, + const char *sig); template <typename T> static T getStaticField(const char *className, const char *fieldName); template <typename T> static QAndroidJniObject getStaticObjectField(jclass clazz, const char *fieldName); + // ### Qt 6 remove templated version template <typename T> static QAndroidJniObject getStaticObjectField(jclass clazz, const char *fieldName, const char *sig); + static QAndroidJniObject getStaticObjectField(jclass clazz, + const char *fieldName, + const char *sig); template <typename T> static T getStaticField(jclass clazz, const char *fieldName); |