--- a/src/objecttypes/subfilereference.cpp Sat Oct 05 23:47:03 2019 +0300 +++ b/src/objecttypes/subfilereference.cpp Sun Nov 03 12:17:41 2019 +0200 @@ -1,5 +1,17 @@ #include "subfilereference.h" +modelobjects::SubfileReference::SubfileReference( + const Vertex& position, + const Matrix3x3& transformation, + const QString& referenceName, + const Color color) : + ColoredBaseObject{color}, + position{position}, + transformation{transformation}, + referenceName{referenceName} +{ +} + QVariant modelobjects::SubfileReference::getProperty(Property property) const { switch (property) @@ -15,6 +27,27 @@ } } +auto modelobjects::SubfileReference::setProperty( + Property property, + const QVariant& value) + -> SetPropertyResult +{ + switch (property) + { + case Property::Position: + this->position = value.value<Vertex>(); + return SetPropertyResult::Success; + case Property::Transformation: + this->transformation = value.value<Matrix3x3>(); + return SetPropertyResult::Success; + case Property::ReferenceName: + this->referenceName = value.toString(); + return SetPropertyResult::Success; + default: + return ColoredBaseObject::setProperty(property, value); + } +} + QString modelobjects::SubfileReference::textRepresentation() const { return referenceName + " " + vertexToStringParens(this->position);