1 /****************************************************************************
2 ** $Id: rs_actiontoolregeneratedimensions.cpp 1074 2004-02-29 00:30:50Z andrew $
4 ** Copyright (C) 2001-2003 RibbonSoft. All rights reserved.
6 ** This file is part of the qcadlib Library project.
8 ** This file may be distributed and/or modified under the terms of the
9 ** GNU General Public License version 2 as published by the Free Software
10 ** Foundation and appearing in the file LICENSE.GPL included in the
11 ** packaging of this file.
13 ** Licensees holding valid qcadlib Professional Edition licenses may use
14 ** this file in accordance with the qcadlib Commercial License
15 ** Agreement provided with the Software.
17 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
18 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20 ** See http://www.ribbonsoft.com for further details.
22 ** Contact info@ribbonsoft.com if any conditions of this licensing are
25 **********************************************************************/
27 #include "rs_actiontoolregeneratedimensions.h"
29 #include "rs_information.h"
30 #include "rs_dimension.h"
32 RS_ActionToolRegenerateDimensions::RS_ActionToolRegenerateDimensions(RS_EntityContainer& container,
33 RS_GraphicView& graphicView):
34 RS_ActionInterface("Tool Regen Dim", container, graphicView)
38 QAction * RS_ActionToolRegenerateDimensions::createGUIAction(RS2::ActionType /*type*/, QObject * /*parent*/)
40 QAction * action = new QAction(tr("&Regenerate Dimension Entities"), 0);
41 // QAction* action = new QAction(tr("Regenerate Dimension Entities"),
42 // tr("&Regenerate Dimension Entities"),
43 // QKeySequence(), NULL);
44 action->setStatusTip(tr("Regenerates all Dimension Entities"));
49 void RS_ActionToolRegenerateDimensions::init(int status)
51 RS_ActionInterface::init(status);
56 void RS_ActionToolRegenerateDimensions::trigger()
58 RS_DEBUG->print("RS_ActionToolRegenerateDimensions::trigger()");
61 for (RS_Entity* e = container->firstEntity(RS2::ResolveNone);
63 e = container->nextEntity(RS2::ResolveNone))
65 if (RS_Information::isDimension(e->rtti()) && e->isVisible())
68 if (((RS_Dimension*)e)->getLabel()==";;")
70 ((RS_Dimension*)e)->setLabel("");
73 ((RS_Dimension*)e)->update(true);
79 graphicView->redraw();
80 RS_DIALOGFACTORY->commandMessage(tr("Regenerated %1 dimension entities").arg(num));
84 RS_DIALOGFACTORY->commandMessage(tr("No dimension entities found"));