X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Factions%2Frs_actiondimleader.cpp;h=8d625d9d894b16bd019d4990202c455d60b87fe2;hb=3f46c180da0806c9c263e6d87d0f1404632402da;hp=d1793d1800d7c3d89d3d1ed34c9d910a2afd6f8a;hpb=16ce54abf01ca3032e42a5bb11a4afcf9014dcca;p=architektonas diff --git a/src/actions/rs_actiondimleader.cpp b/src/actions/rs_actiondimleader.cpp index d1793d1..8d625d9 100644 --- a/src/actions/rs_actiondimleader.cpp +++ b/src/actions/rs_actiondimleader.cpp @@ -1,35 +1,24 @@ -/**************************************************************************** -** $Id: rs_actiondimleader.cpp 1134 2004-07-13 23:26:13Z andrew $ -** -** Copyright (C) 2001-2003 RibbonSoft. All rights reserved. -** -** This file is part of the qcadlib Library project. -** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** Licensees holding valid qcadlib Professional Edition licenses may use -** this file in accordance with the qcadlib Commercial License -** Agreement provided with the Software. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -** -** See http://www.ribbonsoft.com for further details. -** -** Contact info@ribbonsoft.com if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ +// rs_actiondimleader.cpp +// +// Part of the Architektonas Project +// Originally part of QCad Community Edition by Andrew Mustun +// Extensively rewritten and refactored by James L. Hammons +// (C) 2010 Underground Software +// +// JLH = James L. Hammons +// +// Who When What +// --- ---------- ----------------------------------------------------------- +// JLH 06/03/2010 Added this text. :-) +// #include "rs_actiondimleader.h" -#include "rs_snapper.h" +#include "rs_dialogfactory.h" +#include "rs_graphicview.h" +#include "rs_preview.h" -RS_ActionDimLeader::RS_ActionDimLeader(RS_EntityContainer & container, - RS_GraphicView & graphicView): +RS_ActionDimLeader::RS_ActionDimLeader(RS_EntityContainer & container, RS_GraphicView & graphicView): RS_PreviewActionInterface("Draw leaders", container, graphicView) { reset(); @@ -44,16 +33,6 @@ RS_ActionDimLeader::~RS_ActionDimLeader() return RS2::ActionDimLeader; } -QAction * RS_ActionDimLeader::createGUIAction(RS2::ActionType /*type*/, QObject * /*parent*/) -{ - QAction * action = new QAction(tr("&Leader"), 0); -// QAction* action = new QAction(tr("Leader"), tr("&Leader"), -// QKeySequence(), NULL); - action->setStatusTip(tr("Leader Dimension")); - - return action; -} - void RS_ActionDimLeader::reset() { //data = RS_LineData(Vector(false), Vector(false)); @@ -81,7 +60,7 @@ void RS_ActionDimLeader::trigger() // for(Vector * v=points.first(); v!=NULL; v=points.next()) // leader->addVertex(*v); - for(int i=0; iaddVertex(*(points[i])); container->addEntity(leader); @@ -113,7 +92,7 @@ void RS_ActionDimLeader::mouseMoveEvent(QMouseEvent * e) Vector mouse = snapPoint(e); - if (getStatus()==SetEndpoint && points.last()!=NULL) + if (getStatus() == SetEndpoint && points.last() != NULL) { deletePreview(); clearPreview(); @@ -122,7 +101,7 @@ void RS_ActionDimLeader::mouseMoveEvent(QMouseEvent * e) Vector last(false); // for(Vector * v=points.first(); v!=NULL; v=points.next()) - for(int i=0; ibutton()) == RS2::LeftButton) + if (e->button() == Qt::LeftButton) { - RS_CoordinateEvent ce(snapPoint(e)); + Vector ce(snapPoint(e)); coordinateEvent(&ce); } - else if (RS2::qtToRsButtonState(e->button()) == RS2::RightButton) + else if (e->button() == Qt::RightButton) { if (getStatus() == SetEndpoint) { @@ -174,12 +153,12 @@ void RS_ActionDimLeader::keyPressEvent(QKeyEvent * e) } } -void RS_ActionDimLeader::coordinateEvent(RS_CoordinateEvent * e) +void RS_ActionDimLeader::coordinateEvent(Vector * e) { if (e == NULL) return; - Vector mouse = e->getCoordinate(); + Vector mouse = *e; switch (getStatus()) { @@ -212,10 +191,8 @@ void RS_ActionDimLeader::commandEvent(RS_CommandEvent * e) if (checkCommand("help", c)) { if (RS_DIALOGFACTORY != NULL) - { RS_DIALOGFACTORY->commandMessage(msgAvailableCommands() + getAvailableCommands().join(", ")); - } return; } @@ -246,9 +223,11 @@ void RS_ActionDimLeader::updateMouseButtonHints() case SetStartpoint: RS_DIALOGFACTORY->updateMouseWidget(tr("Specify target point"), tr("Cancel")); break; + case SetEndpoint: RS_DIALOGFACTORY->updateMouseWidget(tr("Specify next point"), tr("Finish")); break; + default: RS_DIALOGFACTORY->updateMouseWidget("", ""); break; @@ -285,3 +264,4 @@ void RS_ActionDimLeader::updateToolBar() RS_DIALOGFACTORY->requestToolBar(RS2::ToolBarDim); } } +