MCPcopy Create free account
hub / github.com/BrigJS/brig / build

Method build

src/DynamicQMetaObjectBuilder.cpp:39–68  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37 }
38
39 QMetaObject *DynamicQMetaObjectBuilder::build()
40 {
41 // Initializing builder
42 builder.setClassName(_typeName);
43 builder.setSuperClass(&QObject::staticMetaObject);
44 builder.setFlags(QMetaObjectBuilder::DynamicMetaObject);
45
46 // Initializing properties
47 int relativePropIndex = builder.propertyCount();
48 for (int i = 0; i < _properties.count(); ++i) {
49 BrigMetaProperty *property = _properties[i];
50 QMetaPropertyBuilder propb = builder.addProperty(QMetaObject::normalizedSignature(property->signature), "QVariant", relativePropIndex);
51 propb.setWritable(true);
52 relativePropIndex++;
53 }
54
55 // Initializing signal hanglers
56 for (int i = 0; i < _signals.count(); ++i) {
57 BrigMetaSignal *signal = _signals[i];
58 builder.addSignal(QMetaObject::normalizedSignature(signal->signature));
59 }
60
61 // Initializing method hanglers
62 for (int i = 0; i < _methods.count(); ++i) {
63 BrigMetaMethod *method = _methods[i];
64 builder.addMethod(QMetaObject::normalizedSignature(method->signature), "QVariant");
65 }
66
67 return builder.toMetaObject();
68 }
69
70 void DynamicQMetaObjectBuilder::addSignal(const char *name, const char *signature, QList<QByteArray> arguments)
71 {

Callers 3

type.jsFile · 0.80
type_manager.jsFile · 0.80
initMethod · 0.80

Calls 3

addPropertyMethod · 0.80
addSignalMethod · 0.80
addMethodMethod · 0.80

Tested by

no test coverage detected