From 99c385446f57f7e0a3f0e170ba03a2b4e7a45e51 Mon Sep 17 00:00:00 2001 From: Filippo Cucchetto Date: Sun, 31 Jan 2016 12:54:14 +0100 Subject: [PATCH] Temporary removed findChild and rootObjects This is done for safety reasons. We will bring them back once we found out how to deal with shared ownership with cpp --- lib/include/DOtherSide/DOtherSide.h | 5 ----- lib/src/DOtherSide.cpp | 22 ---------------------- test/test_dotherside.cpp | 15 --------------- 3 files changed, 42 deletions(-) diff --git a/lib/include/DOtherSide/DOtherSide.h b/lib/include/DOtherSide/DOtherSide.h index 487ead4..7475ab2 100644 --- a/lib/include/DOtherSide/DOtherSide.h +++ b/lib/include/DOtherSide/DOtherSide.h @@ -36,7 +36,6 @@ DOS_API void dos_qqmlapplicationengine_load_url(void* vptr, void* url); DOS_API void dos_qqmlapplicationengine_load_data(void* vptr, const char* data); DOS_API void dos_qqmlapplicationengine_add_import_path(void* vptr, const char* path); DOS_API void dos_qqmlapplicationengine_context(void* vptr, void** context); -DOS_API void dos_qqmlapplicationengine_rootObjects(void* vptr, void*** array, int* array_length); DOS_API void dos_qqmlapplicationengine_delete(void* vptr); // QQuickView @@ -56,9 +55,6 @@ DOS_API void dos_qqmlcontext_setcontextproperty(void* vptr, const char* name, vo // CharArray DOS_API void dos_chararray_delete(char* ptr); -// QObjectPtrArray -DOS_API void dos_qobjectptr_array_delete(void** ptr); - // QVariant DOS_API void dos_qvariant_create(void** vptr); DOS_API void dos_qvariant_create_int(void** vptr, int value); @@ -136,7 +132,6 @@ DOS_API void dos_qobject_signal_disconnect(void* senderVPtr, const char* method, bool* result); DOS_API void dos_qobject_objectName(void* vptr, char** result); -DOS_API void dos_qobject_findChild(void* vptr, const char* name, int options, void** child); DOS_API void dos_qobject_delete(void* vptr); // QModelIndex diff --git a/lib/src/DOtherSide.cpp b/lib/src/DOtherSide.cpp index 6775706..758fb1c 100644 --- a/lib/src/DOtherSide.cpp +++ b/lib/src/DOtherSide.cpp @@ -118,17 +118,6 @@ void dos_qqmlapplicationengine_context(void *vptr, void **context) *context = engine->rootContext(); } -void dos_qqmlapplicationengine_rootObjects(void *vptr, void *** array, int *array_length) -{ - auto engine = static_cast(vptr); - QList list = engine->rootObjects(); - void** objects = new void*[list.size()]; - for (int i = 0; i < list.size(); ++i) - objects[i] = static_cast(list.at(i)); - *array = static_cast(objects); - *array_length = list.size(); -} - void dos_qqmlapplicationengine_delete(void *vptr) { auto engine = static_cast(vptr); @@ -189,11 +178,6 @@ void dos_chararray_delete(char *ptr) if (ptr) delete[] ptr; } -void dos_qobjectptr_array_delete(void **ptr) -{ - if (ptr) delete[] ptr; -} - void dos_qqmlcontext_baseUrl(void *vptr, char **result) { auto context = static_cast(vptr); @@ -407,12 +391,6 @@ void dos_qobject_objectName(void *vptr, char **result) convert_to_cstring(object->objectName(), result); } -void dos_qobject_findChild(void *vptr, const char *name, int options, void **child) -{ - auto object = static_cast(vptr); - *child = object->findChild(QString::fromUtf8(name), (Qt::FindChildOptions) options); -} - void dos_qmodelindex_create(void **vptr) { auto index = new QModelIndex(); diff --git a/test/test_dotherside.cpp b/test/test_dotherside.cpp index 0b68a45..6dfd8cb 100644 --- a/test/test_dotherside.cpp +++ b/test/test_dotherside.cpp @@ -140,21 +140,6 @@ private slots: QVERIFY(engine()->rootObjects().front()->isWindowType()); } - void testRootObjects() - { - void **rootObjects = nullptr; - int length = 0; - void *url = nullptr; - dos_qurl_create(&url, "qrc:///main.qml", QUrl::TolerantMode); - dos_qqmlapplicationengine_load_url(m_engine, url); - dos_qurl_delete(url); - dos_qqmlapplicationengine_rootObjects(m_engine, &rootObjects, &length); - QCOMPARE(length, 1); - QObject *window = reinterpret_cast(rootObjects[0]); - QVERIFY(window->isWindowType()); - dos_qobjectptr_array_delete(rootObjects); - } - private: QQmlApplicationEngine *engine() {