void Object::setProperty(const char *name, Variant val) { int id = metaObject()->propertyId(name); if(id < 0) { LOG(Error, "Object '%s' of type '%s' does not have a property '%s'", this->name().data(), metaObject()->className(), name); return; } MetaProperty prop = metaObject()->property(id); if(!prop.isWritable()) { LOG(Error, "Property '%s' is not writable", name); return; } return prop.write(this, val); }