1 // rs_actiontoolregeneratedimensions.cpp
3 // Part of the Architektonas Project
4 // Originally part of QCad Community Edition by Andrew Mustun
5 // Extensively rewritten and refactored by James L. Hammons
6 // (C) 2010 Underground Software
8 // JLH = James L. Hammons <jlhamm@acm.org>
11 // --- ---------- -----------------------------------------------------------
12 // JLH 06/05/2010 Added this text. :-)
15 #include "rs_actiontoolregeneratedimensions.h"
17 #include "rs_dialogfactory.h"
18 #include "rs_dimension.h"
19 #include "graphicview.h"
20 #include "rs_information.h"
22 RS_ActionToolRegenerateDimensions::RS_ActionToolRegenerateDimensions(RS_EntityContainer & container, GraphicView & graphicView):
23 RS_ActionInterface("Tool Regen Dim", container, graphicView)
27 RS_ActionToolRegenerateDimensions::~RS_ActionToolRegenerateDimensions()
31 void RS_ActionToolRegenerateDimensions::init(int status)
33 RS_ActionInterface::init(status);
37 void RS_ActionToolRegenerateDimensions::trigger()
39 RS_DEBUG->print("RS_ActionToolRegenerateDimensions::trigger()");
43 for(RS_Entity * e = container->firstEntity(RS2::ResolveNone);
44 e != NULL; e = container->nextEntity(RS2::ResolveNone))
46 if (RS_Information::isDimension(e->rtti()) && e->isVisible())
50 if (((RS_Dimension *)e)->getLabel() == ";;")
51 ((RS_Dimension *)e)->setLabel("");
53 ((RS_Dimension *)e)->update(true);
59 graphicView->redraw();
60 RS_DIALOGFACTORY->commandMessage(tr("Regenerated %1 dimension entities").arg(num));
63 RS_DIALOGFACTORY->commandMessage(tr("No dimension entities found"));