Sat, 05 Mar 2022 12:47:10 +0200
fix crash when loading a file
`object` is moved so we cannot access it after moving
#include <QBrush> #include "errorline.h" ldraw::ErrorLine::ErrorLine(QStringView text, QStringView message) : text{text.toString()}, message{message.toString()} { } QVariant ldraw::ErrorLine::getProperty(Property property) const { switch (property) { case Property::Text: return this->text; case Property::ErrorMessage: return this->message; default: return Object::getProperty(property); } } void ldraw::ErrorLine::setProperty(SetPropertyResult* result, const PropertyKeyValue& pair) { LDRAW_OBJECT_HANDLE_SET_PROPERTY(Text, {this->text = value;}); LDRAW_OBJECT_HANDLE_SET_PROPERTY(ErrorMessage, {this->message = value;}); BaseClass::setProperty(result, pair); } QString ldraw::ErrorLine::textRepresentation() const { return this->text; } QBrush ldraw::ErrorLine::textRepresentationForeground() const { return QBrush{Qt::yellow}; } QBrush ldraw::ErrorLine::textRepresentationBackground() const { return QBrush{Qt::red}; } ldraw::Object::Type ldraw::ErrorLine::typeIdentifier() const { return Type::ErrorLine; } QDataStream &ldraw::ErrorLine::serialize(QDataStream &stream) const { return ldraw::Object::serialize(stream) << this->text; } QDataStream &ldraw::ErrorLine::deserialize(QDataStream &stream) { return ldraw::Object::deserialize(stream) >> this->text; } QString ldraw::ErrorLine::toLDrawCode() const { return this->text; } QString ldraw::ErrorLine::iconName() const { return ":/icons/linetype-errorline.png"; }