QPair<QVariant, RPropertyAttributes> RDocumentVariables::getProperty(RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyCurrentLayerId) { return qMakePair(QVariant(currentLayerId), RPropertyAttributes()); } if (propertyTypeId == PropertyUnit) { return qMakePair(QVariant(unit), RPropertyAttributes()); } if (propertyTypeId == PropertyLinetypeScale) { return qMakePair(QVariant(linetypeScale), RPropertyAttributes()); } if (propertyTypeId == PropertyDimensionFont) { return qMakePair(QVariant(dimensionFont), RPropertyAttributes()); } if (propertyTypeId.isCustom()) { QString appId = propertyTypeId.getCustomPropertyTitle(); QString name = propertyTypeId.getCustomPropertyName(); RS::KnownVariable v = RDxfServices::stringToVariable(name); if (appId=="QCAD" && v!=RS::INVALID) { return qMakePair(getKnownVariable(v), RPropertyAttributes(RPropertyAttributes::KnownVariable)); } } return RObject::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimRotatedEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyDimensionLinePosX) { return qMakePair(QVariant(data.definitionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimensionLinePosY) { return qMakePair(QVariant(data.definitionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimensionLinePosZ) { return qMakePair(QVariant(data.definitionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint1X) { return qMakePair(QVariant(data.extensionPoint1.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint1Y) { return qMakePair(QVariant(data.extensionPoint1.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint1Z) { return qMakePair(QVariant(data.extensionPoint1.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2X) { return qMakePair(QVariant(data.extensionPoint2.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2Y) { return qMakePair(QVariant(data.extensionPoint2.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2Z) { return qMakePair(QVariant(data.extensionPoint2.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyAngle) { return qMakePair(QVariant(data.rotation), RPropertyAttributes(RPropertyAttributes::Angle)); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimOrdinateEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyOrdinate) { if (humanReadable) { RPropertyAttributes attr; if (!noAttributes) { attr.setChoices(QSet<QString>() << "X" << "Y"); } return qMakePair(QVariant(data.xType ? "X" : "Y"), attr); } else { return qMakePair(QVariant(data.xType), RPropertyAttributes()); } } else if (propertyTypeId == PropertyOriginX) { return qMakePair(QVariant(data.definitionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyOriginY) { return qMakePair(QVariant(data.definitionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyOriginZ) { return qMakePair(QVariant(data.definitionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyDefiningPointX) { return qMakePair(QVariant(data.definingPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyDefiningPointY) { return qMakePair(QVariant(data.definingPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyDefiningPointZ) { return qMakePair(QVariant(data.definingPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyLeaderEndPointX) { return qMakePair(QVariant(data.leaderEndPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyLeaderEndPointY) { return qMakePair(QVariant(data.leaderEndPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyLeaderEndPointZ) { return qMakePair(QVariant(data.leaderEndPoint.z), RPropertyAttributes()); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RPolylineEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyClosed) { QVariant v; v.setValue(data.closed); return qMakePair(v, RPropertyAttributes()); } else if (propertyTypeId == PropertyVertexNX) { QVariant v; v.setValue(RVector::getXList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNY) { QVariant v; v.setValue(RVector::getYList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNZ) { QVariant v; v.setValue(RVector::getZList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyBulgeN) { QVariant v; v.setValue(data.bulges); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RPolylineEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyClosed) { QVariant v; v.setValue(data.closed); return qMakePair(v, RPropertyAttributes()); } else if (propertyTypeId == PropertyPolylineGen) { QVariant v; v.setValue(data.polylineGen); return qMakePair(v, RPropertyAttributes()); } else if (propertyTypeId == PropertyVertexNX) { QVariant v; v.setValue(RVector::getXList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNY) { QVariant v; v.setValue(RVector::getYList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNZ) { QVariant v; v.setValue(RVector::getZList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyBulgeN) { QVariant v; v.setValue(data.bulges); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyStartWidthN) { QVariant v; v.setValue(data.startWidths); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyEndWidthN) { QVariant v; v.setValue(data.endWidths); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyGlobalWidth) { QVariant v; double val = -1.0; for (int i=0; i<data.startWidths.length() && i<data.endWidths.length(); i++) { if (val<0.0) { val = data.startWidths[i]; v.setValue(val); } if (!RMath::fuzzyCompare(data.startWidths[i], val) || !RMath::fuzzyCompare(data.endWidths[i], val)) { v.setValue(QString()); break; } } return qMakePair(v, RPropertyAttributes(RPropertyAttributes::Redundant)); } else if (propertyTypeId == PropertyLength) { QVariant v; v.setValue(data.getLength()); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::ReadOnly)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
/** * \return Property attributes of given propery. */ RPropertyAttributes RPropertyEditor::getPropertyAttributes(const QString& group, const QString& title) { if (!combinedProperties.contains(group)) { return RPropertyAttributes(); } if (!combinedProperties.value(group).contains(title)) { return RPropertyAttributes(); } QPair<QVariant, RPropertyAttributes> pair = combinedProperties[group][title]; return pair.second; }
QPair<QVariant, RPropertyAttributes> RImageEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyFileName) { return qMakePair(QVariant(data.fileName), RPropertyAttributes()); } else if (propertyTypeId == PropertyInsertionPointX) { return qMakePair(QVariant(data.insertionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyInsertionPointY) { return qMakePair(QVariant(data.insertionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyInsertionPointZ) { return qMakePair(QVariant(data.insertionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleFactorX) { return qMakePair(QVariant(data.uVector.getMagnitude()), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleFactorY) { return qMakePair(QVariant(data.vVector.getMagnitude()), RPropertyAttributes()); } else if (propertyTypeId == PropertyWidth) { return qMakePair(QVariant(data.uVector.getMagnitude() * data.getImage().width()), RPropertyAttributes()); } else if (propertyTypeId == PropertyHeight) { return qMakePair(QVariant(data.vVector.getMagnitude() * data.getImage().height()), RPropertyAttributes()); } else if (propertyTypeId == PropertyAngle) { return qMakePair(QVariant(data.uVector.getAngle()), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyFade) { return qMakePair(QVariant(data.fade), RPropertyAttributes(RPropertyAttributes::Percentage)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RBlock::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyName) { return qMakePair(QVariant(name), RPropertyAttributes()); } if (propertyTypeId == PropertyFrozen) { return qMakePair(QVariant(frozen), RPropertyAttributes()); } //return qMakePair(QVariant(), RPropertyAttributes()); return RObject::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RLeaderEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyArrowHead) { return qMakePair(QVariant(data.arrowHead), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimLeaderBlock) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; if (!noAttributes) { QSet<QString> blockNames = document->getBlockNames(); QSet<QString> filtered; QSet<QString>::iterator it; for (it=blockNames.begin(); it!=blockNames.end(); it++) { if (!(*it).startsWith("*")) { filtered.insert(*it); } } attr.setChoices(filtered); } return qMakePair(QVariant(document->getBlockName( getData().getDimLeaderBlockId())), attr); } } else { return qMakePair(QVariant(getData().getDimLeaderBlockId()), RPropertyAttributes()); } } else if (propertyTypeId == PropertyVertexNX) { QVariant v; v.setValue(RVector::getXList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNY) { QVariant v; v.setValue(RVector::getYList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNZ) { QVariant v; v.setValue(RVector::getZList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RBlockReferenceEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityBlockRef), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyPositionX) { return qMakePair(QVariant(data.position.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPositionY) { return qMakePair(QVariant(data.position.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPositionZ) { return qMakePair(QVariant(data.position.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleX) { return qMakePair(QVariant(data.scaleFactors.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleY) { return qMakePair(QVariant(data.scaleFactors.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleZ) { return qMakePair(QVariant(data.scaleFactors.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyRotation) { return qMakePair(QVariant(data.rotation), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyReferencedBlock) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; // TODO if (!noAttributes) { QSet<QString> blockNames = document->getBlockNames(); QSet<QString> filtered; QSet<QString>::iterator it; for (it=blockNames.begin(); it!=blockNames.end(); it++) { if (!(*it).startsWith("*")) { filtered.insert(*it); } } attr.setChoices(filtered); } return qMakePair(QVariant(document->getBlockName( getData().getReferencedBlockId())), attr); } } else { return qMakePair(QVariant(getData().getReferencedBlockId()), RPropertyAttributes()); } } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RRayEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { RPropertyAttributes attFixedAngle; attFixedAngle.setReadOnly(data.fixedAngle); if (propertyTypeId == PropertyBasePointX) { return qMakePair(QVariant(data.basePoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyBasePointY) { return qMakePair(QVariant(data.basePoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyBasePointZ) { return qMakePair(QVariant(data.basePoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyDirectionX) { return qMakePair(QVariant(data.directionVector.x), attFixedAngle); } else if (propertyTypeId == PropertyDirectionY) { return qMakePair(QVariant(data.directionVector.y), attFixedAngle); } else if (propertyTypeId == PropertyDirectionZ) { return qMakePair(QVariant(data.directionVector.z), attFixedAngle); } else if (propertyTypeId == PropertySecondPointX) { attFixedAngle.setRedundant(true); return qMakePair(QVariant(data.getSecondPoint().x), attFixedAngle); } else if (propertyTypeId == PropertySecondPointY) { attFixedAngle.setRedundant(true); return qMakePair(QVariant(data.getSecondPoint().y), attFixedAngle); } else if (propertyTypeId == PropertySecondPointZ) { attFixedAngle.setRedundant(true); return qMakePair(QVariant(data.getSecondPoint().z), attFixedAngle); } else if (propertyTypeId==PropertyAngle) { return qMakePair(QVariant(data.getAngle()), RPropertyAttributes(RPropertyAttributes::Angle|RPropertyAttributes::Redundant)); } else if (propertyTypeId==PropertyFixedAngle) { return qMakePair(QVariant(data.fixedAngle), RPropertyAttributes()); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> REntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityUnknown), RPropertyAttributes()); } else if (propertyTypeId == PropertyBlock) { return qMakePair(QVariant(getData().getBlockId()), RPropertyAttributes()); }else if (propertyTypeId == PropertyLayer) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; if (!noAttributes) { // TODO: filter out locked layers: attr.setChoices(document->getLayerNames()); } return qMakePair(QVariant(document->getLayerName( getData().getLayerId())), attr); } } else { return qMakePair(QVariant(getData().getLayerId()), RPropertyAttributes()); } } else if (propertyTypeId == PropertyLinetype) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { QVariant var; QSharedPointer<RLinetype> linetype = document->queryLinetype( getData().getLinetypeId()); var.setValue<RLinetype> (*linetype.data()); return qMakePair(var, RPropertyAttributes()); } } else { return qMakePair(QVariant(getData().getLinetypeId()), RPropertyAttributes()); } } else if (propertyTypeId == PropertyLineweight) { QVariant v; v.setValue<RLineweight::Lineweight>(getData().getLineweight()); return qMakePair(v, RPropertyAttributes()); } else if (propertyTypeId == PropertyColor) { QVariant var; var.setValue<RColor> (getData().getColor()); return qMakePair(var, RPropertyAttributes()); } else if (propertyTypeId == PropertyDrawOrder) { return qMakePair(QVariant(getData().getDrawOrder()), RPropertyAttributes()); } return RObject::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RView::getProperty( RPropertyTypeId& propertyTypeId, bool /*humanReadable*/, bool /*noAttributes*/) { if (propertyTypeId == PropertyName) { return qMakePair(QVariant(name), RPropertyAttributes()); } if (propertyTypeId == PropertyCenterPoint) { return qMakePair( QVariant::fromValue(centerPoint), RPropertyAttributes()); } if (propertyTypeId == PropertyWidth) { return qMakePair(QVariant(width), RPropertyAttributes()); } if (propertyTypeId == PropertyHeight) { return qMakePair(QVariant(height), RPropertyAttributes()); } return qMakePair(QVariant(), RPropertyAttributes()); }
QPair<QVariant, RPropertyAttributes> RAttributeEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyTag) { return qMakePair(QVariant(data.tag), RPropertyAttributes()); } if (propertyTypeId == PropertyText || propertyTypeId == PropertyPlainText) { // add custom property title for use by parent (block reference): propertyTypeId.setCustomPropertyTitle("Attributes"); propertyTypeId.setCustomPropertyName(getTag()); return qMakePair( QVariant(data.text), RPropertyAttributes( RPropertyAttributes::VisibleToParent | (propertyTypeId==PropertyPlainText ? RPropertyAttributes::ReadOnly : RPropertyAttributes::NoOptions)) ); } return RTextBasedEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RLeaderEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyArrowHead) { return qMakePair(QVariant(data.arrowHead), RPropertyAttributes()); } else if (propertyTypeId == PropertyVertexNX) { QVariant v; v.setValue(RVector::getXList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNY) { QVariant v; v.setValue(RVector::getYList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyVertexNZ) { QVariant v; v.setValue(RVector::getZList(data.vertices)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RCircleEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityCircle), RPropertyAttributes( RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyCenterX) { return qMakePair(QVariant(data.center.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterY) { return qMakePair(QVariant(data.center.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterZ) { return qMakePair(QVariant(data.center.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyRadius) { return qMakePair(QVariant(data.radius), RPropertyAttributes()); } else if (propertyTypeId == PropertyDiameter) { return qMakePair(QVariant(data.getDiameter()), RPropertyAttributes(RPropertyAttributes::Redundant)); } else if (propertyTypeId == PropertyCircumference) { return qMakePair(QVariant(data.getCircumference()), RPropertyAttributes(RPropertyAttributes::Redundant)); } else if (propertyTypeId == PropertyArea) { return qMakePair(QVariant(data.getArea()), RPropertyAttributes(RPropertyAttributes::Redundant)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RLayer::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyName) { return qMakePair(QVariant(name), RPropertyAttributes()); } if (propertyTypeId == PropertyFrozen) { return qMakePair(QVariant(frozen), RPropertyAttributes()); } if (propertyTypeId == PropertyLocked) { return qMakePair(QVariant(locked), RPropertyAttributes()); } if (propertyTypeId == PropertyColor) { QVariant v; v.setValue(color); return qMakePair(v, RPropertyAttributes()); } if (propertyTypeId == PropertyLinetype) { if (humanReadable) { if (getDocument() != NULL) { RPropertyAttributes attr; if (!noAttributes) { attr.setChoices(getDocument()->getLinetypeNames()); } QVariant v; QSharedPointer<RLinetype> lt = getDocument()->queryLinetype( linetype); v.setValue<RLinetype> (*lt.data()); return qMakePair(v, attr); // return qMakePair(QVariant(getDocument()->getLinetypeName( // linetype)), attr); } } else { return qMakePair(QVariant(linetype), RPropertyAttributes()); } } if (propertyTypeId == PropertyLineweight) { QVariant v; v.setValue(lineweight); return qMakePair(v, RPropertyAttributes()); } //return qMakePair(QVariant(), RPropertyAttributes()); return RObject::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimRadialEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityDimRadial), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyCenterPointX) { return qMakePair(QVariant(data.definitionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterPointY) { return qMakePair(QVariant(data.definitionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterPointZ) { return qMakePair(QVariant(data.definitionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyChordPointX) { return qMakePair(QVariant(data.chordPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyChordPointY) { return qMakePair(QVariant(data.chordPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyChordPointZ) { return qMakePair(QVariant(data.chordPoint.z), RPropertyAttributes()); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimLinearEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityDimLinear), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyExtensionPoint1X) { return qMakePair(QVariant(getData().extensionPoint1.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint1Y) { return qMakePair(QVariant(getData().extensionPoint1.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint1Z) { return qMakePair(QVariant(getData().extensionPoint1.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2X) { return qMakePair(QVariant(getData().extensionPoint2.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2Y) { return qMakePair(QVariant(getData().extensionPoint2.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionPoint2Z) { return qMakePair(QVariant(getData().extensionPoint2.z), RPropertyAttributes()); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimDiametricEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyChordPointX) { return qMakePair(QVariant(data.definitionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyChordPointY) { return qMakePair(QVariant(data.definitionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyChordPointZ) { return qMakePair(QVariant(data.definitionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyFarChordPointX) { return qMakePair(QVariant(data.chordPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyFarChordPointY) { return qMakePair(QVariant(data.chordPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyFarChordPointZ) { return qMakePair(QVariant(data.chordPoint.z), RPropertyAttributes()); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RArcEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyCenterX) { return qMakePair(QVariant(data.center.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterY) { return qMakePair(QVariant(data.center.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterZ) { return qMakePair(QVariant(data.center.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyRadius) { return qMakePair(QVariant(data.radius), RPropertyAttributes()); } else if (propertyTypeId == PropertyStartAngle) { return qMakePair(QVariant(data.startAngle), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyEndAngle) { return qMakePair(QVariant(data.endAngle), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyReversed) { return qMakePair(QVariant(data.reversed), RPropertyAttributes()); } else if (propertyTypeId == PropertyDiameter) { return qMakePair(QVariant(data.getDiameter()), RPropertyAttributes(RPropertyAttributes::Redundant)); } else if (propertyTypeId == PropertyLength) { return qMakePair(QVariant(data.getLength()), RPropertyAttributes(RPropertyAttributes::Redundant)); } else if (propertyTypeId == PropertySweepAngle) { return qMakePair(QVariant(data.getSweep()), RPropertyAttributes(RPropertyAttributes::Redundant|RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyArea) { return qMakePair(QVariant(data.getArea()), RPropertyAttributes(RPropertyAttributes::Redundant)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RSplineEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (!data.controlPoints.isEmpty() && data.fitPoints.isEmpty()) { if (propertyTypeId == PropertyControlPointNX) { QVariant v; v.setValue(RVector::getXList(data.controlPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyControlPointNY) { QVariant v; v.setValue(RVector::getYList(data.controlPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyControlPointNZ) { QVariant v; v.setValue(RVector::getZList(data.controlPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } } if (!data.fitPoints.isEmpty()) { if (propertyTypeId == PropertyFitPointNX) { QVariant v; v.setValue(RVector::getXList(data.fitPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyFitPointNY) { QVariant v; v.setValue(RVector::getYList(data.fitPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } else if (propertyTypeId == PropertyFitPointNZ) { QVariant v; v.setValue(RVector::getZList(data.fitPoints)); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } } if (!data.knotVector.isEmpty()) { if (propertyTypeId == PropertyKnotN) { QVariant v; v.setValue(data.knotVector); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List | RPropertyAttributes::ReadOnly)); } } if (propertyTypeId == PropertyPeriodic) { return qMakePair(QVariant(data.isPeriodic()), RPropertyAttributes()); } else if (propertyTypeId == PropertyDegree) { RPropertyAttributes attr; QSet<QString> choices; if (!data.hasFitPoints()) { choices.insert("2"); } choices.insert("3"); attr.setChoices(choices); return qMakePair(QVariant(QString("%1").arg(data.degree)), attr); } else if (propertyTypeId==PropertyLength) { return qMakePair(QVariant(data.getLength()), RPropertyAttributes(RPropertyAttributes::Redundant|RPropertyAttributes::ReadOnly)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RViewportEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyCenterX) { return qMakePair(QVariant(data.position.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterY) { return qMakePair(QVariant(data.position.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterZ) { return qMakePair(QVariant(data.position.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyWidth) { return qMakePair(QVariant(data.width), RPropertyAttributes()); } else if (propertyTypeId == PropertyHeight) { return qMakePair(QVariant(data.height), RPropertyAttributes()); } else if (propertyTypeId == PropertyScale) { return qMakePair(QVariant(data.scale), RPropertyAttributes()); } else if (propertyTypeId == PropertyRotation) { return qMakePair(QVariant(data.rotation), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyOn) { return qMakePair(QVariant(!data.isOff()), RPropertyAttributes()); } else if (propertyTypeId == PropertyViewCenterX) { return qMakePair(QVariant(data.viewCenter.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyViewCenterY) { return qMakePair(QVariant(data.viewCenter.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyViewTargetX) { return qMakePair(QVariant(data.viewTarget.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyViewTargetY) { return qMakePair(QVariant(data.viewTarget.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyViewTargetZ) { return qMakePair(QVariant(data.viewTarget.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyOverall) { return qMakePair(QVariant(data.overall), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> REllipseEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityEllipse), RPropertyAttributes( RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyCenterX) { return qMakePair(QVariant(data.center.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterY) { return qMakePair(QVariant(data.center.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyCenterZ) { return qMakePair(QVariant(data.center.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyMajorPointX) { return qMakePair(QVariant(data.majorPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyMajorPointY) { return qMakePair(QVariant(data.majorPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyMajorPointZ) { return qMakePair(QVariant(data.majorPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyRatio) { return qMakePair(QVariant(data.ratio), RPropertyAttributes()); } else if (propertyTypeId == PropertyStartParam) { return qMakePair(QVariant(data.startParam), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyEndParam) { return qMakePair(QVariant(data.endParam), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyStartAngle) { return qMakePair(QVariant(data.getStartAngle()), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyEndAngle) { return qMakePair(QVariant(data.getEndAngle()), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyReversed) { return qMakePair(QVariant(data.reversed), RPropertyAttributes()); } else if (propertyTypeId == PropertyStartPointX) { return qMakePair(QVariant(data.getStartPoint().x), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyStartPointY) { return qMakePair(QVariant(data.getStartPoint().y), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyStartPointZ) { return qMakePair(QVariant(data.getStartPoint().z), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyEndPointX) { return qMakePair(QVariant(data.getEndPoint().x), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyEndPointY) { return qMakePair(QVariant(data.getEndPoint().y), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyEndPointZ) { return qMakePair(QVariant(data.getEndPoint().z), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyCircumference) { return qMakePair(QVariant(data.getLength()), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> REntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(getType()), RPropertyAttributes()); } else if (propertyTypeId == PropertyBlock) { return qMakePair(QVariant(getData().getBlockId()), RPropertyAttributes()); } else if (propertyTypeId == PropertyLayer) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; if (!noAttributes) { // TODO: filter out locked layers: attr.setChoices(document->getLayerNames()); } return qMakePair(QVariant(document->getLayerName( getData().getLayerId())), attr); } } else { return qMakePair(QVariant(getData().getLayerId()), RPropertyAttributes()); } } else if (propertyTypeId == PropertyLinetype) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; // if (!noAttributes) { // attr.setChoices(document->getLinetypeNames()); // } QString desc = document->getLinetypeLabel(getData().getLinetypeId()); return qMakePair(QVariant(desc), attr); } } else { return qMakePair(QVariant(getData().getLinetypeId()), RPropertyAttributes()); } } else if (propertyTypeId == PropertyLinetypeScale) { return qMakePair(QVariant(getData().getLinetypeScale()), RPropertyAttributes()); } else if (propertyTypeId == PropertyLineweight) { QVariant v; v.setValue<RLineweight::Lineweight>(getData().getLineweight()); return qMakePair(v, RPropertyAttributes()); } else if (propertyTypeId == PropertyColor) { QVariant var; var.setValue<RColor> (getData().getColor()); return qMakePair(var, RPropertyAttributes()); } else if (propertyTypeId == PropertyDisplayedColor) { QVariant var; QStack<REntity*> stack; var.setValue<RColor> (getData().getColor(true, stack)); return qMakePair(var, RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyDrawOrder) { return qMakePair(QVariant(getData().getDrawOrder()), RPropertyAttributes()); } else if (propertyTypeId == PropertyMinX) { return qMakePair(QVariant(getBoundingBox().getMinimum().x), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyMinY) { return qMakePair(QVariant(getBoundingBox().getMinimum().y), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyMaxX) { return qMakePair(QVariant(getBoundingBox().getMaximum().x), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyMaxY) { return qMakePair(QVariant(getBoundingBox().getMaximum().y), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertySizeX) { return qMakePair(QVariant(getBoundingBox().getWidth()), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertySizeY) { return qMakePair(QVariant(getBoundingBox().getHeight()), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } return RObject::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RHatchEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertySolid) { //return qMakePair(QVariant(data.solid), RPropertyAttributes(RPropertyAttributes::AffectsOtherProperties)); return qMakePair(QVariant(data.solid), RPropertyAttributes()); } RPropertyAttributes::Option op = RPropertyAttributes::NoOptions; QString name = data.patternName; if (data.isSolid()) { op = RPropertyAttributes::ReadOnly; name = "SOLID"; } if (propertyTypeId == PropertyPatternName) { return qMakePair(QVariant(name), RPropertyAttributes(RPropertyAttributes::Pattern|op)); } else if (propertyTypeId == PropertyEntityPattern) { return qMakePair(QVariant(data.hasCustomPattern() ? QT_TRANSLATE_NOOP("REntity", "Yes") : QT_TRANSLATE_NOOP("REntity", "No")), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyScaleFactor) { return qMakePair(QVariant(data.scaleFactor), RPropertyAttributes(op)); } else if (propertyTypeId == PropertyAngle) { return qMakePair(QVariant(data.angle), RPropertyAttributes(RPropertyAttributes::Angle|op)); } else if (propertyTypeId == PropertyOriginX) { return qMakePair(QVariant(data.originPoint.x), RPropertyAttributes(op)); } else if (propertyTypeId == PropertyOriginY) { return qMakePair(QVariant(data.originPoint.y), RPropertyAttributes(op)); } if (propertyTypeId == PropertyVertexNX || propertyTypeId == PropertyVertexNY || propertyTypeId == PropertyVertexNZ) { QList<double> list; // add x,y or z of all reference points along the boundary to list of doubles: for (int i=0; i<data.boundary.size(); ++i) { QList<QSharedPointer<RShape> > loop = data.boundary.at(i); for (int k=0; k<loop.size(); ++k) { QSharedPointer<RShape> shape = loop.at(k); QList<RVector> pointList; QSharedPointer<RLine> line = shape.dynamicCast<RLine>(); if (!line.isNull()) { pointList.append(line->getStartPoint()); } QSharedPointer<RArc> arc = shape.dynamicCast<RArc>(); if (!arc.isNull()) { pointList.append(arc->getStartPoint()); } QSharedPointer<RCircle> circle = shape.dynamicCast<RCircle>(); if (!circle.isNull()) { pointList.append(circle->getCenter()); } QSharedPointer<REllipse> ellipseArc = shape.dynamicCast<REllipse>(); if (!ellipseArc.isNull()) { if (ellipseArc->isFullEllipse()) { pointList.append(ellipseArc->getCenter()); } else { pointList.append(ellipseArc->getStartPoint()); } } QSharedPointer<RSpline> spline = shape.dynamicCast<RSpline>(); if (!spline.isNull()) { // for splines, we add all control points for undo/redo: pointList.append(spline->getControlPoints()); pointList.removeLast(); } // add x,y or z component to double list: for (int n=0; n<pointList.size(); n++) { RVector vector = pointList.at(n); if (propertyTypeId == PropertyVertexNX) { list.append(vector.x); } else if (propertyTypeId == PropertyVertexNY) { list.append(vector.y); } else if (propertyTypeId == PropertyVertexNZ) { list.append(vector.z); } } //indexCounter++; } } QVariant v; v.setValue(list); return qMakePair(v, RPropertyAttributes(RPropertyAttributes::List)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RSolidEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyPoint1X) { return qMakePair(QVariant(data.getVertexAt(0).x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint1Y) { return qMakePair(QVariant(data.getVertexAt(0).y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint1Z) { return qMakePair(QVariant(data.getVertexAt(0).z), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint2X) { return qMakePair(QVariant(data.getVertexAt(1).x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint2Y) { return qMakePair(QVariant(data.getVertexAt(1).y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint2Z) { return qMakePair(QVariant(data.getVertexAt(1).z), RPropertyAttributes()); }else if (propertyTypeId == PropertyPoint3X) { return qMakePair(QVariant(data.getVertexAt(2).x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint3Y) { return qMakePair(QVariant(data.getVertexAt(2).y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint3Z) { return qMakePair(QVariant(data.getVertexAt(2).z), RPropertyAttributes()); }else if (propertyTypeId == PropertyPoint4X) { if (data.countVertices()<4) { return qMakePair(QVariant(), RPropertyAttributes()); } return qMakePair(QVariant(data.getVertexAt(3).x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint4Y) { if (data.countVertices()<4) { return qMakePair(QVariant(), RPropertyAttributes()); } return qMakePair(QVariant(data.getVertexAt(3).y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPoint4Z) { if (data.countVertices()<4) { return qMakePair(QVariant(), RPropertyAttributes()); } return qMakePair(QVariant(data.getVertexAt(3).z), RPropertyAttributes()); } else if (propertyTypeId==PropertyLength) { return qMakePair(QVariant(data.getLength()), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId==PropertyTotalLength) { return qMakePair(QVariant(data.getLength()), RPropertyAttributes(RPropertyAttributes::Sum)); } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RBlockReferenceEntity::getProperty( RPropertyTypeId& propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyPositionX) { return qMakePair(QVariant(data.position.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyPositionY) { return qMakePair(QVariant(data.position.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyPositionZ) { return qMakePair(QVariant(data.position.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleX) { return qMakePair(QVariant(data.scaleFactors.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleY) { return qMakePair(QVariant(data.scaleFactors.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyScaleZ) { return qMakePair(QVariant(data.scaleFactors.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyRotation) { return qMakePair(QVariant(data.rotation), RPropertyAttributes(RPropertyAttributes::Angle)); } else if (propertyTypeId == PropertyReferencedBlock) { if (humanReadable) { RDocument* document = getData().getDocument(); if (document != NULL) { RPropertyAttributes attr; // TODO if (!noAttributes) { QSet<QString> blockNames = document->getBlockNames(); QSet<QString> filtered; QSet<QString>::iterator it; for (it=blockNames.begin(); it!=blockNames.end(); it++) { if (!(*it).startsWith("*")) { filtered.insert(*it); } } attr.setChoices(filtered); } return qMakePair(QVariant(document->getBlockName( getData().getReferencedBlockId())), attr); } } else { return qMakePair(QVariant(getData().getReferencedBlockId()), RPropertyAttributes()); } } else if (propertyTypeId.isCustom()) { if (propertyTypeId.getCustomPropertyTitle()=="Attributes") { QString tag = propertyTypeId.getCustomPropertyName(); const RDocument* doc = getDocument(); if (doc!=NULL) { QSet<REntity::Id> childIds = doc->queryChildEntities(getId(), RS::EntityAttribute); QSet<REntity::Id>::iterator it; for (it=childIds.begin(); it!=childIds.end(); it++) { REntity::Id childId = *it; QSharedPointer<REntity> child = doc->queryEntityDirect(childId); if (child.isNull()) { continue; } QSet<RPropertyTypeId> childProperties = child->getPropertyTypeIds(); QSet<RPropertyTypeId>::iterator it2; for (it2=childProperties.begin(); it2!=childProperties.end(); it2++) { RPropertyTypeId pid = *it2; QPair<QVariant, RPropertyAttributes> p = child->getProperty(pid); if (p.second.isVisibleToParent() && pid.getCustomPropertyName()==tag) { //ret.insert(RPropertyTypeId(QT_TRANSLATE_NOOP("REntity", "Attributes"), p.first.toString())); return qMakePair(QVariant(p.first), RPropertyAttributes()); } } } } //document->queryChildEntities(getId()); //return qMakePair(QVariant("Dummy"), RPropertyAttributes()); } } return REntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RDimAngularEntity::getProperty( RPropertyTypeId propertyTypeId, bool humanReadable, bool noAttributes) { if (propertyTypeId == PropertyType) { return qMakePair(QVariant(RS::EntityDimAngular), RPropertyAttributes(RPropertyAttributes::ReadOnly)); } else if (propertyTypeId == PropertyExtensionLine1StartX) { return qMakePair(QVariant(data.extensionLine1Start.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine1StartY) { return qMakePair(QVariant(data.extensionLine1Start.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine1StartZ) { return qMakePair(QVariant(data.extensionLine1Start.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine1EndX) { return qMakePair(QVariant(data.extensionLine1End.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine1EndY) { return qMakePair(QVariant(data.extensionLine1End.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine1EndZ) { return qMakePair(QVariant(data.extensionLine1End.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2StartX) { return qMakePair(QVariant(data.extensionLine2Start.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2StartY) { return qMakePair(QVariant(data.extensionLine2Start.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2StartZ) { return qMakePair(QVariant(data.extensionLine2Start.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2EndX) { return qMakePair(QVariant(data.definitionPoint.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2EndY) { return qMakePair(QVariant(data.definitionPoint.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyExtensionLine2EndZ) { return qMakePair(QVariant(data.definitionPoint.z), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimArcPositionX) { return qMakePair(QVariant(data.dimArcPosition.x), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimArcPositionY) { return qMakePair(QVariant(data.dimArcPosition.y), RPropertyAttributes()); } else if (propertyTypeId == PropertyDimArcPositionZ) { return qMakePair(QVariant(data.dimArcPosition.z), RPropertyAttributes()); } return RDimensionEntity::getProperty(propertyTypeId, humanReadable, noAttributes); }
QPair<QVariant, RPropertyAttributes> RUcs::getProperty( RPropertyTypeId propertyTypeId, bool /*humanReadable*/, bool /*noAttributes*/) { if (propertyTypeId == PropertyName) { return qMakePair(QVariant(name), RPropertyAttributes()); } if (propertyTypeId == PropertyOriginX) { return qMakePair(QVariant(origin.x), RPropertyAttributes()); } if (propertyTypeId == PropertyOriginY) { return qMakePair(QVariant(origin.y), RPropertyAttributes()); } if (propertyTypeId == PropertyOriginZ) { return qMakePair(QVariant(origin.z), RPropertyAttributes()); } if (propertyTypeId == PropertyXAxisDirectionX) { return qMakePair(QVariant(xAxisDirection.x), RPropertyAttributes()); } if (propertyTypeId == PropertyXAxisDirectionY) { return qMakePair(QVariant(xAxisDirection.y), RPropertyAttributes()); } if (propertyTypeId == PropertyXAxisDirectionZ) { return qMakePair(QVariant(xAxisDirection.z), RPropertyAttributes()); } if (propertyTypeId == PropertyYAxisDirectionX) { return qMakePair(QVariant(yAxisDirection.x), RPropertyAttributes()); } if (propertyTypeId == PropertyYAxisDirectionY) { return qMakePair(QVariant(yAxisDirection.y), RPropertyAttributes()); } if (propertyTypeId == PropertyYAxisDirectionZ) { return qMakePair(QVariant(yAxisDirection.z), RPropertyAttributes()); } return qMakePair(QVariant(), RPropertyAttributes()); }