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
|
||||
|
||||
// QCoreApplication
|
||||
DOS_API void dos_qcoreapplication_application_dir_path(char** result);
|
||||
DOS_API void dos_qcoreapplication_application_dir_path(char **result);
|
||||
|
||||
// QGuiApplication
|
||||
DOS_API void dos_qguiapplication_create();
|
||||
@ -30,70 +30,70 @@ DOS_API void dos_qapplication_quit();
|
||||
DOS_API void dos_qapplication_delete();
|
||||
|
||||
// QQmlApplicationEngine
|
||||
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_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_delete(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_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_delete(void *vptr);
|
||||
|
||||
// QQuickView
|
||||
DOS_API void dos_qquickview_create(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_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_resize_mode(void* vptr, int resizeMode);
|
||||
DOS_API void dos_qquickview_delete(void* vptr);
|
||||
DOS_API void dos_qquickview_rootContext(void* vptr, void** result);
|
||||
DOS_API void dos_qquickview_create(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_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_resize_mode(void *vptr, int resizeMode);
|
||||
DOS_API void dos_qquickview_delete(void *vptr);
|
||||
DOS_API void dos_qquickview_rootContext(void *vptr, void **result);
|
||||
|
||||
// QQmlContext
|
||||
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_baseUrl(void *vptr, char **result);
|
||||
DOS_API void dos_qqmlcontext_setcontextproperty(void *vptr, const char *name, void *value);
|
||||
|
||||
// CharArray
|
||||
DOS_API void dos_chararray_delete(char* ptr);
|
||||
DOS_API void dos_chararray_delete(char *ptr);
|
||||
|
||||
// QVariant
|
||||
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_bool(void** vptr, bool 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_qvariant(void** vptr, void* 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_toInt(void* vptr, int* result);
|
||||
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_setBool(void* vptr, bool value);
|
||||
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_toDouble(void* vptr, double* result);
|
||||
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_setString(void* vptr, const char* 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_isnull(void* vptr, bool* result);
|
||||
DOS_API void dos_qvariant_delete(void* vptr);
|
||||
DOS_API void dos_qvariant_assign(void* vptr, void* other);
|
||||
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_bool(void **vptr, bool 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_qvariant(void **vptr, void *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_toInt(void *vptr, int *result);
|
||||
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_setBool(void *vptr, bool value);
|
||||
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_toDouble(void *vptr, double *result);
|
||||
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_setString(void *vptr, const char *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_isnull(void *vptr, bool *result);
|
||||
DOS_API void dos_qvariant_delete(void *vptr);
|
||||
DOS_API void dos_qvariant_assign(void *vptr, void *other);
|
||||
|
||||
// QMetaObject
|
||||
DOS_API void dos_qmetaobject_create(void** vptr,
|
||||
DOS_API void dos_qmetaobject_create(void **vptr,
|
||||
void *superClassMetaObject,
|
||||
const char *className,
|
||||
const SignalDefinitions *signalDefinitions,
|
||||
const SlotDefinitions *slotDefinitions,
|
||||
const PropertyDefinitions *propertyDefinitions);
|
||||
DOS_API void dos_qmetaobject_delete(void* vptr);
|
||||
DOS_API void dos_qmetaobject_delete(void *vptr);
|
||||
|
||||
// QAbstractListModel
|
||||
DOS_API void dos_qabstractlistmodel_qmetaobject(void** vptr);
|
||||
DOS_API void dos_qabstractlistmodel_create(void** vptr,
|
||||
void* callbackObject,
|
||||
void* metaObject,
|
||||
DOS_API void dos_qabstractlistmodel_qmetaobject(void **vptr);
|
||||
DOS_API void dos_qabstractlistmodel_create(void **vptr,
|
||||
void *callbackObject,
|
||||
void *metaObject,
|
||||
DObjectCallback dObjectCallback,
|
||||
RowCountCallback rowCountCallback,
|
||||
ColumnCountCallback columnCountCallback,
|
||||
@ -102,68 +102,68 @@ DOS_API void dos_qabstractlistmodel_create(void** vptr,
|
||||
RoleNamesCallback roleNamesCallback,
|
||||
FlagsCallback flagsCallback,
|
||||
HeaderDataCallback headerDataCallback);
|
||||
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_beginRemoveRows(void* vptr, void* parent, int first, int last);
|
||||
DOS_API void dos_qabstractlistmodel_endRemoveRows(void* vptr);
|
||||
DOS_API void dos_qabstractlistmodel_beginResetModel(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_beginInsertRows(void *vptr, void *parent, int first, int last);
|
||||
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_endRemoveRows(void *vptr);
|
||||
DOS_API void dos_qabstractlistmodel_beginResetModel(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);
|
||||
|
||||
// QObject
|
||||
DOS_API void dos_qobject_qmetaobject(void** vptr);
|
||||
DOS_API void dos_qobject_create(void** vptr, void* dObjectPointer,
|
||||
void* metaObject,
|
||||
DOS_API void dos_qobject_qmetaobject(void **vptr);
|
||||
DOS_API void dos_qobject_create(void **vptr, void *dObjectPointer,
|
||||
void *metaObject,
|
||||
DObjectCallback dObjectCallback);
|
||||
DOS_API void dos_qobject_signal_emit(void* vptr,
|
||||
const char* name,
|
||||
DOS_API void dos_qobject_signal_emit(void *vptr,
|
||||
const char *name,
|
||||
int parametersCount,
|
||||
void** parameters);
|
||||
DOS_API void dos_qobject_signal_connect(void* senderVPtr,
|
||||
const char* signal,
|
||||
void* receiverVPtr,
|
||||
const char* method,
|
||||
void **parameters);
|
||||
DOS_API void dos_qobject_signal_connect(void *senderVPtr,
|
||||
const char *signal,
|
||||
void *receiverVPtr,
|
||||
const char *method,
|
||||
int type,
|
||||
bool* result);
|
||||
DOS_API void dos_qobject_signal_disconnect(void* senderVPtr,
|
||||
const char* signal,
|
||||
void* receiverVPtr,
|
||||
const char* method,
|
||||
bool* 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_delete(void* vptr);
|
||||
bool *result);
|
||||
DOS_API void dos_qobject_signal_disconnect(void *senderVPtr,
|
||||
const char *signal,
|
||||
void *receiverVPtr,
|
||||
const char *method,
|
||||
bool *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_delete(void *vptr);
|
||||
|
||||
// QModelIndex
|
||||
DOS_API void dos_qmodelindex_create(void** vptr);
|
||||
DOS_API void dos_qmodelindex_create_qmodelindex(void** vptr, void* index);
|
||||
DOS_API void dos_qmodelindex_delete(void* vptr);
|
||||
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_isValid(void* vptr, bool* isValid);
|
||||
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_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_assign(void* l, void* r);
|
||||
DOS_API void dos_qmodelindex_create(void **vptr);
|
||||
DOS_API void dos_qmodelindex_create_qmodelindex(void **vptr, void *index);
|
||||
DOS_API void dos_qmodelindex_delete(void *vptr);
|
||||
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_isValid(void *vptr, bool *isValid);
|
||||
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_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_assign(void *l, void *r);
|
||||
|
||||
// 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_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_insert(QHashIntQByteArrayVoidPtr vptr, int key, const char *value);
|
||||
DOS_API void dos_qhash_int_qbytearray_value(QHashIntQByteArrayVoidPtr vptr, int key, char **result);
|
||||
|
||||
// QResource
|
||||
DOS_API void dos_qresource_register(const char* filename);
|
||||
DOS_API void dos_qresource_register(const char *filename);
|
||||
|
||||
// QUrl
|
||||
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_to_string(void* vptr, char** result);
|
||||
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_to_string(void *vptr, char **result);
|
||||
|
||||
// QDeclarative
|
||||
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_qmlregistertype(const QmlRegisterType *qmlRegisterType, int *result);
|
||||
DOS_API void dos_qdeclarative_qmlregistersingletontype(const QmlRegisterType *qmlRegisterType, int *result);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -7,29 +7,28 @@ extern "C"
|
||||
#endif
|
||||
|
||||
// Raw data types
|
||||
typedef void* QVariantVoidPtr;
|
||||
typedef void* QModelIndexVoidPtr;
|
||||
typedef void* QAbstractListModelVoidPtr;
|
||||
typedef void* QQmlApplicationEngineVoidPtr;
|
||||
typedef void* QQuickViewVoidPtr;
|
||||
typedef void* QQmlContextVoidPtr;
|
||||
typedef void* QHashIntQByteArrayVoidPtr;
|
||||
typedef void *QVariantVoidPtr;
|
||||
typedef void *QModelIndexVoidPtr;
|
||||
typedef void *QAbstractListModelVoidPtr;
|
||||
typedef void *QQmlApplicationEngineVoidPtr;
|
||||
typedef void *QQuickViewVoidPtr;
|
||||
typedef void *QQmlContextVoidPtr;
|
||||
typedef void *QHashIntQByteArrayVoidPtr;
|
||||
|
||||
// Raw function types
|
||||
typedef void(*Function)(void*);
|
||||
typedef void(*DObjectCallback)(void*, void*, int, void**);
|
||||
typedef void(*RowCountCallback)(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(*SetDataCallback) (void* model, const void* index, const void* value, int role, bool* result);
|
||||
typedef void(*RoleNamesCallback)(void* model, QHashIntQByteArrayVoidPtr 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(*CreateDObject)(int, void**, void**);
|
||||
typedef void(*DeleteDObject)(int, void*);
|
||||
typedef void(*Function)(void *);
|
||||
typedef void(*DObjectCallback)(void *, void *, int, void **);
|
||||
typedef void(*RowCountCallback)(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(*SetDataCallback) (void *model, const void *index, const void *value, int role, bool *result);
|
||||
typedef void(*RoleNamesCallback)(void *model, QHashIntQByteArrayVoidPtr 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(*CreateDObject)(int, void **, void **);
|
||||
typedef void(*DeleteDObject)(int, void *);
|
||||
|
||||
struct QmlRegisterType
|
||||
{
|
||||
struct QmlRegisterType {
|
||||
int major;
|
||||
int minor;
|
||||
const char *uri;
|
||||
@ -39,46 +38,40 @@ struct QmlRegisterType
|
||||
DeleteDObject deleteDObject;
|
||||
};
|
||||
|
||||
struct SignalDefinition
|
||||
{
|
||||
const char* name;
|
||||
struct SignalDefinition {
|
||||
const char *name;
|
||||
int parametersCount;
|
||||
int* parametersMetaTypes;
|
||||
int *parametersMetaTypes;
|
||||
};
|
||||
|
||||
struct SignalDefinitions
|
||||
{
|
||||
struct SignalDefinitions {
|
||||
int count;
|
||||
SignalDefinition* definitions;
|
||||
SignalDefinition *definitions;
|
||||
};
|
||||
|
||||
struct SlotDefinition
|
||||
{
|
||||
const char* name;
|
||||
struct SlotDefinition {
|
||||
const char *name;
|
||||
int returnMetaType;
|
||||
int parametersCount;
|
||||
int* parametersMetaTypes;
|
||||
int *parametersMetaTypes;
|
||||
};
|
||||
|
||||
struct SlotDefinitions
|
||||
{
|
||||
struct SlotDefinitions {
|
||||
int count;
|
||||
SlotDefinition* definitions;
|
||||
SlotDefinition *definitions;
|
||||
};
|
||||
|
||||
struct PropertyDefinition
|
||||
{
|
||||
const char* name;
|
||||
struct PropertyDefinition {
|
||||
const char *name;
|
||||
int propertyMetaType;
|
||||
const char* readSlot;
|
||||
const char* writeSlot;
|
||||
const char* notifySignal;
|
||||
const char *readSlot;
|
||||
const char *writeSlot;
|
||||
const char *notifySignal;
|
||||
};
|
||||
|
||||
struct PropertyDefinitions
|
||||
{
|
||||
struct PropertyDefinitions {
|
||||
int count;
|
||||
PropertyDefinition* definitions;
|
||||
PropertyDefinition *definitions;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@ -10,11 +10,9 @@
|
||||
#include "DOtherSide/DOtherSideTypes.h"
|
||||
#include "DOtherSide/Utils.h"
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
struct SignalDefinition
|
||||
{
|
||||
struct SignalDefinition {
|
||||
SignalDefinition(QString n,
|
||||
std::vector<QMetaType::Type> v)
|
||||
: name(std::move(n))
|
||||
@ -34,8 +32,7 @@ struct SignalDefinition
|
||||
std::vector<QMetaType::Type> parameterTypes;
|
||||
};
|
||||
|
||||
struct SlotDefinition
|
||||
{
|
||||
struct SlotDefinition {
|
||||
SlotDefinition(QString n,
|
||||
QMetaType::Type t,
|
||||
std::vector<QMetaType::Type> v)
|
||||
@ -57,8 +54,7 @@ struct SlotDefinition
|
||||
std::vector<QMetaType::Type> parameterTypes;
|
||||
};
|
||||
|
||||
struct PropertyDefinition
|
||||
{
|
||||
struct PropertyDefinition {
|
||||
PropertyDefinition(QString n,
|
||||
QMetaType::Type t,
|
||||
QString r,
|
||||
@ -90,9 +86,9 @@ using SignalDefinitions = std::vector<SignalDefinition>;
|
||||
using SlotDefinitions = std::vector<SlotDefinition>;
|
||||
using PropertyDefinitions = std::vector<PropertyDefinition>;
|
||||
|
||||
SignalDefinitions toVector(const ::SignalDefinitions& cType);
|
||||
SlotDefinitions toVector(const ::SlotDefinitions& cType);
|
||||
PropertyDefinitions toVector(const ::PropertyDefinitions& cType);
|
||||
SignalDefinitions toVector(const ::SignalDefinitions &cType);
|
||||
SlotDefinitions toVector(const ::SlotDefinitions &cType);
|
||||
PropertyDefinitions toVector(const ::PropertyDefinitions &cType);
|
||||
|
||||
class DosIQMetaObjectHolder;
|
||||
class DosIQMetaObject;
|
||||
@ -101,31 +97,39 @@ class DosQMetaObject;
|
||||
|
||||
|
||||
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
|
||||
{
|
||||
public:
|
||||
SafeQMetaObjectPtr(QMetaObject* ptr)
|
||||
SafeQMetaObjectPtr(QMetaObject *ptr)
|
||||
: m_d(ptr, ::free)
|
||||
{}
|
||||
|
||||
SafeQMetaObjectPtr(SafeQMetaObjectPtr&&) = delete;
|
||||
SafeQMetaObjectPtr(const SafeQMetaObjectPtr&) = delete;
|
||||
SafeQMetaObjectPtr& operator=(const SafeQMetaObjectPtr&) = delete;
|
||||
SafeQMetaObjectPtr(SafeQMetaObjectPtr &&) = delete;
|
||||
SafeQMetaObjectPtr(const SafeQMetaObjectPtr &) = delete;
|
||||
SafeQMetaObjectPtr &operator=(const SafeQMetaObjectPtr &) = delete;
|
||||
|
||||
operator bool() const Q_DECL_NOEXCEPT { return m_d != nullptr; }
|
||||
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); }
|
||||
operator bool() const Q_DECL_NOEXCEPT
|
||||
{
|
||||
return m_d != nullptr;
|
||||
}
|
||||
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:
|
||||
std::unique_ptr<QMetaObject, void(*)(void*)> m_d;
|
||||
std::unique_ptr<QMetaObject, void(*)(void *)> m_d;
|
||||
};
|
||||
|
||||
|
||||
struct QmlRegisterType
|
||||
{
|
||||
struct QmlRegisterType {
|
||||
int major;
|
||||
int minor;
|
||||
std::string uri;
|
||||
|
@ -7,14 +7,13 @@
|
||||
#include "DOtherSide/DosIQObjectImpl.h"
|
||||
#include "DOtherSide/OnSlotExecutedHandler.h"
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
class DosQAbstractListModel : public QAbstractListModel, public DosIQObjectImpl
|
||||
{
|
||||
public:
|
||||
/// Constructor
|
||||
DosQAbstractListModel(void* modelObject,
|
||||
DosQAbstractListModel(void *modelObject,
|
||||
DosIQMetaObjectPtr metaObject,
|
||||
OnSlotExecuted onSlotExecuted,
|
||||
RowCountCallback rowCountCallback,
|
||||
@ -35,37 +34,37 @@ public:
|
||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||
|
||||
/// 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
|
||||
int columnCount(const QModelIndex& parent = QModelIndex()) const override;
|
||||
int columnCount(const QModelIndex &parent = QModelIndex()) const override;
|
||||
|
||||
/// 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
|
||||
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
|
||||
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
|
||||
QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
|
||||
|
||||
/// Return the dModelPointer
|
||||
void* modelObject();
|
||||
void *modelObject();
|
||||
|
||||
/// Return the roleNames
|
||||
QHash<int, QByteArray> roleNames() const override;
|
||||
|
||||
/// Expose beginInsertRows
|
||||
void publicBeginInsertRows(const QModelIndex& index, int first, int last);
|
||||
void publicBeginInsertRows(const QModelIndex &index, int first, int last);
|
||||
|
||||
/// Expose endInsertRows
|
||||
void publicEndInsertRows();
|
||||
|
||||
/// Expose beginRemoveRows
|
||||
void publicBeginRemoveRows(const QModelIndex& index, int first, int last);
|
||||
void publicBeginRemoveRows(const QModelIndex &index, int first, int last);
|
||||
|
||||
/// Expose endInsertRows
|
||||
void publicEndRemoveRows();
|
||||
@ -77,13 +76,13 @@ public:
|
||||
void publicEndResetModel();
|
||||
|
||||
/// Expose dataChanged
|
||||
void publicDataChanged(const QModelIndex& topLeft,
|
||||
const QModelIndex& bottomRight,
|
||||
const QVector<int>& roles = QVector<int>());
|
||||
void publicDataChanged(const QModelIndex &topLeft,
|
||||
const QModelIndex &bottomRight,
|
||||
const QVector<int> &roles = QVector<int>());
|
||||
|
||||
private:
|
||||
std::unique_ptr<DosIQObjectImpl> m_impl;
|
||||
void* m_modelObject;
|
||||
void *m_modelObject;
|
||||
RowCountCallback m_rowCountCallback;
|
||||
ColumnCountCallback m_columnCountCallback;
|
||||
DataCallback m_dataCallback;
|
||||
|
@ -7,8 +7,7 @@
|
||||
#include "DOtherSideTypesCpp.h"
|
||||
#include "DOtherSide/DosIQObjectImpl.h"
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
/// This class model a QObject
|
||||
class DosQObject : public QObject, public DosIQObjectImpl
|
||||
@ -19,10 +18,10 @@ public:
|
||||
OnSlotExecuted onSlotExecuted);
|
||||
|
||||
/// 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
|
||||
const QMetaObject* metaObject() const override;
|
||||
const QMetaObject *metaObject() const override;
|
||||
|
||||
/// The qt_metacall
|
||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||
|
@ -10,8 +10,7 @@
|
||||
#include "DOtherSide/DosQObject.h"
|
||||
#include "DOtherSide/DOtherSideTypesCpp.h"
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
/// This class implement the interface IDosQObject
|
||||
/// and it's injected in DosQObject
|
||||
@ -21,28 +20,28 @@ public:
|
||||
using ParentMetaCall = std::function<int(QMetaObject::Call, int, void **)>;
|
||||
|
||||
/// Constructor
|
||||
DosQObjectImpl(QObject* parent,
|
||||
DosQObjectImpl(QObject *parent,
|
||||
ParentMetaCall parentMetaCall,
|
||||
std::shared_ptr<const DosIQMetaObject> metaObject,
|
||||
OnSlotExecuted onSlotExecuted);
|
||||
|
||||
|
||||
/// @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()
|
||||
const QMetaObject* metaObject() const override;
|
||||
const QMetaObject *metaObject() const override;
|
||||
|
||||
/// @see IDosQObject::qt_metacall
|
||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||
|
||||
private:
|
||||
bool executeSlot(const QMetaMethod& method, void** args, int argumentsOffset = 1);
|
||||
bool executeSlot(int index, void** args);
|
||||
bool readProperty(int index, void** args);
|
||||
bool writeProperty(int index, void** args);
|
||||
bool executeSlot(const QMetaMethod &method, void **args, int argumentsOffset = 1);
|
||||
bool executeSlot(int index, void **args);
|
||||
bool readProperty(int index, void **args);
|
||||
bool writeProperty(int index, void **args);
|
||||
|
||||
QObject* m_parent;
|
||||
QObject *m_parent;
|
||||
const ParentMetaCall m_parentMetaCall;
|
||||
const OnSlotExecuted m_onSlotExecuted;
|
||||
mutable std::shared_ptr<const DosIQMetaObject> m_metaObject;
|
||||
|
@ -5,6 +5,6 @@
|
||||
#include <QtCore/QObject>
|
||||
|
||||
namespace DOS {
|
||||
int dosQmlRegisterType(QmlRegisterType args);
|
||||
int dosQmlRegisterSingletonType(QmlRegisterType args);
|
||||
int dosQmlRegisterType(QmlRegisterType args);
|
||||
int dosQmlRegisterSingletonType(QmlRegisterType args);
|
||||
}
|
||||
|
@ -7,18 +7,17 @@
|
||||
// DOtherSide
|
||||
#include "DOtherSide/DOtherSideTypesCpp.h"
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
class OnSlotExecutedHandler
|
||||
{
|
||||
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:
|
||||
void* m_dObjectPointer;
|
||||
void *m_dObjectPointer;
|
||||
DObjectCallback m_dObjectCallback;
|
||||
};
|
||||
|
||||
|
@ -7,29 +7,33 @@
|
||||
// Qt
|
||||
#include <QtGlobal>
|
||||
|
||||
namespace DOS
|
||||
{
|
||||
namespace DOS {
|
||||
|
||||
template <typename T>
|
||||
struct wrapped_array {
|
||||
wrapped_array(T* first, T* last) : begin_ {first}, end_ {last} {}
|
||||
wrapped_array(T* first, std::ptrdiff_t size)
|
||||
wrapped_array(T *first, T *last) : begin_ {first}, end_ {last} {}
|
||||
wrapped_array(T *first, std::ptrdiff_t size)
|
||||
: wrapped_array {first, first + size} {}
|
||||
|
||||
T* begin() const Q_DECL_NOEXCEPT { return begin_; }
|
||||
T* end() const Q_DECL_NOEXCEPT { return end_; }
|
||||
T *begin() const Q_DECL_NOEXCEPT
|
||||
{
|
||||
return begin_;
|
||||
}
|
||||
T *end() const Q_DECL_NOEXCEPT
|
||||
{
|
||||
return end_;
|
||||
}
|
||||
|
||||
T* begin_;
|
||||
T* end_;
|
||||
T *begin_;
|
||||
T *end_;
|
||||
};
|
||||
|
||||
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}; }
|
||||
|
||||
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);
|
||||
std::vector<T> result;
|
||||
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>
|
||||
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);
|
||||
std::vector<R> result;
|
||||
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(),
|
||||
OnSlotExecutedHandler(dObjectPointer, dObjectCallback));
|
||||
QQmlEngine::setObjectOwnership(dosQObject, QQmlEngine::CppOwnership);
|
||||
*vptr = static_cast<QObject*>(dosQObject);
|
||||
*vptr = static_cast<QObject *>(dosQObject);
|
||||
}
|
||||
|
||||
void dos_qobject_delete(void *vptr)
|
||||
@ -391,7 +391,7 @@ void dos_qobject_objectName(void *vptr, char **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);
|
||||
object->setObjectName(QString::fromUtf8(name));
|
||||
@ -403,10 +403,10 @@ void dos_qmodelindex_create(void **vptr)
|
||||
*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 other = static_cast<QModelIndex*>(other_vptr);
|
||||
auto other = static_cast<QModelIndex *>(other_vptr);
|
||||
*index = *other;
|
||||
*vptr = index;
|
||||
}
|
||||
@ -463,7 +463,7 @@ void dos_qmodelindex_sibling(void *vptr, int row, int column, void *sibling)
|
||||
*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 ri = static_cast<QModelIndex *>(r);
|
||||
@ -572,27 +572,27 @@ void dos_qabstractlistmodel_create(void **vptr,
|
||||
flagsCallback,
|
||||
headerDataCallback);
|
||||
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)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
auto index = static_cast<QModelIndex *>(parentIndex);
|
||||
model->publicBeginInsertRows(*index, first, last);
|
||||
}
|
||||
|
||||
void dos_qabstractlistmodel_endInsertRows(void *vptr)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
model->publicEndInsertRows();
|
||||
}
|
||||
|
||||
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 index = static_cast<QModelIndex *>(parentIndex);
|
||||
model->publicBeginRemoveRows(*index, first, last);
|
||||
@ -600,22 +600,22 @@ void dos_qabstractlistmodel_beginRemoveRows(void *vptr, QModelIndexVoidPtr paren
|
||||
|
||||
void dos_qabstractlistmodel_endRemoveRows(void *vptr)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
model->publicEndRemoveRows();
|
||||
}
|
||||
|
||||
void dos_qabstractlistmodel_beginResetModel(void *vptr)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
model->publicBeginResetModel();
|
||||
}
|
||||
|
||||
void dos_qabstractlistmodel_endResetModel(void *vptr)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel*>(object);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
model->publicEndResetModel();
|
||||
}
|
||||
|
||||
@ -625,7 +625,7 @@ void dos_qabstractlistmodel_dataChanged(void *vptr,
|
||||
int *rolesArrayPtr,
|
||||
int rolesArrayLength)
|
||||
{
|
||||
auto object = static_cast<QObject*>(vptr);
|
||||
auto object = static_cast<QObject *>(vptr);
|
||||
auto model = dynamic_cast<DosQAbstractListModel *>(object);
|
||||
auto topLeft = static_cast<QModelIndex *>(topLeftIndex);
|
||||
auto bottomRight = static_cast<QModelIndex *>(bottomRightIndex);
|
||||
@ -633,9 +633,9 @@ void dos_qabstractlistmodel_dataChanged(void *vptr,
|
||||
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;
|
||||
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)
|
||||
{
|
||||
auto holder = static_cast<DosIQMetaObjectHolder*>(cArgs->staticMetaObject);
|
||||
auto holder = static_cast<DosIQMetaObjectHolder *>(cArgs->staticMetaObject);
|
||||
|
||||
DOS::QmlRegisterType args;
|
||||
args.major = cArgs->major;
|
||||
|
@ -16,45 +16,45 @@ public:
|
||||
DosQObjectWrapper(QObject *parent = nullptr);
|
||||
~DosQObjectWrapper();
|
||||
|
||||
const QMetaObject* metaObject() const override;
|
||||
const QMetaObject *metaObject() const override;
|
||||
int qt_metacall(QMetaObject::Call, int, void **) override;
|
||||
|
||||
static const QmlRegisterType& qmlRegisterType();
|
||||
static const QmlRegisterType &qmlRegisterType();
|
||||
static void setQmlRegisterType(QmlRegisterType data);
|
||||
static void setStaticMetaObject(const QMetaObject& metaObject);
|
||||
static void setStaticMetaObject(const QMetaObject &metaObject);
|
||||
static void setId(int id);
|
||||
|
||||
private:
|
||||
void* m_dObject;
|
||||
DosQObject* m_impl;
|
||||
void *m_dObject;
|
||||
DosQObject *m_impl;
|
||||
static int m_id;
|
||||
static QmlRegisterType m_data;
|
||||
};
|
||||
|
||||
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>
|
||||
QmlRegisterType DosQObjectWrapper<N,M>::m_data;
|
||||
QmlRegisterType DosQObjectWrapper<N, M>::m_data;
|
||||
|
||||
template<int N, int M>
|
||||
int DosQObjectWrapper<N,M>::m_id = -1;
|
||||
int DosQObjectWrapper<N, M>::m_id = -1;
|
||||
|
||||
template<int N, int M>
|
||||
DosQObjectWrapper<N,M>::DosQObjectWrapper(QObject *parent)
|
||||
DosQObjectWrapper<N, M>::DosQObjectWrapper(QObject *parent)
|
||||
: QObject(parent)
|
||||
, m_dObject(nullptr)
|
||||
, m_impl(nullptr)
|
||||
{
|
||||
void* impl = nullptr;
|
||||
void *impl = nullptr;
|
||||
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_impl);
|
||||
}
|
||||
|
||||
template<int N, int M>
|
||||
DosQObjectWrapper<N,M>::~DosQObjectWrapper()
|
||||
DosQObjectWrapper<N, M>::~DosQObjectWrapper()
|
||||
{
|
||||
m_data.deleteDObject(m_id, m_dObject);
|
||||
m_dObject = nullptr;
|
||||
@ -62,39 +62,39 @@ DosQObjectWrapper<N,M>::~DosQObjectWrapper()
|
||||
}
|
||||
|
||||
template<int N, int M>
|
||||
const QMetaObject *DosQObjectWrapper<N,M>::metaObject() const
|
||||
const QMetaObject *DosQObjectWrapper<N, M>::metaObject() const
|
||||
{
|
||||
Q_ASSERT(m_impl);
|
||||
return m_impl->metaObject();
|
||||
}
|
||||
|
||||
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);
|
||||
return m_impl->qt_metacall(call, index, args);
|
||||
}
|
||||
|
||||
template<int N, int M>
|
||||
void DosQObjectWrapper<N,M>::setQmlRegisterType(QmlRegisterType data)
|
||||
void DosQObjectWrapper<N, M>::setQmlRegisterType(QmlRegisterType data)
|
||||
{
|
||||
m_data = std::move(data);
|
||||
}
|
||||
|
||||
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>
|
||||
void DosQObjectWrapper<N,M>::setId(int id)
|
||||
void DosQObjectWrapper<N, M>::setId(int id)
|
||||
{
|
||||
m_id = id;
|
||||
}
|
||||
|
||||
template<int N, int M>
|
||||
const QmlRegisterType& DosQObjectWrapper<N,M>::qmlRegisterType()
|
||||
const QmlRegisterType &DosQObjectWrapper<N, M>::qmlRegisterType()
|
||||
{
|
||||
return m_data;
|
||||
}
|
||||
@ -106,7 +106,7 @@ template<int N>
|
||||
int dosQmlRegisterType(QmlRegisterType 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()));
|
||||
int result = qmlRegisterType<RegisterTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str());
|
||||
RegisterTypeQObject<N>::setId(result);
|
||||
@ -114,8 +114,7 @@ int dosQmlRegisterType(QmlRegisterType args)
|
||||
}
|
||||
|
||||
template<int N>
|
||||
struct DosQmlRegisterHelper
|
||||
{
|
||||
struct DosQmlRegisterHelper {
|
||||
static int Register(int i, QmlRegisterType args)
|
||||
{
|
||||
if (i > N)
|
||||
@ -123,13 +122,12 @@ struct DosQmlRegisterHelper
|
||||
else if (i == N)
|
||||
return dosQmlRegisterType<N>(std::move(args));
|
||||
else
|
||||
return DosQmlRegisterHelper<N-1>::Register(i, std::move(args));
|
||||
return DosQmlRegisterHelper < N - 1 >::Register(i, std::move(args));
|
||||
}
|
||||
};
|
||||
|
||||
template<>
|
||||
struct DosQmlRegisterHelper<0>
|
||||
{
|
||||
struct DosQmlRegisterHelper<0> {
|
||||
static int Register(int i, QmlRegisterType args)
|
||||
{
|
||||
return i == 0 ? dosQmlRegisterType<0>(std::move(args)) : -1;
|
||||
@ -154,11 +152,11 @@ QObject *singletontype_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
|
||||
template<int N>
|
||||
int dosQmlRegisterSingletonType(QmlRegisterType args)
|
||||
{
|
||||
using Func = QObject*(*)(QQmlEngine*, QJSEngine*);
|
||||
using Func = QObject * (*)(QQmlEngine *, QJSEngine *);
|
||||
Func f = singletontype_provider<N>;
|
||||
|
||||
RegisterSingletonTypeQObject<N>::setQmlRegisterType(std::move(args));
|
||||
const QmlRegisterType& type = RegisterSingletonTypeQObject<N>::qmlRegisterType();
|
||||
const QmlRegisterType &type = RegisterSingletonTypeQObject<N>::qmlRegisterType();
|
||||
RegisterSingletonTypeQObject<N>::setStaticMetaObject(*(type.staticMetaObject->metaObject()));
|
||||
int result = qmlRegisterSingletonType<RegisterSingletonTypeQObject<N>>(type.uri.c_str(), type.major, type.minor, type.qml.c_str(), f);
|
||||
RegisterSingletonTypeQObject<N>::setId(result);
|
||||
@ -166,8 +164,7 @@ int dosQmlRegisterSingletonType(QmlRegisterType args)
|
||||
}
|
||||
|
||||
template<int N>
|
||||
struct DosQmlRegisterSingletonHelper
|
||||
{
|
||||
struct DosQmlRegisterSingletonHelper {
|
||||
static int Register(int i, QmlRegisterType args)
|
||||
{
|
||||
if (i > N)
|
||||
@ -175,13 +172,12 @@ struct DosQmlRegisterSingletonHelper
|
||||
else if (i == N)
|
||||
return dosQmlRegisterSingletonType<N>(std::move(args));
|
||||
else
|
||||
return DosQmlRegisterSingletonHelper<N-1>::Register(i, std::move(args));
|
||||
return DosQmlRegisterSingletonHelper < N - 1 >::Register(i, std::move(args));
|
||||
}
|
||||
};
|
||||
|
||||
template<>
|
||||
struct DosQmlRegisterSingletonHelper<0>
|
||||
{
|
||||
struct DosQmlRegisterSingletonHelper<0> {
|
||||
static int Register(int i, QmlRegisterType args)
|
||||
{
|
||||
return i == 0 ? dosQmlRegisterSingletonType<0>(std::move(args)) : -1;
|
||||
|
Loading…
x
Reference in New Issue
Block a user