/*! * \brief TextAnnotation::duplicate * Creates a duplicate of this object. */ void TextAnnotation::duplicate() { TextAnnotation *pTextAnnotation = new TextAnnotation("", false, mpGraphicsView); QPointF gridStep(mpGraphicsView->getCoOrdinateSystem()->getHorizontalGridStep(), mpGraphicsView->getCoOrdinateSystem()->getVerticalGridStep()); pTextAnnotation->setOrigin(mOrigin + gridStep); pTextAnnotation->setRotationAngle(mRotation); pTextAnnotation->initializeTransformation(); pTextAnnotation->setLineColor(getLineColor()); pTextAnnotation->setFillColor(getFillColor()); pTextAnnotation->setLinePattern(getLinePattern()); pTextAnnotation->setFillPattern(getFillPattern()); pTextAnnotation->setLineThickness(getLineThickness()); pTextAnnotation->setExtents(getExtents()); pTextAnnotation->setTextString(getTextString()); pTextAnnotation->setFontSize(getFontSize()); pTextAnnotation->setFontName(getFontName()); pTextAnnotation->setTextStyles(getTextStyles()); pTextAnnotation->setTextHorizontalAlignment(getTextHorizontalAlignment()); pTextAnnotation->drawCornerItems(); pTextAnnotation->setCornerItemsPassive(); pTextAnnotation->update(); mpGraphicsView->addClassAnnotation(); mpGraphicsView->setCanAddClassAnnotation(true); }
void LineLayer::setLinePattern(PropertyValue<std::string> value) { if (value == getLinePattern()) return; auto impl_ = mutableImpl(); impl_->paint.template get<LinePattern>().value = value; baseImpl = std::move(impl_); observer->onLayerChanged(*this); }
void RectangleAnnotation::duplicate() { RectangleAnnotation *pRectangleAnnotation = new RectangleAnnotation("", false, mpGraphicsView); QPointF gridStep(mpGraphicsView->getCoOrdinateSystem()->getHorizontalGridStep(), mpGraphicsView->getCoOrdinateSystem()->getVerticalGridStep()); pRectangleAnnotation->setOrigin(mOrigin + gridStep); pRectangleAnnotation->setRotationAngle(mRotation); pRectangleAnnotation->initializeTransformation(); pRectangleAnnotation->setLineColor(getLineColor()); pRectangleAnnotation->setFillColor(getFillColor()); pRectangleAnnotation->setLinePattern(getLinePattern()); pRectangleAnnotation->setFillPattern(getFillPattern()); pRectangleAnnotation->setLineThickness(getLineThickness()); pRectangleAnnotation->setBorderPattern(getBorderPattern()); pRectangleAnnotation->setExtents(getExtents()); pRectangleAnnotation->setRadius(getRadius()); pRectangleAnnotation->drawCornerItems(); pRectangleAnnotation->setCornerItemsPassive(); pRectangleAnnotation->update(); mpGraphicsView->addClassAnnotation(); mpGraphicsView->setCanAddClassAnnotation(true); }
void LineLayer::setLinePattern(PropertyValue<std::string> value, const optional<std::string>& klass) { if (value == getLinePattern(klass)) return; impl->paint.linePattern.set(value, klass); impl->observer->onLayerPaintPropertyChanged(*this); }