2017-08-11 08:24:24 -07:00
|
|
|
/* generated by rust_qt_binding_generator */
|
|
|
|
#include "test_object_rust.h"
|
|
|
|
|
|
|
|
namespace {
|
2017-08-18 08:21:02 -07:00
|
|
|
template <typename T>
|
|
|
|
struct option {
|
2017-08-22 10:17:35 -07:00
|
|
|
public:
|
2017-08-18 08:21:02 -07:00
|
|
|
T value;
|
|
|
|
bool some;
|
|
|
|
operator QVariant() const {
|
|
|
|
if (some) {
|
|
|
|
return QVariant(value);
|
|
|
|
}
|
|
|
|
return QVariant();
|
|
|
|
}
|
|
|
|
};
|
2017-08-11 08:24:24 -07:00
|
|
|
struct qbytearray_t {
|
|
|
|
private:
|
|
|
|
const char* data;
|
|
|
|
int len;
|
|
|
|
public:
|
|
|
|
qbytearray_t(const QByteArray& v):
|
|
|
|
data(v.data()),
|
|
|
|
len(v.size()) {
|
|
|
|
}
|
|
|
|
operator QByteArray() const {
|
|
|
|
return QByteArray(data, len);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
struct qstring_t {
|
|
|
|
private:
|
|
|
|
const void* data;
|
|
|
|
int len;
|
|
|
|
public:
|
|
|
|
qstring_t(const QString& v):
|
|
|
|
data(static_cast<const void*>(v.utf16())),
|
|
|
|
len(v.size()) {
|
|
|
|
}
|
|
|
|
operator QString() const {
|
|
|
|
return QString::fromUtf8(static_cast<const char*>(data), len);
|
|
|
|
}
|
|
|
|
};
|
2017-08-13 08:01:52 -07:00
|
|
|
struct qmodelindex_t {
|
|
|
|
int row;
|
|
|
|
quintptr id;
|
|
|
|
};
|
2017-08-26 10:10:18 -07:00
|
|
|
inline void personUserNameChanged(Person* o)
|
|
|
|
{
|
|
|
|
emit o->userNameChanged();
|
|
|
|
}
|
|
|
|
|
2017-08-11 08:24:24 -07:00
|
|
|
}
|
|
|
|
typedef void (*qstring_set)(QString*, qstring_t*);
|
|
|
|
void set_qstring(QString* v, qstring_t* val) {
|
|
|
|
*v = *val;
|
|
|
|
}
|
|
|
|
typedef void (*qbytearray_set)(QByteArray*, qbytearray_t*);
|
|
|
|
void set_qbytearray(QByteArray* v, qbytearray_t* val) {
|
|
|
|
*v = *val;
|
|
|
|
}
|
|
|
|
extern "C" {
|
2017-08-15 04:49:28 -07:00
|
|
|
Person::Private* person_new(Person*, void (*)(Person*));
|
|
|
|
void person_free(Person::Private*);
|
|
|
|
void person_user_name_get(const Person::Private*, QString*, qstring_set);
|
|
|
|
void person_user_name_set(Person::Private*, qstring_t);
|
2017-08-11 08:24:24 -07:00
|
|
|
};
|
2017-08-28 00:28:48 -07:00
|
|
|
|
2017-08-26 10:10:18 -07:00
|
|
|
Person::Person(bool /*owned*/, QObject *parent):
|
|
|
|
QObject(parent),
|
|
|
|
m_d(0),
|
2017-08-28 00:28:48 -07:00
|
|
|
m_ownsPrivate(false)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2017-08-11 08:24:24 -07:00
|
|
|
Person::Person(QObject *parent):
|
|
|
|
QObject(parent),
|
2017-08-26 10:10:18 -07:00
|
|
|
m_d(person_new(this,
|
|
|
|
personUserNameChanged)),
|
2017-08-28 00:28:48 -07:00
|
|
|
m_ownsPrivate(true)
|
|
|
|
{
|
2017-08-26 10:10:18 -07:00
|
|
|
}
|
2017-08-11 08:24:24 -07:00
|
|
|
|
|
|
|
Person::~Person() {
|
2017-08-26 10:10:18 -07:00
|
|
|
if (m_ownsPrivate) {
|
|
|
|
person_free(m_d);
|
|
|
|
}
|
2017-08-11 08:24:24 -07:00
|
|
|
}
|
|
|
|
QString Person::userName() const
|
|
|
|
{
|
|
|
|
QString v;
|
2017-08-26 10:10:18 -07:00
|
|
|
person_user_name_get(m_d, &v, set_qstring);
|
2017-08-11 08:24:24 -07:00
|
|
|
return v;
|
|
|
|
}
|
|
|
|
void Person::setUserName(const QString& v) {
|
2017-08-26 10:10:18 -07:00
|
|
|
person_user_name_set(m_d, v);
|
2017-08-11 08:24:24 -07:00
|
|
|
}
|