X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Factions%2Frs_actionmodifydeletequick.cpp;h=f8dc8af0e21bb4f1c261eb6cd4006491caa7716e;hb=3f46c180da0806c9c263e6d87d0f1404632402da;hp=1ffb1272abf57436e710a8bd8a5ec627f60b7ba6;hpb=16ce54abf01ca3032e42a5bb11a4afcf9014dcca;p=architektonas diff --git a/src/actions/rs_actionmodifydeletequick.cpp b/src/actions/rs_actionmodifydeletequick.cpp index 1ffb127..f8dc8af 100644 --- a/src/actions/rs_actionmodifydeletequick.cpp +++ b/src/actions/rs_actionmodifydeletequick.cpp @@ -1,55 +1,31 @@ -/**************************************************************************** -** $Id: rs_actionmodifydeletequick.cpp 1144 2004-08-18 17:07:54Z 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_actionmodifydeletequick.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/04/2010 Added this text. :-) +// #include "rs_actionmodifydeletequick.h" -#include "rs_actionselectsingle.h" -#include "rs_snapper.h" -#include "rs_point.h" +#include "rs_dialogfactory.h" +#include "rs_graphicview.h" RS_ActionModifyDeleteQuick::RS_ActionModifyDeleteQuick( - RS_EntityContainer& container, RS_GraphicView& graphicView): + RS_EntityContainer & container, RS_GraphicView & graphicView): RS_ActionInterface("Quick Delete Entities", container, graphicView) { - en = NULL; + en = NULL; } -QAction * RS_ActionModifyDeleteQuick::createGUIAction(RS2::ActionType /*type*/, QObject * parent) +RS_ActionModifyDeleteQuick::~RS_ActionModifyDeleteQuick() { - QAction * action = new QAction(tr("&Delete selected"), parent); -#ifdef __APPLE__ - action->setShortcut(Qt::Key_Backspace); -#else - action->setShortcut(Qt::Key_Delete); -#endif -// QAction* action = new QAction(tr("Delete selected"), -// tr("&Delete selected"), -// s, parent); - action->setStatusTip(tr("Delete selected entities")); - return action; } /** @@ -57,60 +33,63 @@ QAction * RS_ActionModifyDeleteQuick::createGUIAction(RS2::ActionType /*type*/, */ void RS_ActionModifyDeleteQuick::trigger() { - RS_DEBUG->print("RS_ActionModifyDeleteQuick::trigger()"); + RS_DEBUG->print("RS_ActionModifyDeleteQuick::trigger()"); - if (en!=NULL) + if (en != NULL) { - RS_DEBUG->print("Entity found"); - RS_EntityContainer* parent = en->getParent(); - if (parent!=NULL) { - en->setSelected(false); - graphicView->deleteEntity(en); - en->changeUndoState(); - - if (document) { - document->startUndoCycle(); - document->addUndoable(en); - document->endUndoCycle(); - } - } - - RS_DIALOGFACTORY->updateSelectionWidget(container->countSelected()); - } else { - RS_DEBUG->print("RS_ActionModifyDeleteQuick::mousePressEvent:" - " Entity is NULL\n"); - } + RS_DEBUG->print("Entity found"); + RS_EntityContainer * parent = en->getParent(); + + if (parent != NULL) + { + en->setSelected(false); + graphicView->deleteEntity(en); + en->changeUndoState(); + + if (document) + { + document->startUndoCycle(); + document->addUndoable(en); + document->endUndoCycle(); + } + } + + RS_DIALOGFACTORY->updateSelectionWidget(container->countSelected()); + } + else + RS_DEBUG->print("RS_ActionModifyDeleteQuick::mousePressEvent:" + " Entity is NULL\n"); } - - -void RS_ActionModifyDeleteQuick::mouseReleaseEvent(QMouseEvent* e) { - if (RS2::qtToRsButtonState(e->button())==RS2::RightButton) { - init(getStatus()-1); - } else { - en = catchEntity(e); - trigger(); - } +void RS_ActionModifyDeleteQuick::mouseReleaseEvent(QMouseEvent * e) +{ + if (e->button() == Qt::RightButton) + init(getStatus() - 1); + else + { + en = catchEntity(e); + trigger(); + } } - - -void RS_ActionModifyDeleteQuick::updateMouseButtonHints() { - switch (getStatus()) { - case 0: - RS_DIALOGFACTORY->updateMouseWidget(tr("Pick entity to delete"), - tr("Cancel")); - break; - default: - RS_DIALOGFACTORY->updateMouseWidget("", ""); - break; - } +void RS_ActionModifyDeleteQuick::updateMouseButtonHints() +{ + switch (getStatus()) + { + case 0: + RS_DIALOGFACTORY->updateMouseWidget(tr("Pick entity to delete"), + tr("Cancel")); + break; + + default: + RS_DIALOGFACTORY->updateMouseWidget("", ""); + break; + } } - - -void RS_ActionModifyDeleteQuick::updateMouseCursor() { - graphicView->setMouseCursor(RS2::DelCursor); +void RS_ActionModifyDeleteQuick::updateMouseCursor() +{ + graphicView->setMouseCursor(RS2::DelCursor); } // EOF