1 // rs_actionmodifydeletequick.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/04/2010 Added this text. :-)
15 #include "rs_actionmodifydeletequick.h"
17 #include "rs_dialogfactory.h"
18 #include "graphicview.h"
20 RS_ActionModifyDeleteQuick::RS_ActionModifyDeleteQuick(
21 RS_EntityContainer & container, GraphicView & graphicView):
22 RS_ActionInterface("Quick Delete Entities", container, graphicView)
27 RS_ActionModifyDeleteQuick::~RS_ActionModifyDeleteQuick()
32 * Deletes all entities that were selected.
34 void RS_ActionModifyDeleteQuick::trigger()
36 RS_DEBUG->print("RS_ActionModifyDeleteQuick::trigger()");
40 RS_DEBUG->print("Entity found");
41 RS_EntityContainer * parent = en->getParent();
45 en->setSelected(false);
46 graphicView->deleteEntity(en);
47 en->changeUndoState();
51 document->startUndoCycle();
52 document->addUndoable(en);
53 document->endUndoCycle();
57 RS_DIALOGFACTORY->updateSelectionWidget(container->countSelected());
60 RS_DEBUG->print("RS_ActionModifyDeleteQuick::mousePressEvent:"
64 void RS_ActionModifyDeleteQuick::mouseReleaseEvent(QMouseEvent * e)
66 if (e->button() == Qt::RightButton)
67 init(getStatus() - 1);
75 void RS_ActionModifyDeleteQuick::updateMouseButtonHints()
80 RS_DIALOGFACTORY->updateMouseWidget(tr("Pick entity to delete"),
85 RS_DIALOGFACTORY->updateMouseWidget("", "");
90 void RS_ActionModifyDeleteQuick::updateMouseCursor()
92 graphicView->setMouseCursor(RS2::DelCursor);