2015-11-23 21:33:17 +01:00
|
|
|
#include "DOtherSide/DOtherSide.h"
|
2014-07-19 18:26:08 +02:00
|
|
|
|
2015-02-04 23:02:26 +01:00
|
|
|
#include <iostream>
|
|
|
|
|
2014-07-19 18:26:08 +02:00
|
|
|
#include <QtCore/QDir>
|
|
|
|
#include <QtCore/QDebug>
|
2015-01-18 12:26:51 +01:00
|
|
|
#include <QtCore/QModelIndex>
|
2015-03-11 21:32:45 +01:00
|
|
|
#include <QtCore/QHash>
|
2015-12-06 00:23:25 +01:00
|
|
|
#include <QtCore/QResource>
|
2015-01-31 12:50:14 +01:00
|
|
|
#include <QtGui/QGuiApplication>
|
|
|
|
#include <QtQml/QQmlContext>
|
|
|
|
#include <QtQml/QQmlApplicationEngine>
|
|
|
|
#include <QtQuick/QQuickView>
|
|
|
|
#include <QtWidgets/QApplication>
|
2014-07-19 18:26:08 +02:00
|
|
|
|
2015-12-27 17:58:49 +01:00
|
|
|
#include "DOtherSide/DOtherSideTypesCpp.h"
|
2015-11-23 21:33:17 +01:00
|
|
|
#include "DOtherSide/OnSlotExecutedHandler.h"
|
2016-01-07 12:04:40 +01:00
|
|
|
#include "DOtherSide/DosQMetaObject.h"
|
|
|
|
#include "DOtherSide/DosQObject.h"
|
|
|
|
#include "DOtherSide/DosQObjectImpl.h"
|
2016-01-08 19:31:33 +01:00
|
|
|
#include "DOtherSide/DosQAbstractListModel.h"
|
2016-02-28 10:44:47 +01:00
|
|
|
#include "DOtherSide/DosQDeclarative.h"
|
2016-01-07 12:04:40 +01:00
|
|
|
|
|
|
|
using namespace DOS;
|
2015-12-27 17:58:49 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *convert_to_cstring(const QByteArray &array)
|
|
|
|
{
|
|
|
|
return qstrdup(array.data());
|
|
|
|
}
|
2014-07-19 18:26:08 +02:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *convert_to_cstring(const QString &source)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(source.toUtf8());
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qcoreapplication_application_dir_path()
|
2015-12-05 18:15:01 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(QCoreApplication::applicationDirPath());
|
2015-12-05 18:15:01 +01:00
|
|
|
}
|
|
|
|
|
2014-12-01 21:30:45 +01:00
|
|
|
void dos_qguiapplication_create()
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
|
|
|
static int argc = 1;
|
|
|
|
static char empty[1] = {0};
|
2016-01-23 19:08:58 +01:00
|
|
|
static char *argv[] = {empty};
|
2014-07-19 18:26:08 +02:00
|
|
|
new QGuiApplication(argc, argv);
|
|
|
|
}
|
|
|
|
|
2014-12-01 21:30:45 +01:00
|
|
|
void dos_qguiapplication_delete()
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
|
|
|
delete qApp;
|
|
|
|
}
|
|
|
|
|
2014-12-01 21:30:45 +01:00
|
|
|
void dos_qguiapplication_exec()
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
|
|
|
qApp->exec();
|
|
|
|
}
|
|
|
|
|
2015-01-11 13:05:50 +01:00
|
|
|
void dos_qguiapplication_quit()
|
|
|
|
{
|
|
|
|
qApp->quit();
|
|
|
|
}
|
|
|
|
|
2015-01-11 13:29:44 +01:00
|
|
|
void dos_qapplication_create()
|
|
|
|
{
|
|
|
|
static int argc = 1;
|
|
|
|
static char empty[1] = {0};
|
2016-01-23 19:08:58 +01:00
|
|
|
static char *argv[] = {empty};
|
2015-01-11 13:29:44 +01:00
|
|
|
new QApplication(argc, argv);
|
|
|
|
}
|
|
|
|
|
|
|
|
void dos_qapplication_delete()
|
|
|
|
{
|
|
|
|
delete qApp;
|
|
|
|
}
|
|
|
|
|
|
|
|
void dos_qapplication_exec()
|
|
|
|
{
|
|
|
|
qApp->exec();
|
|
|
|
}
|
|
|
|
|
|
|
|
void dos_qapplication_quit()
|
|
|
|
{
|
|
|
|
qApp->quit();
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qqmlapplicationengine_create()
|
2014-12-01 21:02:18 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QQmlApplicationEngine();
|
2014-12-01 21:02:18 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qqmlapplicationengine_load(void *vptr, const char *filename)
|
2014-12-01 21:02:18 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
2014-12-01 21:02:18 +01:00
|
|
|
engine->load(QUrl::fromLocalFile(QCoreApplication::applicationDirPath() + QDir::separator() + QString(filename)));
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qqmlapplicationengine_load_url(void *vptr, void *url)
|
2015-12-05 17:33:54 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
|
|
|
auto qurl = static_cast<QUrl *>(url);
|
2015-12-06 00:23:25 +01:00
|
|
|
engine->load(*qurl);
|
2015-12-05 17:33:54 +01:00
|
|
|
}
|
|
|
|
|
2015-12-29 12:11:52 +01:00
|
|
|
void dos_qqmlapplicationengine_load_data(void *vptr, const char *data)
|
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
2015-12-29 12:11:52 +01:00
|
|
|
engine->loadData(data);
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qqmlapplicationengine_add_import_path(void *vptr, const char *path)
|
2015-12-05 17:33:54 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
2015-12-06 00:23:25 +01:00
|
|
|
engine->addImportPath(QString(path));
|
2015-12-05 17:33:54 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qqmlapplicationengine_context(void *vptr)
|
2014-12-08 12:55:09 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
2014-12-08 12:55:09 +01:00
|
|
|
engine->rootContext();
|
2016-02-27 16:05:23 +01:00
|
|
|
return engine->rootContext();
|
2014-12-08 12:55:09 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qqmlapplicationengine_delete(void *vptr)
|
2014-12-01 21:02:18 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto engine = static_cast<QQmlApplicationEngine *>(vptr);
|
2014-12-01 21:02:18 +01:00
|
|
|
delete engine;
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qquickview_create()
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QQuickView();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qquickview_show(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
view->show();
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qquickview_delete(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
delete view;
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qquickview_source(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
QUrl url = view->source();
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(url.toString());
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qquickview_set_source(void *vptr, const char *filename)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
view->setSource(QUrl::fromLocalFile(QCoreApplication::applicationDirPath() + QDir::separator() + QString(filename)));
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qquickview_set_source_url(void *vptr, void *url)
|
2015-12-22 18:21:52 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
|
|
|
auto _url = static_cast<QUrl *>(url);
|
2015-12-22 18:21:52 +01:00
|
|
|
view->setSource(*_url);
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qquickview_set_resize_mode(void *vptr, int resizeMode)
|
2015-12-22 18:21:52 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2015-12-22 18:21:52 +01:00
|
|
|
view->setResizeMode((QQuickView::ResizeMode) resizeMode);
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qquickview_rootContext(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto view = static_cast<QQuickView *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return view->rootContext();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_chararray_delete(char *ptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
|
|
|
if (ptr) delete[] ptr;
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qqmlcontext_baseUrl(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto context = static_cast<QQmlContext *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
QUrl url = context->baseUrl();
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(url.toString());
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qqmlcontext_setcontextproperty(void *vptr, const char *name, void *value)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto context = static_cast<QQmlContext *>(vptr);
|
|
|
|
auto variant = static_cast<QVariant *>(value);
|
2014-07-19 18:26:08 +02:00
|
|
|
context->setContextProperty(QString::fromUtf8(name), *variant);
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create()
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_int(int value)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant(value);
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_bool(bool value)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant(value);
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_string(const char *value)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant(value);
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_qvariant(void *other)
|
2015-01-10 11:26:23 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto otherQVariant = static_cast<QVariant *>(other);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QVariant();
|
|
|
|
*result = *otherQVariant;
|
|
|
|
return result;
|
2015-01-10 11:26:23 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_qobject(void *value)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qobject = static_cast<QObject *>(value);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QVariant();
|
|
|
|
result->setValue<QObject *>(qobject);
|
|
|
|
return result;
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_float(float value)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant(value);
|
2015-01-11 13:05:50 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_create_double(double value)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QVariant(value);
|
2015-01-11 13:05:50 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
bool dos_qvariant_isnull(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->isNull();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_delete(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2014-07-19 18:26:08 +02:00
|
|
|
delete variant;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_assign(void *vptr, void *other)
|
2015-01-10 11:26:23 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto leftQVariant = static_cast<QVariant *>(vptr);
|
|
|
|
auto rightQVariant = static_cast<QVariant *>(other);
|
2015-01-31 14:20:36 +01:00
|
|
|
*leftQVariant = *rightQVariant;
|
2015-01-10 11:26:23 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
int dos_qvariant_toInt(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->toInt();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
bool dos_qvariant_toBool(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->toBool();
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
float dos_qvariant_toFloat(void *vptr)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->toFloat();
|
2015-01-11 13:05:50 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
double dos_qvariant_toDouble(void *vptr)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->toDouble();
|
2015-01-11 13:05:50 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qvariant_toString(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(variant->toString());
|
2014-07-19 18:26:08 +02:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qvariant_toQObject(void *vptr)
|
2015-12-23 19:46:21 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return variant->value<QObject *>();
|
2015-12-23 19:46:21 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setInt(void *vptr, int value)
|
2014-08-30 18:46:34 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2014-08-30 18:46:34 +02:00
|
|
|
*variant = value;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setBool(void *vptr, bool value)
|
2014-08-30 18:46:34 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2014-08-30 18:46:34 +02:00
|
|
|
*variant = value;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setFloat(void *vptr, float value)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2015-01-11 13:05:50 +01:00
|
|
|
*variant = value;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setDouble(void *vptr, double value)
|
2015-01-11 13:05:50 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2015-01-11 13:05:50 +01:00
|
|
|
*variant = value;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setString(void *vptr, const char *value)
|
2014-08-30 18:46:34 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
2014-08-30 18:46:34 +02:00
|
|
|
*variant = value;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qvariant_setQObject(void *vptr, void *value)
|
2015-01-12 21:21:46 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto variant = static_cast<QVariant *>(vptr);
|
|
|
|
auto qobject = static_cast<QObject *>(value);
|
2016-01-23 19:08:58 +01:00
|
|
|
variant->setValue<QObject *>(qobject);
|
2015-01-12 21:21:46 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qobject_qmetaobject()
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new DosIQMetaObjectHolder(std::make_shared<DosQObjectMetaObject>());
|
2016-01-08 19:31:33 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qobject_create(void *dObjectPointer, void *metaObject, DObjectCallback dObjectCallback)
|
2016-01-03 14:02:28 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto metaObjectHolder = static_cast<DosIQMetaObjectHolder *>(metaObject);
|
2016-01-23 17:50:44 +01:00
|
|
|
auto dosQObject = new DosQObject(metaObjectHolder->data(),
|
2016-01-07 17:16:37 +01:00
|
|
|
OnSlotExecutedHandler(dObjectPointer, dObjectCallback));
|
|
|
|
QQmlEngine::setObjectOwnership(dosQObject, QQmlEngine::CppOwnership);
|
2016-02-27 16:05:23 +01:00
|
|
|
return static_cast<QObject *>(dosQObject);
|
2016-01-03 14:02:28 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qobject_delete(void *vptr)
|
2014-07-19 18:26:08 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qobject = static_cast<QObject *>(vptr);
|
2015-12-28 13:21:02 +01:00
|
|
|
qobject->disconnect();
|
|
|
|
delete qobject;
|
2014-08-30 18:46:34 +02:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qobject_signal_emit(void *vptr, const char *name, int parametersCount, void **parameters)
|
2014-08-30 18:46:34 +02:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qobject = static_cast<QObject *>(vptr);
|
2016-01-23 19:08:58 +01:00
|
|
|
auto dynamicQObject = dynamic_cast<DosIQObjectImpl *>(qobject);
|
2015-02-05 23:04:59 +01:00
|
|
|
|
2016-01-28 20:59:04 +01:00
|
|
|
auto transformation = [](void *vptr)->QVariant{return *(static_cast<QVariant *>(vptr));};
|
2016-01-07 12:04:40 +01:00
|
|
|
const std::vector<QVariant> variants = toVector(parameters, parametersCount, transformation);
|
2016-02-27 18:10:07 +01:00
|
|
|
dynamicQObject->emitSignal(qobject, QString::fromStdString(name), variants);
|
2014-08-30 18:46:34 +02:00
|
|
|
}
|
2014-12-24 14:30:41 +01:00
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qobject_signal_connect(void *senderVPtr,
|
|
|
|
const char *signal,
|
|
|
|
void *receiverVPtr,
|
|
|
|
const char *method,
|
2015-12-23 19:46:21 +01:00
|
|
|
int type,
|
2016-01-23 19:08:58 +01:00
|
|
|
bool *result)
|
2015-12-23 19:46:21 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto sender = static_cast<QObject *>(senderVPtr);
|
|
|
|
auto receiver = static_cast<QObject *>(receiverVPtr);
|
2015-12-28 13:21:02 +01:00
|
|
|
*result = QObject::connect(sender, signal, receiver, method, (Qt::ConnectionType) type);
|
2015-12-23 19:46:21 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qobject_signal_disconnect(void *senderVPtr,
|
|
|
|
const char *signal,
|
|
|
|
void *receiverVPtr,
|
|
|
|
const char *method,
|
|
|
|
bool *result)
|
2015-12-23 19:46:21 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto sender = static_cast<QObject *>(senderVPtr);
|
|
|
|
auto receiver = static_cast<QObject *>(receiverVPtr);
|
2015-12-28 13:21:02 +01:00
|
|
|
*result = QObject::disconnect(sender, signal, receiver, method);
|
2014-12-24 14:30:41 +01:00
|
|
|
}
|
2015-01-18 12:26:51 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qobject_objectName(void *vptr)
|
2015-12-23 19:58:12 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(object->objectName());
|
2015-12-23 19:58:12 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 15:07:23 +01:00
|
|
|
void dos_qobject_setObjectName(void *vptr, const char *name)
|
2016-02-07 15:32:12 +01:00
|
|
|
{
|
|
|
|
auto object = static_cast<QObject *>(vptr);
|
|
|
|
object->setObjectName(QString::fromUtf8(name));
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_create(void **vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QModelIndex();
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_create_qmodelindex(void *other_vptr)
|
2016-02-25 22:41:24 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QModelIndex();
|
2016-02-27 15:07:23 +01:00
|
|
|
auto other = static_cast<QModelIndex *>(other_vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
*result = *other;
|
|
|
|
return result;
|
2016-02-25 22:41:24 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qmodelindex_delete(void *vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2015-01-31 14:20:36 +01:00
|
|
|
delete index;
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
int dos_qmodelindex_row(void *vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return index->row();
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
int dos_qmodelindex_column(void *vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return index->column();
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
bool dos_qmodelindex_isValid(void *vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return index->isValid();
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_data(void *vptr, int role)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QVariant(index->data(role));
|
|
|
|
return static_cast<QVariant *>(result);
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_parent(void *vptr)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QModelIndex(index->parent());
|
|
|
|
return static_cast<QModelIndex *>(result);
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_child(void *vptr, int row, int column)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QModelIndex(index->child(row, column));
|
|
|
|
return static_cast<QModelIndex *>(result);
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmodelindex_sibling(void *vptr, int row, int column, void *sibling)
|
2015-01-18 12:26:51 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
auto result = new QModelIndex(index->sibling(row, column));
|
|
|
|
return static_cast<QModelIndex *>(result);
|
2015-01-18 12:26:51 +01:00
|
|
|
}
|
2015-01-19 22:23:18 +01:00
|
|
|
|
2016-02-27 15:07:23 +01:00
|
|
|
void dos_qmodelindex_assign(void *l, void *r)
|
2016-02-25 22:26:06 +01:00
|
|
|
{
|
|
|
|
auto li = static_cast<QModelIndex *>(l);
|
|
|
|
auto ri = static_cast<QModelIndex *>(r);
|
|
|
|
*li = *ri;
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qhash_int_qbytearray_create()
|
2015-01-31 12:50:14 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QHash<int, QByteArray>();
|
2015-01-31 12:50:14 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
void dos_qhash_int_qbytearray_delete(QHashIntQByteArrayVoidPtr vptr)
|
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qHash = static_cast<QHash<int, QByteArray>*>(vptr);
|
2015-01-31 12:50:14 +01:00
|
|
|
delete qHash;
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qhash_int_qbytearray_insert(QHashIntQByteArrayVoidPtr vptr, int key, const char *value)
|
2015-01-31 12:50:14 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qHash = static_cast<QHash<int, QByteArray>*>(vptr);
|
2015-01-31 12:50:14 +01:00
|
|
|
qHash->insert(key, QByteArray(value));
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qhash_int_qbytearray_value(QHashIntQByteArrayVoidPtr vptr, int key)
|
2015-01-31 14:20:36 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto qHash = static_cast<QHash<int, QByteArray>*>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(qHash->value(key));
|
2015-01-31 14:20:36 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qresource_register(const char *filename)
|
2015-12-05 17:33:54 +01:00
|
|
|
{
|
2015-12-06 00:23:25 +01:00
|
|
|
QResource::registerResource(QString::fromUtf8(filename));
|
2015-12-05 17:33:54 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qurl_create(const char *url, int parsingMode)
|
2015-12-05 17:33:54 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new QUrl(QString::fromUtf8(url), (QUrl::ParsingMode) parsingMode);
|
2015-12-05 17:33:54 +01:00
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qurl_delete(void *vptr)
|
2015-12-05 17:33:54 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto url = static_cast<QUrl *>(vptr);
|
2015-12-05 17:33:54 +01:00
|
|
|
delete url;
|
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
char *dos_qurl_to_string(void *vptr)
|
2015-12-22 17:53:29 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto url = static_cast<QUrl *>(vptr);
|
2016-02-27 16:05:23 +01:00
|
|
|
return convert_to_cstring(url->toString());
|
2015-12-22 17:53:29 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qmetaobject_create(void *superClassVPtr,
|
|
|
|
const char *className,
|
|
|
|
const ::SignalDefinitions *signalDefinitions,
|
|
|
|
const ::SlotDefinitions *slotDefinitions,
|
|
|
|
const ::PropertyDefinitions *propertyDefinitions)
|
2015-12-27 17:58:49 +01:00
|
|
|
{
|
2016-01-07 13:24:52 +01:00
|
|
|
Q_ASSERT(superClassVPtr);
|
2016-01-23 19:08:58 +01:00
|
|
|
auto superClassHolder = static_cast<DosIQMetaObjectHolder *>(superClassVPtr);
|
2016-01-07 13:24:52 +01:00
|
|
|
Q_ASSERT(superClassHolder);
|
|
|
|
auto data = superClassHolder->data();
|
|
|
|
Q_ASSERT(data);
|
2016-01-07 12:04:40 +01:00
|
|
|
|
2016-01-07 16:59:51 +01:00
|
|
|
auto metaObject = std::make_shared<DosQMetaObject>(data,
|
2016-01-07 12:04:40 +01:00
|
|
|
QString::fromUtf8(className),
|
2016-02-21 18:34:27 +01:00
|
|
|
toVector(*signalDefinitions),
|
|
|
|
toVector(*slotDefinitions),
|
|
|
|
toVector(*propertyDefinitions));
|
2016-02-27 16:05:23 +01:00
|
|
|
return new DosIQMetaObjectHolder(std::move(metaObject));
|
2015-12-27 17:58:49 +01:00
|
|
|
}
|
|
|
|
|
2016-01-06 15:42:21 +01:00
|
|
|
void dos_qmetaobject_delete(void *vptr)
|
2015-12-27 17:58:49 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto factory = static_cast<DosIQMetaObjectHolder *>(vptr);
|
2015-12-27 17:58:49 +01:00
|
|
|
delete factory;
|
|
|
|
}
|
2016-01-07 12:04:40 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qabstractlistmodel_qmetaobject()
|
2016-01-07 12:04:40 +01:00
|
|
|
{
|
2016-02-27 16:05:23 +01:00
|
|
|
return new DosIQMetaObjectHolder(std::make_shared<DosQAbstractListModelMetaObject>());
|
2016-01-07 12:04:40 +01:00
|
|
|
}
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
void *dos_qabstractlistmodel_create(void *dObjectPointer,
|
|
|
|
void *metaObjectPointer,
|
|
|
|
DObjectCallback dObjectCallback,
|
|
|
|
RowCountCallback rowCountCallback,
|
|
|
|
ColumnCountCallback columnCountCallback,
|
|
|
|
DataCallback dataCallback,
|
|
|
|
SetDataCallback setDataCallback,
|
|
|
|
RoleNamesCallback roleNamesCallaback,
|
|
|
|
FlagsCallback flagsCallback,
|
|
|
|
HeaderDataCallback headerDataCallback)
|
2016-01-07 12:04:40 +01:00
|
|
|
{
|
2016-01-28 20:59:04 +01:00
|
|
|
auto metaObjectHolder = static_cast<DosIQMetaObjectHolder *>(metaObjectPointer);
|
2016-01-08 19:31:33 +01:00
|
|
|
auto model = new DosQAbstractListModel(dObjectPointer,
|
2016-01-23 17:50:44 +01:00
|
|
|
metaObjectHolder->data(),
|
2016-01-08 19:31:33 +01:00
|
|
|
OnSlotExecutedHandler(dObjectPointer, dObjectCallback),
|
|
|
|
rowCountCallback,
|
|
|
|
columnCountCallback,
|
|
|
|
dataCallback,
|
|
|
|
setDataCallback,
|
|
|
|
roleNamesCallaback,
|
|
|
|
flagsCallback,
|
|
|
|
headerDataCallback);
|
|
|
|
QQmlEngine::setObjectOwnership(model, QQmlEngine::CppOwnership);
|
2016-02-27 16:05:23 +01:00
|
|
|
return static_cast<QObject *>(model);
|
2016-01-07 12:04:40 +01:00
|
|
|
}
|
2016-01-08 19:31:33 +01:00
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_beginInsertRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(parentIndex);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicBeginInsertRows(*index, first, last);
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_endInsertRows(void *vptr)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicEndInsertRows();
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_beginRemoveRows(void *vptr, QModelIndexVoidPtr parentIndex, int first, int last)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-28 20:59:04 +01:00
|
|
|
auto index = static_cast<QModelIndex *>(parentIndex);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicBeginRemoveRows(*index, first, last);
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_endRemoveRows(void *vptr)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicEndRemoveRows();
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_beginResetModel(void *vptr)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicBeginResetModel();
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_endResetModel(void *vptr)
|
2016-01-08 19:31:33 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-08 19:31:33 +01:00
|
|
|
model->publicEndResetModel();
|
|
|
|
}
|
|
|
|
|
2016-01-23 19:08:58 +01:00
|
|
|
void dos_qabstractlistmodel_dataChanged(void *vptr,
|
2016-01-08 19:31:33 +01:00
|
|
|
QModelIndexVoidPtr topLeftIndex,
|
|
|
|
QModelIndexVoidPtr bottomRightIndex,
|
2016-01-23 19:08:58 +01:00
|
|
|
int *rolesArrayPtr,
|
2016-01-08 19:31:33 +01:00
|
|
|
int rolesArrayLength)
|
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto object = static_cast<QObject *>(vptr);
|
2016-03-03 22:38:52 +01:00
|
|
|
auto model = dynamic_cast<DosIQAbstractListModelImpl *>(object);
|
2016-01-28 20:59:04 +01:00
|
|
|
auto topLeft = static_cast<QModelIndex *>(topLeftIndex);
|
|
|
|
auto bottomRight = static_cast<QModelIndex *>(bottomRightIndex);
|
2016-01-08 19:31:33 +01:00
|
|
|
auto roles = QVector<int>::fromStdVector(std::vector<int>(rolesArrayPtr, rolesArrayPtr + rolesArrayLength));
|
|
|
|
model->publicDataChanged(*topLeft, *bottomRight, roles);
|
|
|
|
}
|
2016-01-24 22:03:12 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
int dos_qdeclarative_qmlregistertype(const ::QmlRegisterType *cArgs)
|
2016-01-27 20:08:12 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto holder = static_cast<DosIQMetaObjectHolder *>(cArgs->staticMetaObject);
|
2016-01-27 20:08:12 +01:00
|
|
|
|
|
|
|
DOS::QmlRegisterType args;
|
2016-02-21 18:14:51 +01:00
|
|
|
args.major = cArgs->major;
|
|
|
|
args.minor = cArgs->minor;
|
|
|
|
args.uri = cArgs->uri;
|
|
|
|
args.qml = cArgs->qml;
|
|
|
|
args.staticMetaObject = holder->data();
|
|
|
|
args.createDObject = cArgs->createDObject;
|
|
|
|
args.deleteDObject = cArgs->deleteDObject;
|
2016-01-27 20:08:12 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
return dosQmlRegisterType(std::move(args));
|
2016-01-24 22:03:12 +01:00
|
|
|
}
|
2016-02-21 19:58:06 +01:00
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
int dos_qdeclarative_qmlregistersingletontype(const ::QmlRegisterType *cArgs)
|
2016-02-21 19:58:06 +01:00
|
|
|
{
|
2016-02-27 15:07:23 +01:00
|
|
|
auto holder = static_cast<DosIQMetaObjectHolder *>(cArgs->staticMetaObject);
|
2016-02-21 19:58:06 +01:00
|
|
|
|
|
|
|
DOS::QmlRegisterType args;
|
|
|
|
args.major = cArgs->major;
|
|
|
|
args.minor = cArgs->minor;
|
|
|
|
args.uri = cArgs->uri;
|
|
|
|
args.qml = cArgs->qml;
|
|
|
|
args.staticMetaObject = holder->data();
|
|
|
|
args.createDObject = cArgs->createDObject;
|
|
|
|
args.deleteDObject = cArgs->deleteDObject;
|
|
|
|
|
2016-02-27 16:05:23 +01:00
|
|
|
return dosQmlRegisterSingletonType(std::move(args));
|
2016-02-21 19:58:06 +01:00
|
|
|
}
|