void RS_ActionDimDiametric::trigger() { RS_PreviewActionInterface::trigger(); preparePreview(); if (entity) { RS_DimDiametric* newEntity = nullptr; newEntity = new RS_DimDiametric(container, *data, *edata); newEntity->setLayerToActive(); newEntity->setPenToActive(); newEntity->update(); container->addEntity(newEntity); // upd. undo list: if (document) { document->startUndoCycle(); document->addUndoable(newEntity); document->endUndoCycle(); } RS_Vector rz = graphicView->getRelativeZero(); graphicView->redraw(RS2::RedrawDrawing); graphicView->moveRelativeZero(rz); RS_Snapper::finish(); } else { RS_DEBUG->print("RS_ActionDimDiametric::trigger:" " Entity is nullptr\n"); } }