mirror of
https://github.com/status-im/dotherside.git
synced 2025-02-11 20:16:47 +00:00
Given a pass of astyle
This commit is contained in:
parent
b2f0c64d15
commit
7f1f91a71e
@ -15,7 +15,7 @@ extern "C"
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// QCoreApplication
|
// QCoreApplication
|
||||||
DOS_API void dos_qcoreapplication_application_dir_path(char** result);
|
DOS_API void dos_qcoreapplication_application_dir_path(char **result);
|
||||||
|
|
||||||
// QGuiApplication
|
// QGuiApplication
|
||||||
DOS_API void dos_qguiapplication_create();
|
DOS_API void dos_qguiapplication_create();
|
||||||
@ -30,70 +30,70 @@ DOS_API void dos_qapplication_quit();
|
|||||||
DOS_API void dos_qapplication_delete();
|
DOS_API void dos_qapplication_delete();
|
||||||
|
|
||||||
// QQmlApplicationEngine
|
// QQmlApplicationEngine
|
||||||
DOS_API void dos_qqmlapplicationengine_create(void** vptr);
|
DOS_API void dos_qqmlapplicationengine_create(void **vptr);
|
||||||
DOS_API void dos_qqmlapplicationengine_load(void* vptr, const char* filename);
|
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_load_data(void* vptr, const char* data);
|
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_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_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_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_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);
|
||||||
|
|
||||||
// QQmlContext
|
// QQmlContext
|
||||||
DOS_API void dos_qqmlcontext_baseUrl(void* vptr, char** result);
|
DOS_API void dos_qqmlcontext_baseUrl(void *vptr, char **result);
|
||||||
DOS_API void dos_qqmlcontext_setcontextproperty(void* vptr, const char* name, void* value);
|
DOS_API void dos_qqmlcontext_setcontextproperty(void *vptr, const char *name, void *value);
|
||||||
|
|
||||||
// CharArray
|
// CharArray
|
||||||
DOS_API void dos_chararray_delete(char* ptr);
|
DOS_API void dos_chararray_delete(char *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);
|
||||||
DOS_API void dos_qvariant_create_bool(void** vptr, bool value);
|
DOS_API void dos_qvariant_create_bool(void **vptr, bool value);
|
||||||
DOS_API void dos_qvariant_create_string(void** vptr, const char* value);
|
DOS_API void dos_qvariant_create_string(void **vptr, const char *value);
|
||||||
DOS_API void dos_qvariant_create_qobject(void** vptr, void* value);
|
DOS_API void dos_qvariant_create_qobject(void **vptr, void *value);
|
||||||
DOS_API void dos_qvariant_create_qvariant(void** vptr, void* value);
|
DOS_API void dos_qvariant_create_qvariant(void **vptr, void *value);
|
||||||
DOS_API void dos_qvariant_create_float(void** vptr, float value);
|
DOS_API void dos_qvariant_create_float(void **vptr, float value);
|
||||||
DOS_API void dos_qvariant_create_double(void** vptr, double value);
|
DOS_API void dos_qvariant_create_double(void **vptr, double value);
|
||||||
DOS_API void dos_qvariant_toInt(void* vptr, int* result);
|
DOS_API void dos_qvariant_toInt(void *vptr, int *result);
|
||||||
DOS_API void dos_qvariant_setInt(void* vptr, int value);
|
DOS_API void dos_qvariant_setInt(void *vptr, int value);
|
||||||
DOS_API void dos_qvariant_toBool(void* vptr, bool* result);
|
DOS_API void dos_qvariant_toBool(void *vptr, bool *result);
|
||||||
DOS_API void dos_qvariant_setBool(void* vptr, bool value);
|
DOS_API void dos_qvariant_setBool(void *vptr, bool value);
|
||||||
DOS_API void dos_qvariant_toFloat(void* vptr, float* result);
|
DOS_API void dos_qvariant_toFloat(void *vptr, float *result);
|
||||||
DOS_API void dos_qvariant_setFloat(void* vptr, float value);
|
DOS_API void dos_qvariant_setFloat(void *vptr, float value);
|
||||||
DOS_API void dos_qvariant_toDouble(void* vptr, double* result);
|
DOS_API void dos_qvariant_toDouble(void *vptr, double *result);
|
||||||
DOS_API void dos_qvariant_setDouble(void* vptr, double value);
|
DOS_API void dos_qvariant_setDouble(void *vptr, double value);
|
||||||
DOS_API void dos_qvariant_toString(void* vptr, char** result);
|
DOS_API void dos_qvariant_toString(void *vptr, char **result);
|
||||||
DOS_API void dos_qvariant_setString(void* vptr, const char* value);
|
DOS_API void dos_qvariant_setString(void *vptr, const char *value);
|
||||||
DOS_API void dos_qvariant_toQObject(void* vptr, void** value);
|
DOS_API void dos_qvariant_toQObject(void *vptr, void **value);
|
||||||
DOS_API void dos_qvariant_setQObject(void* vptr, void* value);
|
DOS_API void dos_qvariant_setQObject(void *vptr, void *value);
|
||||||
DOS_API void dos_qvariant_isnull(void* vptr, bool* result);
|
DOS_API void dos_qvariant_isnull(void *vptr, bool *result);
|
||||||
DOS_API void dos_qvariant_delete(void* vptr);
|
DOS_API void dos_qvariant_delete(void *vptr);
|
||||||
DOS_API void dos_qvariant_assign(void* vptr, void* other);
|
DOS_API void dos_qvariant_assign(void *vptr, void *other);
|
||||||
|
|
||||||
// QMetaObject
|
// QMetaObject
|
||||||
DOS_API void dos_qmetaobject_create(void** vptr,
|
DOS_API void dos_qmetaobject_create(void **vptr,
|
||||||
void *superClassMetaObject,
|
void *superClassMetaObject,
|
||||||
const char *className,
|
const char *className,
|
||||||
const SignalDefinitions *signalDefinitions,
|
const SignalDefinitions *signalDefinitions,
|
||||||
const SlotDefinitions *slotDefinitions,
|
const SlotDefinitions *slotDefinitions,
|
||||||
const PropertyDefinitions *propertyDefinitions);
|
const PropertyDefinitions *propertyDefinitions);
|
||||||
DOS_API void dos_qmetaobject_delete(void* vptr);
|
DOS_API void dos_qmetaobject_delete(void *vptr);
|
||||||
|
|
||||||
// QAbstractListModel
|
// QAbstractListModel
|
||||||
DOS_API void dos_qabstractlistmodel_qmetaobject(void** vptr);
|
DOS_API void dos_qabstractlistmodel_qmetaobject(void **vptr);
|
||||||
DOS_API void dos_qabstractlistmodel_create(void** vptr,
|
DOS_API void dos_qabstractlistmodel_create(void **vptr,
|
||||||
void* callbackObject,
|
void *callbackObject,
|
||||||
void* metaObject,
|
void *metaObject,
|
||||||
DObjectCallback dObjectCallback,
|
DObjectCallback dObjectCallback,
|
||||||
RowCountCallback rowCountCallback,
|
RowCountCallback rowCountCallback,
|
||||||
ColumnCountCallback columnCountCallback,
|
ColumnCountCallback columnCountCallback,
|
||||||
@ -102,68 +102,68 @@ DOS_API void dos_qabstractlistmodel_create(void** vptr,
|
|||||||
RoleNamesCallback roleNamesCallback,
|
RoleNamesCallback roleNamesCallback,
|
||||||
FlagsCallback flagsCallback,
|
FlagsCallback flagsCallback,
|
||||||
HeaderDataCallback headerDataCallback);
|
HeaderDataCallback headerDataCallback);
|
||||||
DOS_API void dos_qabstractlistmodel_beginInsertRows(void* vptr, void* parent, int first, int last);
|
DOS_API void dos_qabstractlistmodel_beginInsertRows(void *vptr, void *parent, int first, int last);
|
||||||
DOS_API void dos_qabstractlistmodel_endInsertRows(void* vptr);
|
DOS_API void dos_qabstractlistmodel_endInsertRows(void *vptr);
|
||||||
DOS_API void dos_qabstractlistmodel_beginRemoveRows(void* vptr, void* parent, int first, int last);
|
DOS_API void dos_qabstractlistmodel_beginRemoveRows(void *vptr, void *parent, int first, int last);
|
||||||
DOS_API void dos_qabstractlistmodel_endRemoveRows(void* vptr);
|
DOS_API void dos_qabstractlistmodel_endRemoveRows(void *vptr);
|
||||||
DOS_API void dos_qabstractlistmodel_beginResetModel(void* vptr);
|
DOS_API void dos_qabstractlistmodel_beginResetModel(void *vptr);
|
||||||
DOS_API void dos_qabstractlistmodel_endResetModel(void* vptr);
|
DOS_API void dos_qabstractlistmodel_endResetModel(void *vptr);
|
||||||
DOS_API void dos_qabstractlistmodel_dataChanged(void* vptr, void* topLeft, void* bottomRight, int* rolesPtr, int rolesLength);
|
DOS_API void dos_qabstractlistmodel_dataChanged(void *vptr, void *topLeft, void *bottomRight, int *rolesPtr, int rolesLength);
|
||||||
|
|
||||||
// QObject
|
// QObject
|
||||||
DOS_API void dos_qobject_qmetaobject(void** vptr);
|
DOS_API void dos_qobject_qmetaobject(void **vptr);
|
||||||
DOS_API void dos_qobject_create(void** vptr, void* dObjectPointer,
|
DOS_API void dos_qobject_create(void **vptr, void *dObjectPointer,
|
||||||
void* metaObject,
|
void *metaObject,
|
||||||
DObjectCallback dObjectCallback);
|
DObjectCallback dObjectCallback);
|
||||||
DOS_API void dos_qobject_signal_emit(void* vptr,
|
DOS_API void dos_qobject_signal_emit(void *vptr,
|
||||||
const char* name,
|
const char *name,
|
||||||
int parametersCount,
|
int parametersCount,
|
||||||
void** parameters);
|
void **parameters);
|
||||||
DOS_API void dos_qobject_signal_connect(void* senderVPtr,
|
DOS_API void dos_qobject_signal_connect(void *senderVPtr,
|
||||||
const char* signal,
|
const char *signal,
|
||||||
void* receiverVPtr,
|
void *receiverVPtr,
|
||||||
const char* method,
|
const char *method,
|
||||||
int type,
|
int type,
|
||||||
bool* result);
|
bool *result);
|
||||||
DOS_API void dos_qobject_signal_disconnect(void* senderVPtr,
|
DOS_API void dos_qobject_signal_disconnect(void *senderVPtr,
|
||||||
const char* signal,
|
const char *signal,
|
||||||
void* receiverVPtr,
|
void *receiverVPtr,
|
||||||
const char* method,
|
const char *method,
|
||||||
bool* result);
|
bool *result);
|
||||||
DOS_API void dos_qobject_objectName(void* vptr, char** result);
|
DOS_API void dos_qobject_objectName(void *vptr, char **result);
|
||||||
DOS_API void dos_qobject_setObjectName(void* vptr, const char* name);
|
DOS_API void dos_qobject_setObjectName(void *vptr, const char *name);
|
||||||
DOS_API void dos_qobject_delete(void* vptr);
|
DOS_API void dos_qobject_delete(void *vptr);
|
||||||
|
|
||||||
// QModelIndex
|
// QModelIndex
|
||||||
DOS_API void dos_qmodelindex_create(void** vptr);
|
DOS_API void dos_qmodelindex_create(void **vptr);
|
||||||
DOS_API void dos_qmodelindex_create_qmodelindex(void** vptr, void* index);
|
DOS_API void dos_qmodelindex_create_qmodelindex(void **vptr, void *index);
|
||||||
DOS_API void dos_qmodelindex_delete(void* vptr);
|
DOS_API void dos_qmodelindex_delete(void *vptr);
|
||||||
DOS_API void dos_qmodelindex_row(void* vptr, int* row);
|
DOS_API void dos_qmodelindex_row(void *vptr, int *row);
|
||||||
DOS_API void dos_qmodelindex_column(void* vptr, int* column);
|
DOS_API void dos_qmodelindex_column(void *vptr, int *column);
|
||||||
DOS_API void dos_qmodelindex_isValid(void* vptr, bool* isValid);
|
DOS_API void dos_qmodelindex_isValid(void *vptr, bool *isValid);
|
||||||
DOS_API void dos_qmodelindex_data(void* vptr, int role, void* data);
|
DOS_API void dos_qmodelindex_data(void *vptr, int role, void *data);
|
||||||
DOS_API void dos_qmodelindex_parent(void* vptr, void* parent);
|
DOS_API void dos_qmodelindex_parent(void *vptr, void *parent);
|
||||||
DOS_API void dos_qmodelindex_child(void* vptr, int row, int column, void* child);
|
DOS_API void dos_qmodelindex_child(void *vptr, int row, int column, void *child);
|
||||||
DOS_API void dos_qmodelindex_sibling(void* vptr, int row, int column, void* sibling);
|
DOS_API void dos_qmodelindex_sibling(void *vptr, int row, int column, void *sibling);
|
||||||
DOS_API void dos_qmodelindex_assign(void* l, void* r);
|
DOS_API void dos_qmodelindex_assign(void *l, void *r);
|
||||||
|
|
||||||
// QHash<int, QByteArray>
|
// QHash<int, QByteArray>
|
||||||
DOS_API void dos_qhash_int_qbytearray_create(QHashIntQByteArrayVoidPtr* vptr);
|
DOS_API void dos_qhash_int_qbytearray_create(QHashIntQByteArrayVoidPtr *vptr);
|
||||||
DOS_API void dos_qhash_int_qbytearray_delete(QHashIntQByteArrayVoidPtr vptr);
|
DOS_API void dos_qhash_int_qbytearray_delete(QHashIntQByteArrayVoidPtr vptr);
|
||||||
DOS_API void dos_qhash_int_qbytearray_insert(QHashIntQByteArrayVoidPtr vptr, int key, const char* value);
|
DOS_API void dos_qhash_int_qbytearray_insert(QHashIntQByteArrayVoidPtr vptr, int key, const char *value);
|
||||||
DOS_API void dos_qhash_int_qbytearray_value(QHashIntQByteArrayVoidPtr vptr, int key, char** result);
|
DOS_API void dos_qhash_int_qbytearray_value(QHashIntQByteArrayVoidPtr vptr, int key, char **result);
|
||||||
|
|
||||||
// QResource
|
// QResource
|
||||||
DOS_API void dos_qresource_register(const char* filename);
|
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);
|
DOS_API void dos_qurl_to_string(void *vptr, char **result);
|
||||||
|
|
||||||
// QDeclarative
|
// QDeclarative
|
||||||
DOS_API void dos_qdeclarative_qmlregistertype(const QmlRegisterType* qmlRegisterType, int* result);
|
DOS_API void dos_qdeclarative_qmlregistertype(const QmlRegisterType *qmlRegisterType, int *result);
|
||||||
DOS_API void dos_qdeclarative_qmlregistersingletontype(const QmlRegisterType* qmlRegisterType, int* result);
|
DOS_API void dos_qdeclarative_qmlregistersingletontype(const QmlRegisterType *qmlRegisterType, int *result);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
@ -7,29 +7,28 @@ extern "C"
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Raw data types
|
// Raw data types
|
||||||
typedef void* QVariantVoidPtr;
|
typedef void *QVariantVoidPtr;
|
||||||
typedef void* QModelIndexVoidPtr;
|
typedef void *QModelIndexVoidPtr;
|
||||||
typedef void* QAbstractListModelVoidPtr;
|
typedef void *QAbstractListModelVoidPtr;
|
||||||
typedef void* QQmlApplicationEngineVoidPtr;
|
typedef void *QQmlApplicationEngineVoidPtr;
|
||||||
typedef void* QQuickViewVoidPtr;
|
typedef void *QQuickViewVoidPtr;
|
||||||
typedef void* QQmlContextVoidPtr;
|
typedef void *QQmlContextVoidPtr;
|
||||||
typedef void* QHashIntQByteArrayVoidPtr;
|
typedef void *QHashIntQByteArrayVoidPtr;
|
||||||
|
|
||||||
// Raw function types
|
// Raw function types
|
||||||
typedef void(*Function)(void*);
|
typedef void(*Function)(void *);
|
||||||
typedef void(*DObjectCallback)(void*, void*, int, void**);
|
typedef void(*DObjectCallback)(void *, void *, int, void **);
|
||||||
typedef void(*RowCountCallback)(void* model, const void* index, int* result);
|
typedef void(*RowCountCallback)(void *model, const void *index, int *result);
|
||||||
typedef void(*ColumnCountCallback)(void* model, const void* index, int* result);
|
typedef void(*ColumnCountCallback)(void *model, const void *index, int *result);
|
||||||
typedef void(*DataCallback)(void* model, const void* index, int role, QVariantVoidPtr result);
|
typedef void(*DataCallback)(void *model, const void *index, int role, QVariantVoidPtr result);
|
||||||
typedef void(*SetDataCallback) (void* model, const void* index, const void* value, int role, bool* result);
|
typedef void(*SetDataCallback) (void *model, const void *index, const void *value, int role, bool *result);
|
||||||
typedef void(*RoleNamesCallback)(void* model, QHashIntQByteArrayVoidPtr result);
|
typedef void(*RoleNamesCallback)(void *model, QHashIntQByteArrayVoidPtr result);
|
||||||
typedef void(*FlagsCallback) (void* model, const void* index, int* result);
|
typedef void(*FlagsCallback) (void *model, const void *index, int *result);
|
||||||
typedef void(*HeaderDataCallback) (void* model, int section, int orientation, int role, QVariantVoidPtr result);
|
typedef void(*HeaderDataCallback) (void *model, int section, int orientation, int role, QVariantVoidPtr result);
|
||||||
typedef void(*CreateDObject)(int, void**, void**);
|
typedef void(*CreateDObject)(int, void **, void **);
|
||||||
typedef void(*DeleteDObject)(int, void*);
|
typedef void(*DeleteDObject)(int, void *);
|
||||||
|
|
||||||
struct QmlRegisterType
|
struct QmlRegisterType {
|
||||||
{
|
|
||||||
int major;
|
int major;
|
||||||
int minor;
|
int minor;
|
||||||
const char *uri;
|
const char *uri;
|
||||||
@ -39,46 +38,40 @@ struct QmlRegisterType
|
|||||||
DeleteDObject deleteDObject;
|
DeleteDObject deleteDObject;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SignalDefinition
|
struct SignalDefinition {
|
||||||
{
|
const char *name;
|
||||||
const char* name;
|
|
||||||
int parametersCount;
|
int parametersCount;
|
||||||
int* parametersMetaTypes;
|
int *parametersMetaTypes;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SignalDefinitions
|
struct SignalDefinitions {
|
||||||
{
|
|
||||||
int count;
|
int count;
|
||||||
SignalDefinition* definitions;
|
SignalDefinition *definitions;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SlotDefinition
|
struct SlotDefinition {
|
||||||
{
|
const char *name;
|
||||||
const char* name;
|
|
||||||
int returnMetaType;
|
int returnMetaType;
|
||||||
int parametersCount;
|
int parametersCount;
|
||||||
int* parametersMetaTypes;
|
int *parametersMetaTypes;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SlotDefinitions
|
struct SlotDefinitions {
|
||||||
{
|
|
||||||
int count;
|
int count;
|
||||||
SlotDefinition* definitions;
|
SlotDefinition *definitions;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct PropertyDefinition
|
struct PropertyDefinition {
|
||||||
{
|
const char *name;
|
||||||
const char* name;
|
|
||||||
int propertyMetaType;
|
int propertyMetaType;
|
||||||
const char* readSlot;
|
const char *readSlot;
|
||||||
const char* writeSlot;
|
const char *writeSlot;
|
||||||
const char* notifySignal;
|
const char *notifySignal;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct PropertyDefinitions
|
struct PropertyDefinitions {
|
||||||
{
|
|
||||||
int count;
|
int count;
|
||||||
PropertyDefinition* definitions;
|
PropertyDefinition *definitions;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -10,11 +10,9 @@
|
|||||||
#include "DOtherSide/DOtherSideTypes.h"
|
#include "DOtherSide/DOtherSideTypes.h"
|
||||||
#include "DOtherSide/Utils.h"
|
#include "DOtherSide/Utils.h"
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
struct SignalDefinition
|
struct SignalDefinition {
|
||||||
{
|
|
||||||
SignalDefinition(QString n,
|
SignalDefinition(QString n,
|
||||||
std::vector<QMetaType::Type> v)
|
std::vector<QMetaType::Type> v)
|
||||||
: name(std::move(n))
|
: name(std::move(n))
|
||||||
@ -34,8 +32,7 @@ struct SignalDefinition
|
|||||||
std::vector<QMetaType::Type> parameterTypes;
|
std::vector<QMetaType::Type> parameterTypes;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct SlotDefinition
|
struct SlotDefinition {
|
||||||
{
|
|
||||||
SlotDefinition(QString n,
|
SlotDefinition(QString n,
|
||||||
QMetaType::Type t,
|
QMetaType::Type t,
|
||||||
std::vector<QMetaType::Type> v)
|
std::vector<QMetaType::Type> v)
|
||||||
@ -57,8 +54,7 @@ struct SlotDefinition
|
|||||||
std::vector<QMetaType::Type> parameterTypes;
|
std::vector<QMetaType::Type> parameterTypes;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct PropertyDefinition
|
struct PropertyDefinition {
|
||||||
{
|
|
||||||
PropertyDefinition(QString n,
|
PropertyDefinition(QString n,
|
||||||
QMetaType::Type t,
|
QMetaType::Type t,
|
||||||
QString r,
|
QString r,
|
||||||
@ -90,9 +86,9 @@ using SignalDefinitions = std::vector<SignalDefinition>;
|
|||||||
using SlotDefinitions = std::vector<SlotDefinition>;
|
using SlotDefinitions = std::vector<SlotDefinition>;
|
||||||
using PropertyDefinitions = std::vector<PropertyDefinition>;
|
using PropertyDefinitions = std::vector<PropertyDefinition>;
|
||||||
|
|
||||||
SignalDefinitions toVector(const ::SignalDefinitions& cType);
|
SignalDefinitions toVector(const ::SignalDefinitions &cType);
|
||||||
SlotDefinitions toVector(const ::SlotDefinitions& cType);
|
SlotDefinitions toVector(const ::SlotDefinitions &cType);
|
||||||
PropertyDefinitions toVector(const ::PropertyDefinitions& cType);
|
PropertyDefinitions toVector(const ::PropertyDefinitions &cType);
|
||||||
|
|
||||||
class DosIQMetaObjectHolder;
|
class DosIQMetaObjectHolder;
|
||||||
class DosIQMetaObject;
|
class DosIQMetaObject;
|
||||||
@ -101,31 +97,39 @@ class DosQMetaObject;
|
|||||||
|
|
||||||
|
|
||||||
using OnMetaObject = std::function<DosIQMetaObjectHolder*()>;
|
using OnMetaObject = std::function<DosIQMetaObjectHolder*()>;
|
||||||
using OnSlotExecuted = std::function<QVariant(const QString&, const std::vector<QVariant>&)>;
|
using OnSlotExecuted = std::function<QVariant(const QString &, const std::vector<QVariant>&)>;
|
||||||
|
|
||||||
class SafeQMetaObjectPtr
|
class SafeQMetaObjectPtr
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
SafeQMetaObjectPtr(QMetaObject* ptr)
|
SafeQMetaObjectPtr(QMetaObject *ptr)
|
||||||
: m_d(ptr, ::free)
|
: m_d(ptr, ::free)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
SafeQMetaObjectPtr(SafeQMetaObjectPtr&&) = delete;
|
SafeQMetaObjectPtr(SafeQMetaObjectPtr &&) = delete;
|
||||||
SafeQMetaObjectPtr(const SafeQMetaObjectPtr&) = delete;
|
SafeQMetaObjectPtr(const SafeQMetaObjectPtr &) = delete;
|
||||||
SafeQMetaObjectPtr& operator=(const SafeQMetaObjectPtr&) = delete;
|
SafeQMetaObjectPtr &operator=(const SafeQMetaObjectPtr &) = delete;
|
||||||
|
|
||||||
operator bool() const Q_DECL_NOEXCEPT { return m_d != nullptr; }
|
operator bool() const Q_DECL_NOEXCEPT
|
||||||
operator const QMetaObject*() const Q_DECL_NOEXCEPT { return m_d.get(); }
|
{
|
||||||
const QMetaObject* operator->() const Q_DECL_NOEXCEPT { return m_d.get(); }
|
return m_d != nullptr;
|
||||||
void reset(QMetaObject* other) Q_DECL_NOEXCEPT { m_d.reset(other); }
|
}
|
||||||
|
operator const QMetaObject *() const Q_DECL_NOEXCEPT
|
||||||
|
{
|
||||||
|
return m_d.get();
|
||||||
|
}
|
||||||
|
const QMetaObject *operator->() const Q_DECL_NOEXCEPT
|
||||||
|
{
|
||||||
|
return m_d.get();
|
||||||
|
}
|
||||||
|
void reset(QMetaObject *other) Q_DECL_NOEXCEPT { m_d.reset(other); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::unique_ptr<QMetaObject, void(*)(void*)> m_d;
|
std::unique_ptr<QMetaObject, void(*)(void *)> m_d;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
struct QmlRegisterType
|
struct QmlRegisterType {
|
||||||
{
|
|
||||||
int major;
|
int major;
|
||||||
int minor;
|
int minor;
|
||||||
std::string uri;
|
std::string uri;
|
||||||
|
@ -7,14 +7,13 @@
|
|||||||
#include "DOtherSide/DosIQObjectImpl.h"
|
#include "DOtherSide/DosIQObjectImpl.h"
|
||||||
#include "DOtherSide/OnSlotExecutedHandler.h"
|
#include "DOtherSide/OnSlotExecutedHandler.h"
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
class DosQAbstractListModel : public QAbstractListModel, public DosIQObjectImpl
|
class DosQAbstractListModel : public QAbstractListModel, public DosIQObjectImpl
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/// Constructor
|
/// Constructor
|
||||||
DosQAbstractListModel(void* modelObject,
|
DosQAbstractListModel(void *modelObject,
|
||||||
DosIQMetaObjectPtr metaObject,
|
DosIQMetaObjectPtr metaObject,
|
||||||
OnSlotExecuted onSlotExecuted,
|
OnSlotExecuted onSlotExecuted,
|
||||||
RowCountCallback rowCountCallback,
|
RowCountCallback rowCountCallback,
|
||||||
@ -35,37 +34,37 @@ public:
|
|||||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||||
|
|
||||||
/// Return the model's row count
|
/// Return the model's row count
|
||||||
int rowCount(const QModelIndex& parent = QModelIndex()) const override;
|
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
|
|
||||||
/// Return the model's column count
|
/// Return the model's column count
|
||||||
int columnCount(const QModelIndex& parent = QModelIndex()) const override;
|
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||||
|
|
||||||
/// Return the QVariant at the given index
|
/// Return the QVariant at the given index
|
||||||
QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override;
|
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
||||||
|
|
||||||
/// Sets the QVariant value at the given index and role
|
/// Sets the QVariant value at the given index and role
|
||||||
bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override;
|
bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
|
||||||
|
|
||||||
/// Return the item flags for the given index
|
/// Return the item flags for the given index
|
||||||
Qt::ItemFlags flags(const QModelIndex& index) const override;
|
Qt::ItemFlags flags(const QModelIndex &index) const override;
|
||||||
|
|
||||||
/// Return the data for the given role and section in the header with the specified orientation
|
/// Return the data for the given role and section in the header with the specified orientation
|
||||||
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
|
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
|
||||||
|
|
||||||
/// Return the dModelPointer
|
/// Return the dModelPointer
|
||||||
void* modelObject();
|
void *modelObject();
|
||||||
|
|
||||||
/// Return the roleNames
|
/// Return the roleNames
|
||||||
QHash<int, QByteArray> roleNames() const override;
|
QHash<int, QByteArray> roleNames() const override;
|
||||||
|
|
||||||
/// Expose beginInsertRows
|
/// Expose beginInsertRows
|
||||||
void publicBeginInsertRows(const QModelIndex& index, int first, int last);
|
void publicBeginInsertRows(const QModelIndex &index, int first, int last);
|
||||||
|
|
||||||
/// Expose endInsertRows
|
/// Expose endInsertRows
|
||||||
void publicEndInsertRows();
|
void publicEndInsertRows();
|
||||||
|
|
||||||
/// Expose beginRemoveRows
|
/// Expose beginRemoveRows
|
||||||
void publicBeginRemoveRows(const QModelIndex& index, int first, int last);
|
void publicBeginRemoveRows(const QModelIndex &index, int first, int last);
|
||||||
|
|
||||||
/// Expose endInsertRows
|
/// Expose endInsertRows
|
||||||
void publicEndRemoveRows();
|
void publicEndRemoveRows();
|
||||||
@ -77,13 +76,13 @@ public:
|
|||||||
void publicEndResetModel();
|
void publicEndResetModel();
|
||||||
|
|
||||||
/// Expose dataChanged
|
/// Expose dataChanged
|
||||||
void publicDataChanged(const QModelIndex& topLeft,
|
void publicDataChanged(const QModelIndex &topLeft,
|
||||||
const QModelIndex& bottomRight,
|
const QModelIndex &bottomRight,
|
||||||
const QVector<int>& roles = QVector<int>());
|
const QVector<int> &roles = QVector<int>());
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::unique_ptr<DosIQObjectImpl> m_impl;
|
std::unique_ptr<DosIQObjectImpl> m_impl;
|
||||||
void* m_modelObject;
|
void *m_modelObject;
|
||||||
RowCountCallback m_rowCountCallback;
|
RowCountCallback m_rowCountCallback;
|
||||||
ColumnCountCallback m_columnCountCallback;
|
ColumnCountCallback m_columnCountCallback;
|
||||||
DataCallback m_dataCallback;
|
DataCallback m_dataCallback;
|
||||||
|
@ -7,8 +7,7 @@
|
|||||||
#include "DOtherSideTypesCpp.h"
|
#include "DOtherSideTypesCpp.h"
|
||||||
#include "DOtherSide/DosIQObjectImpl.h"
|
#include "DOtherSide/DosIQObjectImpl.h"
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
/// This class model a QObject
|
/// This class model a QObject
|
||||||
class DosQObject : public QObject, public DosIQObjectImpl
|
class DosQObject : public QObject, public DosIQObjectImpl
|
||||||
@ -19,10 +18,10 @@ public:
|
|||||||
OnSlotExecuted onSlotExecuted);
|
OnSlotExecuted onSlotExecuted);
|
||||||
|
|
||||||
/// Emit a signal
|
/// Emit a signal
|
||||||
bool emitSignal(const QString& name, const std::vector<QVariant>& arguments) override;
|
bool emitSignal(const QString &name, const std::vector<QVariant> &arguments) override;
|
||||||
|
|
||||||
/// Return the metaObject
|
/// Return the metaObject
|
||||||
const QMetaObject* metaObject() const override;
|
const QMetaObject *metaObject() const override;
|
||||||
|
|
||||||
/// The qt_metacall
|
/// The qt_metacall
|
||||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||||
|
@ -10,8 +10,7 @@
|
|||||||
#include "DOtherSide/DosQObject.h"
|
#include "DOtherSide/DosQObject.h"
|
||||||
#include "DOtherSide/DOtherSideTypesCpp.h"
|
#include "DOtherSide/DOtherSideTypesCpp.h"
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
/// This class implement the interface IDosQObject
|
/// This class implement the interface IDosQObject
|
||||||
/// and it's injected in DosQObject
|
/// and it's injected in DosQObject
|
||||||
@ -21,28 +20,28 @@ public:
|
|||||||
using ParentMetaCall = std::function<int(QMetaObject::Call, int, void **)>;
|
using ParentMetaCall = std::function<int(QMetaObject::Call, int, void **)>;
|
||||||
|
|
||||||
/// Constructor
|
/// Constructor
|
||||||
DosQObjectImpl(QObject* parent,
|
DosQObjectImpl(QObject *parent,
|
||||||
ParentMetaCall parentMetaCall,
|
ParentMetaCall parentMetaCall,
|
||||||
std::shared_ptr<const DosIQMetaObject> metaObject,
|
std::shared_ptr<const DosIQMetaObject> metaObject,
|
||||||
OnSlotExecuted onSlotExecuted);
|
OnSlotExecuted onSlotExecuted);
|
||||||
|
|
||||||
|
|
||||||
/// @see IDosQObject::emitSignal
|
/// @see IDosQObject::emitSignal
|
||||||
bool emitSignal(const QString& name, const std::vector<QVariant>& arguments) override;
|
bool emitSignal(const QString &name, const std::vector<QVariant> &arguments) override;
|
||||||
|
|
||||||
/// @see IDosQObject::metaObject()
|
/// @see IDosQObject::metaObject()
|
||||||
const QMetaObject* metaObject() const override;
|
const QMetaObject *metaObject() const override;
|
||||||
|
|
||||||
/// @see IDosQObject::qt_metacall
|
/// @see IDosQObject::qt_metacall
|
||||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool executeSlot(const QMetaMethod& method, void** args, int argumentsOffset = 1);
|
bool executeSlot(const QMetaMethod &method, void **args, int argumentsOffset = 1);
|
||||||
bool executeSlot(int index, void** args);
|
bool executeSlot(int index, void **args);
|
||||||
bool readProperty(int index, void** args);
|
bool readProperty(int index, void **args);
|
||||||
bool writeProperty(int index, void** args);
|
bool writeProperty(int index, void **args);
|
||||||
|
|
||||||
QObject* m_parent;
|
QObject *m_parent;
|
||||||
const ParentMetaCall m_parentMetaCall;
|
const ParentMetaCall m_parentMetaCall;
|
||||||
const OnSlotExecuted m_onSlotExecuted;
|
const OnSlotExecuted m_onSlotExecuted;
|
||||||
mutable std::shared_ptr<const DosIQMetaObject> m_metaObject;
|
mutable std::shared_ptr<const DosIQMetaObject> m_metaObject;
|
||||||
|
@ -5,6 +5,6 @@
|
|||||||
#include <QtCore/QObject>
|
#include <QtCore/QObject>
|
||||||
|
|
||||||
namespace DOS {
|
namespace DOS {
|
||||||
int dosQmlRegisterType(QmlRegisterType args);
|
int dosQmlRegisterType(QmlRegisterType args);
|
||||||
int dosQmlRegisterSingletonType(QmlRegisterType args);
|
int dosQmlRegisterSingletonType(QmlRegisterType args);
|
||||||
}
|
}
|
||||||
|
@ -7,18 +7,17 @@
|
|||||||
// DOtherSide
|
// DOtherSide
|
||||||
#include "DOtherSide/DOtherSideTypesCpp.h"
|
#include "DOtherSide/DOtherSideTypesCpp.h"
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
class OnSlotExecutedHandler
|
class OnSlotExecutedHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
OnSlotExecutedHandler(void* dObjectPointer, DObjectCallback dObjectCallback);
|
OnSlotExecutedHandler(void *dObjectPointer, DObjectCallback dObjectCallback);
|
||||||
|
|
||||||
QVariant operator()(const QString& name, const std::vector<QVariant>& args);
|
QVariant operator()(const QString &name, const std::vector<QVariant> &args);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void* m_dObjectPointer;
|
void *m_dObjectPointer;
|
||||||
DObjectCallback m_dObjectCallback;
|
DObjectCallback m_dObjectCallback;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -7,29 +7,33 @@
|
|||||||
// Qt
|
// Qt
|
||||||
#include <QtGlobal>
|
#include <QtGlobal>
|
||||||
|
|
||||||
namespace DOS
|
namespace DOS {
|
||||||
{
|
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
struct wrapped_array {
|
struct wrapped_array {
|
||||||
wrapped_array(T* first, T* last) : begin_ {first}, end_ {last} {}
|
wrapped_array(T *first, T *last) : begin_ {first}, end_ {last} {}
|
||||||
wrapped_array(T* first, std::ptrdiff_t size)
|
wrapped_array(T *first, std::ptrdiff_t size)
|
||||||
: wrapped_array {first, first + size} {}
|
: wrapped_array {first, first + size} {}
|
||||||
|
|
||||||
T* begin() const Q_DECL_NOEXCEPT { return begin_; }
|
T *begin() const Q_DECL_NOEXCEPT
|
||||||
T* end() const Q_DECL_NOEXCEPT { return end_; }
|
{
|
||||||
|
return begin_;
|
||||||
|
}
|
||||||
|
T *end() const Q_DECL_NOEXCEPT
|
||||||
|
{
|
||||||
|
return end_;
|
||||||
|
}
|
||||||
|
|
||||||
T* begin_;
|
T *begin_;
|
||||||
T* end_;
|
T *end_;
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
wrapped_array<T> wrap_array(T* first, std::ptrdiff_t size) Q_DECL_NOEXCEPT
|
wrapped_array<T> wrap_array(T *first, std::ptrdiff_t size) Q_DECL_NOEXCEPT
|
||||||
{ return {first, size}; }
|
{ return {first, size}; }
|
||||||
|
|
||||||
template <typename T, typename G>
|
template <typename T, typename G>
|
||||||
std::vector<T> toVector(G* first, std::ptrdiff_t size) Q_DECL_NOEXCEPT
|
std::vector<T> toVector(G *first, std::ptrdiff_t size) Q_DECL_NOEXCEPT {
|
||||||
{
|
|
||||||
const wrapped_array<G> array = wrap_array(first, size);
|
const wrapped_array<G> array = wrap_array(first, size);
|
||||||
std::vector<T> result;
|
std::vector<T> result;
|
||||||
for (auto it = array.begin(); it != array.end(); ++it)
|
for (auto it = array.begin(); it != array.end(); ++it)
|
||||||
@ -38,8 +42,7 @@ std::vector<T> toVector(G* first, std::ptrdiff_t size) Q_DECL_NOEXCEPT
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <typename T, typename K, typename R = typename std::result_of<K(T)>::type>
|
template <typename T, typename K, typename R = typename std::result_of<K(T)>::type>
|
||||||
std::vector<R> toVector(T* first, std::ptrdiff_t size, K f) Q_DECL_NOEXCEPT
|
std::vector<R> toVector(T *first, std::ptrdiff_t size, K f) Q_DECL_NOEXCEPT {
|
||||||
{
|
|
||||||
wrapped_array<T> array = wrap_array<T>(first, size);
|
wrapped_array<T> array = wrap_array<T>(first, size);
|
||||||
std::vector<R> result;
|
std::vector<R> result;
|
||||||
for (auto it = array.begin(); it != array.end(); ++it)
|
for (auto it = array.begin(); it != array.end(); ++it)
|
||||||
|
@ -342,7 +342,7 @@ void dos_qobject_create(void **vptr, void *dObjectPointer, void *metaObject,
|
|||||||
auto dosQObject = new DosQObject(metaObjectHolder->data(),
|
auto dosQObject = new DosQObject(metaObjectHolder->data(),
|
||||||
OnSlotExecutedHandler(dObjectPointer, dObjectCallback));
|
OnSlotExecutedHandler(dObjectPointer, dObjectCallback));
|
||||||
QQmlEngine::setObjectOwnership(dosQObject, QQmlEngine::CppOwnership);
|
QQmlEngine::setObjectOwnership(dosQObject, QQmlEngine::CppOwnership);
|
||||||
*vptr = static_cast<QObject*>(dosQObject);
|
*vptr = static_cast<QObject *>(dosQObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qobject_delete(void *vptr)
|
void dos_qobject_delete(void *vptr)
|
||||||
@ -391,7 +391,7 @@ void dos_qobject_objectName(void *vptr, char **result)
|
|||||||
convert_to_cstring(object->objectName(), result);
|
convert_to_cstring(object->objectName(), result);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qobject_setObjectName(void *vptr, const char* name)
|
void dos_qobject_setObjectName(void *vptr, const char *name)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject *>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
object->setObjectName(QString::fromUtf8(name));
|
object->setObjectName(QString::fromUtf8(name));
|
||||||
@ -403,10 +403,10 @@ void dos_qmodelindex_create(void **vptr)
|
|||||||
*vptr = index;
|
*vptr = index;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qmodelindex_create_qmodelindex(void **vptr, void* other_vptr)
|
void dos_qmodelindex_create_qmodelindex(void **vptr, void *other_vptr)
|
||||||
{
|
{
|
||||||
auto index = new QModelIndex();
|
auto index = new QModelIndex();
|
||||||
auto other = static_cast<QModelIndex*>(other_vptr);
|
auto other = static_cast<QModelIndex *>(other_vptr);
|
||||||
*index = *other;
|
*index = *other;
|
||||||
*vptr = index;
|
*vptr = index;
|
||||||
}
|
}
|
||||||
@ -463,7 +463,7 @@ void dos_qmodelindex_sibling(void *vptr, int row, int column, void *sibling)
|
|||||||
*siblingIndex = index->sibling(row, column);
|
*siblingIndex = index->sibling(row, column);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qmodelindex_assign(void* l, void* r)
|
void dos_qmodelindex_assign(void *l, void *r)
|
||||||
{
|
{
|
||||||
auto li = static_cast<QModelIndex *>(l);
|
auto li = static_cast<QModelIndex *>(l);
|
||||||
auto ri = static_cast<QModelIndex *>(r);
|
auto ri = static_cast<QModelIndex *>(r);
|
||||||
@ -572,27 +572,27 @@ void dos_qabstractlistmodel_create(void **vptr,
|
|||||||
flagsCallback,
|
flagsCallback,
|
||||||
headerDataCallback);
|
headerDataCallback);
|
||||||
QQmlEngine::setObjectOwnership(model, QQmlEngine::CppOwnership);
|
QQmlEngine::setObjectOwnership(model, QQmlEngine::CppOwnership);
|
||||||
*vptr = static_cast<QObject*>(model);
|
*vptr = static_cast<QObject *>(model);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qabstractlistmodel_beginInsertRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
void dos_qabstractlistmodel_beginInsertRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
auto index = static_cast<QModelIndex *>(parentIndex);
|
auto index = static_cast<QModelIndex *>(parentIndex);
|
||||||
model->publicBeginInsertRows(*index, first, last);
|
model->publicBeginInsertRows(*index, first, last);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qabstractlistmodel_endInsertRows(void *vptr)
|
void dos_qabstractlistmodel_endInsertRows(void *vptr)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
model->publicEndInsertRows();
|
model->publicEndInsertRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qabstractlistmodel_beginRemoveRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
void dos_qabstractlistmodel_beginRemoveRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
auto index = static_cast<QModelIndex *>(parentIndex);
|
auto index = static_cast<QModelIndex *>(parentIndex);
|
||||||
model->publicBeginRemoveRows(*index, first, last);
|
model->publicBeginRemoveRows(*index, first, last);
|
||||||
@ -600,22 +600,22 @@ void dos_qabstractlistmodel_beginRemoveRows(void *vptr, QModelIndexVoidPtr paren
|
|||||||
|
|
||||||
void dos_qabstractlistmodel_endRemoveRows(void *vptr)
|
void dos_qabstractlistmodel_endRemoveRows(void *vptr)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
model->publicEndRemoveRows();
|
model->publicEndRemoveRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qabstractlistmodel_beginResetModel(void *vptr)
|
void dos_qabstractlistmodel_beginResetModel(void *vptr)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
model->publicBeginResetModel();
|
model->publicBeginResetModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qabstractlistmodel_endResetModel(void *vptr)
|
void dos_qabstractlistmodel_endResetModel(void *vptr)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
model->publicEndResetModel();
|
model->publicEndResetModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -625,7 +625,7 @@ void dos_qabstractlistmodel_dataChanged(void *vptr,
|
|||||||
int *rolesArrayPtr,
|
int *rolesArrayPtr,
|
||||||
int rolesArrayLength)
|
int rolesArrayLength)
|
||||||
{
|
{
|
||||||
auto object = static_cast<QObject*>(vptr);
|
auto object = static_cast<QObject *>(vptr);
|
||||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||||
auto topLeft = static_cast<QModelIndex *>(topLeftIndex);
|
auto topLeft = static_cast<QModelIndex *>(topLeftIndex);
|
||||||
auto bottomRight = static_cast<QModelIndex *>(bottomRightIndex);
|
auto bottomRight = static_cast<QModelIndex *>(bottomRightIndex);
|
||||||
@ -633,9 +633,9 @@ void dos_qabstractlistmodel_dataChanged(void *vptr,
|
|||||||
model->publicDataChanged(*topLeft, *bottomRight, roles);
|
model->publicDataChanged(*topLeft, *bottomRight, roles);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dos_qdeclarative_qmlregistertype(const ::QmlRegisterType *cArgs, int* result)
|
void dos_qdeclarative_qmlregistertype(const ::QmlRegisterType *cArgs, int *result)
|
||||||
{
|
{
|
||||||
auto holder = static_cast<DosIQMetaObjectHolder*>(cArgs->staticMetaObject);
|
auto holder = static_cast<DosIQMetaObjectHolder *>(cArgs->staticMetaObject);
|
||||||
|
|
||||||
DOS::QmlRegisterType args;
|
DOS::QmlRegisterType args;
|
||||||
args.major = cArgs->major;
|
args.major = cArgs->major;
|
||||||
@ -651,7 +651,7 @@ void dos_qdeclarative_qmlregistertype(const ::QmlRegisterType *cArgs, int* resul
|
|||||||
|
|
||||||
void dos_qdeclarative_qmlregistersingletontype(const ::QmlRegisterType *cArgs, int *result)
|
void dos_qdeclarative_qmlregistersingletontype(const ::QmlRegisterType *cArgs, int *result)
|
||||||
{
|
{
|
||||||
auto holder = static_cast<DosIQMetaObjectHolder*>(cArgs->staticMetaObject);
|
auto holder = static_cast<DosIQMetaObjectHolder *>(cArgs->staticMetaObject);
|
||||||
|
|
||||||
DOS::QmlRegisterType args;
|
DOS::QmlRegisterType args;
|
||||||
args.major = cArgs->major;
|
args.major = cArgs->major;
|
||||||
|
@ -16,45 +16,45 @@ public:
|
|||||||
DosQObjectWrapper(QObject *parent = nullptr);
|
DosQObjectWrapper(QObject *parent = nullptr);
|
||||||
~DosQObjectWrapper();
|
~DosQObjectWrapper();
|
||||||
|
|
||||||
const QMetaObject* metaObject() const override;
|
const QMetaObject *metaObject() const override;
|
||||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||||
|
|
||||||
static const QmlRegisterType& qmlRegisterType();
|
static const QmlRegisterType &qmlRegisterType();
|
||||||
static void setQmlRegisterType(QmlRegisterType data);
|
static void setQmlRegisterType(QmlRegisterType data);
|
||||||
static void setStaticMetaObject(const QMetaObject& metaObject);
|
static void setStaticMetaObject(const QMetaObject &metaObject);
|
||||||
static void setId(int id);
|
static void setId(int id);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void* m_dObject;
|
void *m_dObject;
|
||||||
DosQObject* m_impl;
|
DosQObject *m_impl;
|
||||||
static int m_id;
|
static int m_id;
|
||||||
static QmlRegisterType m_data;
|
static QmlRegisterType m_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
const QMetaObject DosQObjectWrapper<N,M>::staticMetaObject = QObject::staticMetaObject;
|
const QMetaObject DosQObjectWrapper<N, M>::staticMetaObject = QObject::staticMetaObject;
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
QmlRegisterType DosQObjectWrapper<N,M>::m_data;
|
QmlRegisterType DosQObjectWrapper<N, M>::m_data;
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
int DosQObjectWrapper<N,M>::m_id = -1;
|
int DosQObjectWrapper<N, M>::m_id = -1;
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
DosQObjectWrapper<N,M>::DosQObjectWrapper(QObject *parent)
|
DosQObjectWrapper<N, M>::DosQObjectWrapper(QObject *parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
, m_dObject(nullptr)
|
, m_dObject(nullptr)
|
||||||
, m_impl(nullptr)
|
, m_impl(nullptr)
|
||||||
{
|
{
|
||||||
void* impl = nullptr;
|
void *impl = nullptr;
|
||||||
m_data.createDObject(m_id, &m_dObject, &impl);
|
m_data.createDObject(m_id, &m_dObject, &impl);
|
||||||
m_impl = static_cast<DosQObject*>(impl);
|
m_impl = static_cast<DosQObject *>(impl);
|
||||||
Q_ASSERT(m_dObject);
|
Q_ASSERT(m_dObject);
|
||||||
Q_ASSERT(m_impl);
|
Q_ASSERT(m_impl);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
DosQObjectWrapper<N,M>::~DosQObjectWrapper()
|
DosQObjectWrapper<N, M>::~DosQObjectWrapper()
|
||||||
{
|
{
|
||||||
m_data.deleteDObject(m_id, m_dObject);
|
m_data.deleteDObject(m_id, m_dObject);
|
||||||
m_dObject = nullptr;
|
m_dObject = nullptr;
|
||||||
@ -62,39 +62,39 @@ DosQObjectWrapper<N,M>::~DosQObjectWrapper()
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
const QMetaObject *DosQObjectWrapper<N,M>::metaObject() const
|
const QMetaObject *DosQObjectWrapper<N, M>::metaObject() const
|
||||||
{
|
{
|
||||||
Q_ASSERT(m_impl);
|
Q_ASSERT(m_impl);
|
||||||
return m_impl->metaObject();
|
return m_impl->metaObject();
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
int DosQObjectWrapper<N,M>::qt_metacall(QMetaObject::Call call, int index, void **args)
|
int DosQObjectWrapper<N, M>::qt_metacall(QMetaObject::Call call, int index, void **args)
|
||||||
{
|
{
|
||||||
Q_ASSERT(m_impl);
|
Q_ASSERT(m_impl);
|
||||||
return m_impl->qt_metacall(call, index, args);
|
return m_impl->qt_metacall(call, index, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
void DosQObjectWrapper<N,M>::setQmlRegisterType(QmlRegisterType data)
|
void DosQObjectWrapper<N, M>::setQmlRegisterType(QmlRegisterType data)
|
||||||
{
|
{
|
||||||
m_data = std::move(data);
|
m_data = std::move(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
void DosQObjectWrapper<N,M>::setStaticMetaObject(const QMetaObject &metaObject)
|
void DosQObjectWrapper<N, M>::setStaticMetaObject(const QMetaObject &metaObject)
|
||||||
{
|
{
|
||||||
*(const_cast<QMetaObject*>(&staticMetaObject)) = metaObject;
|
*(const_cast<QMetaObject *>(&staticMetaObject)) = metaObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
void DosQObjectWrapper<N,M>::setId(int id)
|
void DosQObjectWrapper<N, M>::setId(int id)
|
||||||
{
|
{
|
||||||
m_id = id;
|
m_id = id;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int N, int M>
|
template<int N, int M>
|
||||||
const QmlRegisterType& DosQObjectWrapper<N,M>::qmlRegisterType()
|
const QmlRegisterType &DosQObjectWrapper<N, M>::qmlRegisterType()
|
||||||
{
|
{
|
||||||
return m_data;
|
return m_data;
|
||||||
}
|
}
|
||||||
@ -106,7 +106,7 @@ template<int N>
|
|||||||
int dosQmlRegisterType(QmlRegisterType args)
|
int dosQmlRegisterType(QmlRegisterType args)
|
||||||
{
|
{
|
||||||
RegisterTypeQObject<N>::setQmlRegisterType(std::move(args));
|
RegisterTypeQObject<N>::setQmlRegisterType(std::move(args));
|
||||||
const QmlRegisterType& type = RegisterTypeQObject<N>::qmlRegisterType();
|
const QmlRegisterType &type = RegisterTypeQObject<N>::qmlRegisterType();
|
||||||
RegisterTypeQObject<N>::setStaticMetaObject(*(type.staticMetaObject->metaObject()));
|
RegisterTypeQObject<N>::setStaticMetaObject(*(type.staticMetaObject->metaObject()));
|
||||||
int result = qmlRegisterType<RegisterTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str());
|
int result = qmlRegisterType<RegisterTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str());
|
||||||
RegisterTypeQObject<N>::setId(result);
|
RegisterTypeQObject<N>::setId(result);
|
||||||
@ -114,8 +114,7 @@ int dosQmlRegisterType(QmlRegisterType args)
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<int N>
|
template<int N>
|
||||||
struct DosQmlRegisterHelper
|
struct DosQmlRegisterHelper {
|
||||||
{
|
|
||||||
static int Register(int i, QmlRegisterType args)
|
static int Register(int i, QmlRegisterType args)
|
||||||
{
|
{
|
||||||
if (i > N)
|
if (i > N)
|
||||||
@ -123,13 +122,12 @@ struct DosQmlRegisterHelper
|
|||||||
else if (i == N)
|
else if (i == N)
|
||||||
return dosQmlRegisterType<N>(std::move(args));
|
return dosQmlRegisterType<N>(std::move(args));
|
||||||
else
|
else
|
||||||
return DosQmlRegisterHelper<N-1>::Register(i, std::move(args));
|
return DosQmlRegisterHelper < N - 1 >::Register(i, std::move(args));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct DosQmlRegisterHelper<0>
|
struct DosQmlRegisterHelper<0> {
|
||||||
{
|
|
||||||
static int Register(int i, QmlRegisterType args)
|
static int Register(int i, QmlRegisterType args)
|
||||||
{
|
{
|
||||||
return i == 0 ? dosQmlRegisterType<0>(std::move(args)) : -1;
|
return i == 0 ? dosQmlRegisterType<0>(std::move(args)) : -1;
|
||||||
@ -154,11 +152,11 @@ QObject *singletontype_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
|
|||||||
template<int N>
|
template<int N>
|
||||||
int dosQmlRegisterSingletonType(QmlRegisterType args)
|
int dosQmlRegisterSingletonType(QmlRegisterType args)
|
||||||
{
|
{
|
||||||
using Func = QObject*(*)(QQmlEngine*, QJSEngine*);
|
using Func = QObject * (*)(QQmlEngine *, QJSEngine *);
|
||||||
Func f = singletontype_provider<N>;
|
Func f = singletontype_provider<N>;
|
||||||
|
|
||||||
RegisterSingletonTypeQObject<N>::setQmlRegisterType(std::move(args));
|
RegisterSingletonTypeQObject<N>::setQmlRegisterType(std::move(args));
|
||||||
const QmlRegisterType& type = RegisterSingletonTypeQObject<N>::qmlRegisterType();
|
const QmlRegisterType &type = RegisterSingletonTypeQObject<N>::qmlRegisterType();
|
||||||
RegisterSingletonTypeQObject<N>::setStaticMetaObject(*(type.staticMetaObject->metaObject()));
|
RegisterSingletonTypeQObject<N>::setStaticMetaObject(*(type.staticMetaObject->metaObject()));
|
||||||
int result = qmlRegisterSingletonType<RegisterSingletonTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str(), f);
|
int result = qmlRegisterSingletonType<RegisterSingletonTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str(), f);
|
||||||
RegisterSingletonTypeQObject<N>::setId(result);
|
RegisterSingletonTypeQObject<N>::setId(result);
|
||||||
@ -166,8 +164,7 @@ int dosQmlRegisterSingletonType(QmlRegisterType args)
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<int N>
|
template<int N>
|
||||||
struct DosQmlRegisterSingletonHelper
|
struct DosQmlRegisterSingletonHelper {
|
||||||
{
|
|
||||||
static int Register(int i, QmlRegisterType args)
|
static int Register(int i, QmlRegisterType args)
|
||||||
{
|
{
|
||||||
if (i > N)
|
if (i > N)
|
||||||
@ -175,13 +172,12 @@ struct DosQmlRegisterSingletonHelper
|
|||||||
else if (i == N)
|
else if (i == N)
|
||||||
return dosQmlRegisterSingletonType<N>(std::move(args));
|
return dosQmlRegisterSingletonType<N>(std::move(args));
|
||||||
else
|
else
|
||||||
return DosQmlRegisterSingletonHelper<N-1>::Register(i, std::move(args));
|
return DosQmlRegisterSingletonHelper < N - 1 >::Register(i, std::move(args));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct DosQmlRegisterSingletonHelper<0>
|
struct DosQmlRegisterSingletonHelper<0> {
|
||||||
{
|
|
||||||
static int Register(int i, QmlRegisterType args)
|
static int Register(int i, QmlRegisterType args)
|
||||||
{
|
{
|
||||||
return i == 0 ? dosQmlRegisterSingletonType<0>(std::move(args)) : -1;
|
return i == 0 ? dosQmlRegisterSingletonType<0>(std::move(args)) : -1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user