FFI for all functions done

This commit is contained in:
Daniel Ziltener 2020-09-26 05:07:54 +02:00
parent 0fb1a8a131
commit 80aa4f3039
3 changed files with 418 additions and 62 deletions

20
dotherside.build.bash Executable file
View File

@ -0,0 +1,20 @@
#!/usr/bin/env bash
BASEDIR="$(pwd)"
if [ ! -f dotherside/lib/src/DosQAbstractItemModel.o ]; then
cd dotherside
git submodule update --init
mkdir build; cd build
CC="${CHICKEN_CC}" CXX="${CHICKEN_CXX}" cmake ..
CC="${CHICKEN_CC}" CXX="${CHICKEN_CXX}" make -j8
cd ../lib/src
ODIR=../../build/lib/CMakeFiles/DOtherSide.dir/src
cp "${ODIR}/DosQAbstractItemModel.cpp.o" DosQAbstractItemModel.o
cp "${ODIR}/DosQDeclarative.cpp.o" DosQDeclarative.o
cp "${ODIR}/DosQMetaObject.cpp.o" DosQMetaObject.o
cp "${ODIR}/DosQObject.cpp.o" DosQObject.o
cp "${ODIR}/DosQObjectImpl.cpp.o" DosQObjectImpl.o
cp "${ODIR}/DosQQuickImageProvider.cpp.o" DosQQuickImageProvider.o
cp "${ODIR}/DOtherSide.cpp.o" DOtherSide.o
cp "${ODIR}/DOtherSideTypesCpp.cpp.o" DOtherSideTypesCpp.o
cd "${BASEDIR}"
fi

47
qml.egg
View File

@ -3,16 +3,39 @@
(synopsis "A Chicken wrapper for DOtherSide")
(category ui)
(license "LGPLv3")
(dependencies r7rs foreigners)
(dependencies r7rs foreigners utf8)
(foreign-dependencies dotherside
lib64qt5base5-devel
lib64qt5core-devel
lib64qt5gui-devel
lib64qt5widgets-devel
lib64qt5quick-devel
lib64qt5qml-devel
lib64qt5quicktest-devel)
(components (extension qml
(c-include DOtherSide "DOtherSide/DOtherSide.h")
(c-include DOtherSideTypes "DOtherSide/DOtherSideTypes.h")
(csc-options "-c++" "-Idotherside/lib/include"))))
Qt5Core
Qt5Widgets
Qt5Gui
Qt5Quick
Qt5Qml
Qt5Test
opengl)
(components
;; (c-object dotherside/lib/src/DosQAbstractItemModel
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DosQDeclarative
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DosQMetaObject
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DosQObject
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DosQObjectImpl
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DosQQuickImageProvider
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DOtherSide
;; (custom-build "dotherside.build.bash"))
;; (c-object dotherside/lib/src/DOtherSideTypes
;; (custom-build "dotherside.build.bash"))
(extension qml.lowlevel
;; (objects dotherside/lib/src/DosQAbstractItemModel
;; dotherside/lib/src/DosQDeclarative
;; dotherside/lib/src/DosQMetaObject
;; dotherside/lib/src/DosQObject
;; dotherside/lib/src/DosQObjectImpl
;; dotherside/lib/src/DosQQuickImageProvider
;; dotherside/lib/src/DOtherSide
;; dotherside/lib/src/DOtherSideTypes)
(csc-options "-c++" "-Idotherside/lib/include" "-Ldotherside/build/lib"))))

View File

@ -1,14 +1,15 @@
(import (r7rs))
(define-library (qml)
(define-library (qml lowlevel)
(import (scheme base))
(import (chicken foreign))
(import foreigners)
(export dos_qcoreapplication_application_dir_path)
(export *)
(begin
(foreign-declare "#include <DOtherSide/DOtherSideTypes.h>")
(foreign-declare "#include <DOtherSide/DOtherSide.h>")
(define-foreign-type DosQVariant "DosQVariant")
(define-foreign-type DosQModelIndex "DosQModelIndex")
(define-foreign-type DosQAbstractListModel "DosQAbstractListModel")
(define-foreign-type DosQAbstractItemModel "DosQAbstractItemModel")
(define-foreign-type DosQAbstractTableModel "DosQAbstractTableModel")
(define-foreign-type DosQQmlApplicationEngine "DosQQmlApplicationEngine")
@ -126,63 +127,54 @@
;; QGuiApplication
(define dos_qguiapplication_create
(foreign-lambda* void ()
"dos_qguiapplication_create();"))
(foreign-lambda void "dos_qguiapplication_create"))
(define dos_qguiapplication_exec
(foreign-lambda* void ()
"dos_qguiapplication_exec();"))
(foreign-lambda void "dos_qguiapplication_exec"))
(define dos_qguiapplication_quit
(foreign-lambda* void ()
"dos_qguiapplication_quit();"))
(foreign-lambda void "dos_qguiapplication_quit"))
(define dos_qguiapplication_delete
(foreign-lambda* void ()
"dos_qguiapplication_delete();"))
(foreign-lambda void "dos_qguiapplication_delete"))
;; QApplication
(define dos_qapplication_create
(foreign-lambda* void ()
"dos_qapplication_create();"))
(foreign-lambda void "dos_qapplication_create"))
(define dos_qapplication_exec
(foreign-lambda* void ()
"dos_qapplication_exec();"))
(foreign-lambda void "dos_qapplication_exec"))
(define dos_qapplication_quit
(foreign-lambda* void ()
"dos_qapplication_quit();"))
(foreign-lambda void "dos_qapplication_quit"))
(define dos_qapplication_delete
(foreign-lambda* void ()
"dos_qapplication_delete();"))
(foreign-lambda void "dos_qapplication_delete"))
;; QQmlApplicationEngine
(define dos_qqmlapplicationengine_create
(foreign-lambda* (c-pointer DosQQmlApplicationEngine) ()
"C_return(dos_qqmlapplicationengine_create());"))
(foreign-lambda (c-pointer DosQQmlApplicationEngine) "dos_qqmlapplicationengine_create"))
(define dos_qqmlapplicationengine_load
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr)
(c-string filename))
"dos_qqmlapplicationengine_load(vptr, filename);"))
(foreign-lambda void "dos_qqmlapplicationengine_load"
(c-pointer DosQQmlApplicationEngine)
c-string))
(define dos_qqmlapplicationengine_load_url
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr)
((c-pointer DosQUrl) url))
"dos_qqmlapplicationengine_load_url(vptr, url);"))
(foreign-lambda void "dos_qqmlapplicationengine_load_url"
(c-pointer DosQQmlApplicationEngine)
(c-pointer DosQUrl)))
(define dos_qqmlapplicationengine_load_data
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr)
(c-string data))
"dos_qqmlapplicationengine_load_data(vptr, data);"))
(foreign-lambda void "dos_qqmlapplicationengine_load_data"
(c-pointer DosQQmlApplicationEngine)
c-string))
(define dos_qqmlapplicationengine_add_import_path
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr)
(c-string path))
"dos_qqmlapplicationengine_add_import_path(vptr, path);"))
(foreign-lambda void "dos_qqmlapplicationengine_add_import_path"
(c-pointer DosQQmlApplicationEngine)
c-string))
(define dos_qqmlapplicationengine_context
(foreign-lambda* (c-pointer DosQQmlContext) (((c-pointer DosQQmlApplicationEngine) vptr))
"C_return(dos_qqmlapplicationengine_context(vptr));"))
(foreign-lambda (c-pointer DosQQmlContext) "dos_qqmlapplicationengine_context"
(c-pointer DosQQmlApplicationEngine)))
(define dos_qqmlapplicationengine_addImageProvider
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr)
(c-string name)
((c-pointer DosQQuickImageProvider) vptr_i))
"dos_qqmlapplicationengine_addImageProvider(vptr, name, vptr_i);"))
(foreign-lambda void "dos_qqmlapplicationengine_addImageProvider"
(c-pointer DosQQmlApplicationEngine)
c-string
(c-pointer DosQQuickImageProvider)))
(define dos_qqmlapplicationengine_delete
(foreign-lambda* void (((c-pointer DosQQmlApplicationEngine) vptr))
"dos_qqmlapplicationengine_delete(vptr);"))
(foreign-lambda void "dos_qqmlapplicationengine_delete"
(c-pointer DosQQmlApplicationEngine)))
;; QQuickImageProvider
(define dos_qquickimageprovider_create
@ -400,15 +392,336 @@
(foreign-lambda* (c-pointer DosQMetaObject) ()
"C_return(dos_qabstractlistmodel_qmetaobject());"))
(define dos_qabstractlistmodel_create
(foreign-lambda* (c-pointer DosQAbstractListModel) (((c-pointer (function void ())) callbackObject)
((c-pointer DosQMetaObject) metaObject)
(DObjectCallback dObjectCallback)
((c-pointer DosQAbstractItemModelCallbacks) callbacks))
(foreign-safe-lambda*
(c-pointer DosQAbstractListModel) (((c-pointer (function void ())) callbackObject)
((c-pointer DosQMetaObject) metaObject)
(DObjectCallback dObjectCallback)
((c-pointer DosQAbstractItemModelCallbacks) callbacks))
"C_return(dos_qabstractlistmodel_create(callbackObject, metaObject, dObjectCallback, callbacks));"))
;; (define dos_qabstractlistmodel_index
;; (foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractListModel) vptr)
;; (int row)
;; (int column)
;; ((c-pointer DosQModelIndex) parent))
;; "C_return(dos_qabstractlistmodel_index(vptr, row, column, parent));"))
(define dos_qabstractlistmodel_index
(foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractListModel) vptr)
(int row)
(int column)
((c-pointer DosQModelIndex) parent))
"C_return(dos_qabstractlistmodel_index(vptr, row, column, parent));"))
(define dos_qabstractlistmodel_parent
(foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractListModel) vptr)
((c-pointer DosQModelIndex) child))
"C_return(dos_qabstractlistmodel_parent(vptr, child));"))
(define dos_qabstractlistmodel_columnCount
(foreign-lambda* int (((c-pointer DosQAbstractListModel) vptr)
((c-pointer DosQModelIndex) parent))
"C_return(dos_qabstractlistmodel_columnCount(vptr, parent));"))
;; QAbstractTableModel
(define dos_qabstracttablemodel_qmetaobject
(foreign-lambda* (c-pointer DosQMetaObject) ()
"C_return(dos_qabstracttablemodel_qmetaobject());"))
(define dos_qabstracttablemodel_create
(foreign-safe-lambda*
(c-pointer DosQAbstractTableModel) (((c-pointer (function void ())) callbackObject)
((c-pointer DosQMetaObject) metaObject)
(DObjectCallback dObjectCallback)
((c-pointer DosQAbstractItemModelCallbacks) callbacks))
"C_return(dos_qabstracttablemodel_create(callbackObject, metaObject, dObjectCallback, callbacks));"))
(define dos_qabstracttablemodel_index
(foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractTableModel) vptr)
(int row)
(int column)
((c-pointer DosQModelIndex) parent))
"C_return(dos_qabstracttablemodel_index(vptr, row, column, parent));"))
(define dos_qabstracttablemodel_parent
(foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractTableModel) vptr)
((c-pointer DosQModelIndex) child))
"C_return(dos_qabstracttablemodel_parent(vptr, child));"))
;; QAbstractItemModel
(define dos_qabstractitemmodel_qmetaobject
(foreign-lambda* (c-pointer DosQMetaObject) ()
"C_return(dos_qabstractitemmodel_qmetaobject());"))
(define dos_qabstractitemmodel_create
(foreign-safe-lambda*
(c-pointer DosQAbstractItemModel) (((c-pointer (function void ())) callbackObject)
((c-pointer DosQMetaObject) metaObject)
(DObjectCallback dObjectCallback)
((c-pointer DosQAbstractItemModelCallbacks) callbacks))
"C_return(dos_qabstractitemmodel_create(callbackObject, metaObject, dObjectCallback, callbacks));"))
(define dos_qabstractitemmodel_setData
(foreign-lambda* bool (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) index)
((c-pointer DosQVariant) data)
(int role))
"C_return(dos_qabstractitemmodel_setData(vptr, index, data, role));"))
(define dos_qabstractitemmodel_roleNames
(foreign-lambda* (c-pointer DosQHashIntQByteArray) (((c-pointer DosQAbstractItemModel) vptr))
"C_return(dos_qabstractitemmodel_roleNames(vptr));"))
(define dos_qabstractitemmodel_flags
(foreign-lambda* int (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) index))
"C_return(dos_qabstractitemmodel_flags(vptr, index));"))
(define dos_qabstractitemmodel_headerData
(foreign-lambda* (c-pointer DosQVariant) (((c-pointer DosQAbstractItemModel) vptr)
(int section)
(int orientation)
(int role))
"C_return(dos_qabstractitemmodel_headerData(vptr, section, orientation, role));"))
(define dos_qabstractitemmodel_hasChildren
(foreign-lambda* bool (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parentIndex))
"C_return(dos_qabstractitemmodel_hasChildren(vptr, parentIndex));"))
(define dos_qabstractitemmodel_hasIndex
(foreign-lambda* bool (((c-pointer DosQAbstractItemModel) vptr)
(int row)
(int column)
((c-pointer DosQModelIndex) dosParentIndex))
"C_return(dos_qabstractitemmodel_hasIndex(vptr, row, column, dosParentIndex));"))
(define dos_qabstractitemmodel_canFetchMore
(foreign-lambda* bool (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parentIndex))
"C_return(dos_qabstractitemmodel_canFetchMore(vptr, parentIndex));"))
(define dos_qabstractitemmodel_fetchMore
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parentIndex))
"dos_qabstractitemmodel_fetchMore(vptr, parentIndex);"))
(define dos_qabstractitemmodel_beginInsertRows
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parent)
(int first)
(int last))
"dos_qabstractitemmodel_beginInsertRows(vptr, parent, first, last);"))
(define dos_qabstractitemmodel_endInsertRows
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_endInsertRows(vptr);"))
(define dos_qabstractitemmodel_beginRemoveRows
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parent)
(int first)
(int last))
"dos_qabstractitemmodel_beginRemoveRows(vptr, parent, first, last);"))
(define dos_qabstractitemmodel_endRemoveRows
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_endRemoveRows(vptr);"))
(define dos_qabstractitemmodel_beginInsertColumns
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parent)
(int first)
(int last))
"dos_qabstractitemmodel_beginInsertColumns(vptr, parent, first, last);"))
(define dos_qabstractitemmodel_endInsertColumns
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_endInsertColumns(vptr);"))
(define dos_qabstractitemmodel_beginRemoveColumns
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) parent)
(int first)
(int last))
"dos_qabstractitemmodel_beginRemoveColumns(vptr, parent, first, last);"))
(define dos_qabstractitemmodel_endRemoveColumns
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_endRemoveColumns(vptr);"))
(define dos_qabstractitemmodel_beginResetModel
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_beginResetModel(vptr);"))
(define dos_qabstractitemmodel_endResetModel
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr))
"dos_qabstractitemmodel_endResetModel(vptr);"))
(define dos_qabstractitemmodel_dataChanged
(foreign-lambda* void (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) topLeft)
((c-pointer DosQModelIndex) bottomRight)
((c-pointer int) rolesPtr)
(int rolesLength))
"dos_qabstractitemmodel_dataChanged(vptr, topLeft, bottomRight, rolesPtr, rolesLength);"))
(define dos_qabstractitemmodel_createIndex
(foreign-lambda* (c-pointer DosQModelIndex) (((c-pointer DosQAbstractItemModel) vptr)
(int row)
(int column)
(c-pointer data))
"C_return(dos_qabstractitemmodel_createIndex(vptr, row, column, data));"))
(define dos_qabstractitemmodel_setData
(foreign-lambda* bool (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) index)
((c-pointer DosQVariant) value)
(int role))
"C_return(dos_qabstractitemmodel_setData(vptr, index, value, role));"))
(define dos_qabstractitemmodel_roleNames
(foreign-lambda* (c-pointer DosQHashIntQByteArray) (((c-pointer DosQAbstractItemModel) vptr))
"C_return(dos_qabstractitemmodel_roleNames(vptr));"))
(define dos_qabstractitemmodel_flags
(foreign-lambda* int (((c-pointer DosQAbstractItemModel) vptr)
((c-pointer DosQModelIndex) index))
"C_return(dos_qabstractitemmodel_flags(vptr, index));"))
(define dos_qabstractitemmodel_headerData
(foreign-lambda* (c-pointer DosQVariant) (((c-pointer DosQAbstractItemModel) vptr)
(int section)
(int orientation)
(int role))
"C_return(dos_qabstractitemmodel_headerData(vptr, section, orientation, role));"))
;; QObject
(define dos_qobject_qmetaobject
(foreign-lambda* (c-pointer DosQMetaObject) ()
"C_return(dos_qobject_qmetaobject());"))
(define dos_qobject_create
(foreign-lambda (c-pointer DosQObject) "dos_qobject_create"
c-pointer (c-pointer DosQMetaObject) DObjectCallback))
(define dos_qobject_signal_emit
(foreign-lambda void "dos_qobject_signal_emit"
(c-pointer DosQObject) c-string int (c-pointer c-pointer)))
(define dos_qobject_signal_connect
(foreign-lambda bool "dos_qobject_signal_connect"
(c-pointer DosQObject) ;; senderVPtr
c-string ;; signal
(c-pointer DosQObject) ;; receiverVPtr
c-string ;; method
int)) ;; type
(define dos_qobject_signal_disconnect
(foreign-lambda bool "dos_qobject_signal_disconnect"
(c-pointer DosQObject) ;; senderVPtr
c-string ;; signal
(c-pointer DosQObject) ;; receiverVPtr
c-string)) ;; method
(define dos_qobject_objectName
(foreign-lambda c-string "dos_qobject_objectName"
(c-pointer DosQObject)))
(define dos_qobject_setObjectName
(foreign-lambda void "dos_qobject_setObjectName"
(c-pointer DosQObject) c-string))
(define dos_qobject_delete
(foreign-lambda void "dos_qobject_delete"
(c-pointer DosQObject)))
(define dos_qobject_deleteLater
(foreign-lambda void "dos_qobject_deleteLater"
(c-pointer DosQObject)))
(define dos_qobject_property
(foreign-lambda (c-pointer DosQVariant) "dos_qobject_property"
(c-pointer DosQObject) c-string))
(define dos_qobject_setProperty
(foreign-lambda bool "dos_qobject_setProperty"
(c-pointer DosQObject) c-string (c-pointer DosQVariant)))
(define dos_slot_macro
(foreign-lambda c-string "dos_slot_macro"
c-string))
(define dos_signal_macro
(foreign-lambda c-string "dos_signal_macro"
c-string))
(define dos_qobject_connect_static
(foreign-lambda void "dos_qobject_connect_static"
(c-pointer DosQObject) ;; sender
c-string ;; signal
(c-pointer DosQObject) ;; receiver
c-string ;; slot
DosQtConnectionType)) ;; connection_type
(define dos_qobject_disconnect_static
(foreign-lambda void "dos_qobject_disconnect_static"
(c-pointer DosQObject) ;; sender
c-string ;; signal
(c-pointer DosQObject) ;; receiver
c-string)) ;; slot
;; QModelIndex
(define dos_qmodelindex_create
(foreign-lambda (c-pointer DosQModelIndex) "dos_qmodelindex_create"))
(define dos_qmodelindex_create_qmodelindex
(foreign-lambda (c-pointer DosQModelIndex) "dos_qmodelindex_create_qmodelindex"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_delete
(foreign-lambda void "dos_qmodelindex_delete"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_row
(foreign-lambda int "dos_qmodelindex_row"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_column
(foreign-lambda int "dos_qmodelindex_column"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_isValid
(foreign-lambda bool "dos_qmodelindex_isValid"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_data
(foreign-lambda (c-pointer DosQVariant) "dos_qmodelindex_data"
(c-pointer DosQModelIndex)
int))
(define dos_qmodelindex_parent
(foreign-lambda (c-pointer DosQModelIndex) "dos_qmodelindex_parent"
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_child
(foreign-lambda (c-pointer DosQModelIndex) "dos_qmodelindex_child"
(c-pointer DosQModelIndex)
int
int))
(define dos_qmodelindex_sibling
(foreign-lambda (c-pointer DosQModelIndex) "dos_qmodelindex_sibling"
(c-pointer DosQModelIndex)
int
int))
(define dos_qmodelindex_assign
(foreign-lambda void "dos_qmodelindex_assign"
(c-pointer DosQModelIndex)
(c-pointer DosQModelIndex)))
(define dos_qmodelindex_internalPointer
(foreign-lambda c-pointer "dos_qmodelindex_internalPointer"
(c-pointer DosQModelIndex)))
;; QHash
(define dos_qhash_int_qbytearray_create
(foreign-lambda (c-pointer DosQHashIntQByteArray) "dos_qhash_int_qbytearray_create"))
(define dos_qhash_int_qbytearray_delete
(foreign-lambda void "dos_qhash_int_qbytearray_delete"
(c-pointer DosQHashIntQByteArray)))
(define dos_qhash_int_qbytearray_insert
(foreign-lambda void "dos_qhash_int_qbytearray_insert"
(c-pointer DosQHashIntQByteArray)
int
c-string))
(define dos_qhash_int_qbytearray_value
(foreign-lambda c-string "dos_qhash_int_qbytearray_value"
(c-pointer DosQHashIntQByteArray)
int))
;; QResource
(define dos_qresource_register
(foreign-lambda void "dos_qresource_register"
c-string))
;; QUrl
(define dos_qurl_create
(foreign-lambda (c-pointer DosQUrl) "dos_qurl_create"
c-string
int))
(define dos_qurl_delete
(foreign-lambda void "dos_qurl_delete"
(c-pointer DosQUrl)))
(define dos_qurl_to_string
(foreign-lambda c-string "dos_qurl_to_string"
(c-pointer DosQUrl)))
(define dos_qurl_isValid
(foreign-lambda bool "dos_qurl_isValid"
(c-pointer DosQUrl)))
;; QDeclarative
(define dos_qdeclarative_qmlregistertype
(foreign-lambda int "dos_qdeclarative_qmlregistertype"
(c-pointer QmlRegisterType)))
(define dos_qdeclarative_qmlregistersingletontype
(foreign-lambda int "dos_qdeclarative_qmlregistersingletontype"
(c-pointer QmlRegisterType)))
;; QPointer
(define dos_qpointer_create
(foreign-lambda (c-pointer DosQPointer) "dos_qpointer_create"
(c-pointer DosQObject)))
(define dos_qpointer_delete
(foreign-lambda void "dos_qpointer_delete"
(c-pointer DosQPointer)))
(define dos_qpointer_is_null
(foreign-lambda bool "dos_qpointer_is_null"
(c-pointer DosQPointer)))
(define dos_qpointer_clear
(foreign-lambda void "dos_qpointer_clear"
(c-pointer DosQPointer)))
(define dos_qpointer_data
(foreign-lambda (c-pointer DosQObject) "dos_qpointer_data"
(c-pointer DosQPointer)))
))