Merge pull request #31 from Calrama/misc
Added extra functions for QQuickView, QQmlApplicationEngine and QUrl
This commit is contained in:
commit
7586b827e7
|
@ -35,13 +35,16 @@ DOS_API void dos_qqmlapplicationengine_load(void* vptr, const char* filename);
|
||||||
DOS_API void dos_qqmlapplicationengine_load_url(void* vptr, void* url);
|
DOS_API void dos_qqmlapplicationengine_load_url(void* vptr, void* url);
|
||||||
DOS_API void dos_qqmlapplicationengine_add_import_path(void* vptr, const char* path);
|
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_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);
|
DOS_API void dos_qqmlapplicationengine_delete(void* vptr);
|
||||||
|
|
||||||
// QQuickView
|
// QQuickView
|
||||||
DOS_API void dos_qquickview_create(void** vptr);
|
DOS_API void dos_qquickview_create(void** vptr);
|
||||||
DOS_API void dos_qquickview_show(void* vptr);
|
DOS_API void dos_qquickview_show(void* vptr);
|
||||||
DOS_API void dos_qquickview_source(void* vptr, char** result);
|
DOS_API void dos_qquickview_source(void* vptr, char** result);
|
||||||
|
DOS_API void dos_qquickview_set_source_url(void* vptr, void* url);
|
||||||
DOS_API void dos_qquickview_set_source(void* vptr, const char* filename);
|
DOS_API void dos_qquickview_set_source(void* vptr, const char* filename);
|
||||||
|
DOS_API void dos_qquickview_set_resize_mode(void* vptr, int resizeMode);
|
||||||
DOS_API void dos_qquickview_delete(void* vptr);
|
DOS_API void dos_qquickview_delete(void* vptr);
|
||||||
DOS_API void dos_qquickview_rootContext(void* vptr, void** result);
|
DOS_API void dos_qquickview_rootContext(void* vptr, void** result);
|
||||||
|
|
||||||
|
@ -52,6 +55,9 @@ DOS_API void dos_qqmlcontext_setcontextproperty(void* vptr, const char* name, vo
|
||||||
// CharArray
|
// CharArray
|
||||||
DOS_API void dos_chararray_delete(char* ptr);
|
DOS_API void dos_chararray_delete(char* ptr);
|
||||||
|
|
||||||
|
// QObjectPtrArray
|
||||||
|
DOS_API void dos_qobjectptr_array_delete(void** ptr);
|
||||||
|
|
||||||
// QVariant
|
// QVariant
|
||||||
DOS_API void dos_qvariant_create(void** vptr);
|
DOS_API void dos_qvariant_create(void** vptr);
|
||||||
DOS_API void dos_qvariant_create_int(void** vptr, int value);
|
DOS_API void dos_qvariant_create_int(void** vptr, int value);
|
||||||
|
@ -114,6 +120,8 @@ DOS_API void dos_qobject_property_create(void* vptr,
|
||||||
const char* readSlot,
|
const char* readSlot,
|
||||||
const char* writeSlot,
|
const char* writeSlot,
|
||||||
const char* notifySignal);
|
const char* notifySignal);
|
||||||
|
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);
|
DOS_API void dos_qobject_delete(void* vptr);
|
||||||
|
|
||||||
// QModelIndex
|
// QModelIndex
|
||||||
|
@ -159,6 +167,7 @@ DOS_API void dos_qresource_register(const char* filename);
|
||||||
// QUrl
|
// QUrl
|
||||||
DOS_API void dos_qurl_create(void** vptr, const char* url, int parsingMode);
|
DOS_API void dos_qurl_create(void** vptr, const char* url, int parsingMode);
|
||||||
DOS_API void dos_qurl_delete(void* vptr);
|
DOS_API void dos_qurl_delete(void* vptr);
|
||||||
|
DOS_API void dos_qurl_to_string(void* vptr, char** result);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,6 +106,17 @@ void dos_qqmlapplicationengine_context(void* vptr, void** context)
|
||||||
*context = engine->rootContext();
|
*context = engine->rootContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dos_qqmlapplicationengine_rootObjects(void* vptr, void*** array, int* array_length)
|
||||||
|
{
|
||||||
|
QQmlApplicationEngine* engine = reinterpret_cast<QQmlApplicationEngine*>(vptr);
|
||||||
|
QList<QObject*> list = engine->rootObjects();
|
||||||
|
auto objects = new QObject*[list.size()];
|
||||||
|
if (objects == nullptr) return;
|
||||||
|
for (int i = 0; i < list.length(); i += 1) objects[i] = list.at(i);
|
||||||
|
*array = reinterpret_cast<void**>(objects);
|
||||||
|
*array_length = list.length();
|
||||||
|
}
|
||||||
|
|
||||||
void dos_qqmlapplicationengine_delete(void* vptr)
|
void dos_qqmlapplicationengine_delete(void* vptr)
|
||||||
{
|
{
|
||||||
QQmlApplicationEngine* engine = reinterpret_cast<QQmlApplicationEngine*>(vptr);
|
QQmlApplicationEngine* engine = reinterpret_cast<QQmlApplicationEngine*>(vptr);
|
||||||
|
@ -142,6 +153,19 @@ void dos_qquickview_set_source(void* vptr, const char* filename)
|
||||||
view->setSource(QUrl::fromLocalFile(QCoreApplication::applicationDirPath() + QDir::separator() + QString(filename)));
|
view->setSource(QUrl::fromLocalFile(QCoreApplication::applicationDirPath() + QDir::separator() + QString(filename)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dos_qquickview_set_source_url(void* vptr, void* url)
|
||||||
|
{
|
||||||
|
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
|
||||||
|
QUrl* _url = reinterpret_cast<QUrl*>(url);
|
||||||
|
view->setSource(*_url);
|
||||||
|
}
|
||||||
|
|
||||||
|
void dos_qquickview_set_resize_mode(void* vptr, int resizeMode)
|
||||||
|
{
|
||||||
|
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
|
||||||
|
view->setResizeMode((QQuickView::ResizeMode) resizeMode);
|
||||||
|
}
|
||||||
|
|
||||||
void dos_qquickview_rootContext(void* vptr, void** context)
|
void dos_qquickview_rootContext(void* vptr, void** context)
|
||||||
{
|
{
|
||||||
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
|
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
|
||||||
|
@ -153,6 +177,11 @@ void dos_chararray_delete(char* ptr)
|
||||||
if (ptr) delete[] ptr;
|
if (ptr) delete[] ptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dos_qobjectptr_array_delete(void** ptr)
|
||||||
|
{
|
||||||
|
if (ptr) delete[] ptr;
|
||||||
|
}
|
||||||
|
|
||||||
void dos_qqmlcontext_baseUrl(void* vptr, char** result)
|
void dos_qqmlcontext_baseUrl(void* vptr, char** result)
|
||||||
{
|
{
|
||||||
QQmlContext* context = reinterpret_cast<QQmlContext*>(vptr);
|
QQmlContext* context = reinterpret_cast<QQmlContext*>(vptr);
|
||||||
|
@ -424,6 +453,18 @@ void dos_qobject_property_create(void* vptr,
|
||||||
QString(notifySignal));
|
QString(notifySignal));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dos_qobject_objectName(void* vptr, char** result)
|
||||||
|
{
|
||||||
|
QObject* object = reinterpret_cast<QObject*>(vptr);
|
||||||
|
convert_to_cstring(object->objectName(), result);
|
||||||
|
}
|
||||||
|
|
||||||
|
void dos_qobject_findChild(void* vptr, const char* name, int options, void** child)
|
||||||
|
{
|
||||||
|
QObject* object = reinterpret_cast<QObject*>(vptr);
|
||||||
|
*child = object->findChild<QObject*>(QString::fromUtf8(name), (Qt::FindChildOptions) options);
|
||||||
|
}
|
||||||
|
|
||||||
void dos_qmodelindex_create(void** vptr)
|
void dos_qmodelindex_create(void** vptr)
|
||||||
{
|
{
|
||||||
auto index = new QModelIndex();
|
auto index = new QModelIndex();
|
||||||
|
@ -602,3 +643,9 @@ void dos_qurl_delete(void* vptr)
|
||||||
delete url;
|
delete url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dos_qurl_to_string(void* vptr, char** result)
|
||||||
|
{
|
||||||
|
QUrl* url = reinterpret_cast<QUrl*>(vptr);
|
||||||
|
convert_to_cstring(url->toString(), result);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue