-// rs_actiondrawcircle3p.cpp
+// actiondrawcircle3p.cpp
//
// Part of the Architektonas Project
// Originally part of QCad Community Edition by Andrew Mustun
// JLH 06/03/2010 Added this text. :-)
//
-#include "rs_actiondrawcircle3p.h"
+#include "actiondrawcircle3p.h"
#include "rs_commandevent.h"
#include "rs_dialogfactory.h"
#include "graphicview.h"
#include "rs_preview.h"
-RS_ActionDrawCircle3P::RS_ActionDrawCircle3P(RS_EntityContainer & container, GraphicView & graphicView): RS_PreviewActionInterface("Draw circles",
- container, graphicView)
+ActionDrawCircle3P::ActionDrawCircle3P(RS_EntityContainer & container,
+ GraphicView & graphicView): ActionInterface("Draw circles",
+ container, graphicView)
{
reset();
}
-RS_ActionDrawCircle3P::~RS_ActionDrawCircle3P()
+ActionDrawCircle3P::~ActionDrawCircle3P()
{
}
-void RS_ActionDrawCircle3P::reset()
+void ActionDrawCircle3P::reset()
{
data.reset();
point1 = Vector(false);
point3 = Vector(false);
}
-void RS_ActionDrawCircle3P::init(int status)
+void ActionDrawCircle3P::init(int status)
{
- RS_PreviewActionInterface::init(status);
+ ActionInterface::init(status);
reset();
}
-void RS_ActionDrawCircle3P::trigger()
+void ActionDrawCircle3P::trigger()
{
- RS_PreviewActionInterface::trigger();
+ ActionInterface::trigger();
preparePreview();
if (data.isValid())
{
- RS_Circle * circle = new RS_Circle(container,
- data);
+ RS_Circle * circle = new RS_Circle(container, data);
circle->setLayerToActive();
circle->setPenToActive();
container->addEntity(circle);
// upd. undo list:
- if (document != NULL)
+ if (document)
{
document->startUndoCycle();
document->addUndoable(circle);
document->endUndoCycle();
}
+
deleteSnapper();
Vector rz = graphicView->getRelativeZero();
graphicView->moveRelativeZero(Vector(0.0, 0.0));
RS_DIALOGFACTORY->requestWarningDialog(tr("Invalid circle data."));
}
-void RS_ActionDrawCircle3P::preparePreview()
+void ActionDrawCircle3P::preparePreview()
{
data.reset();
if (point1.valid && point2.valid && point3.valid)
{
RS_Circle circle(NULL, data);
- bool suc = circle.createFrom3P(point1, point2, point3);
+ bool success = circle.createFrom3P(point1, point2, point3);
- if (suc)
+ if (success)
data = circle.getData();
}
}
-void RS_ActionDrawCircle3P::mouseMoveEvent(QMouseEvent * e)
+void ActionDrawCircle3P::mouseMoveEvent(QMouseEvent * e)
{
Vector mouse = snapPoint(e);
if (data.isValid())
{
- RS_Circle * circle = new RS_Circle(preview, data);
-
- deletePreview();
- clearPreview();
- preview->addEntity(circle);
- drawPreview();
+// RS_Circle * circle = new RS_Circle(preview, data);
+//
+// deletePreview();
+// clearPreview();
+// preview->addEntity(circle);
+// drawPreview();
}
break;
}
}
-void RS_ActionDrawCircle3P::mouseReleaseEvent(QMouseEvent * e)
+void ActionDrawCircle3P::mouseReleaseEvent(QMouseEvent * e)
{
-// if (RS2::qtToRsButtonState(e->button())==RS2::LeftButton)
if (e->button() == Qt::LeftButton)
{
Vector ce(snapPoint(e));
coordinateEvent(&ce);
}
-// else if (RS2::qtToRsButtonState(e->button())==RS2::RightButton)
else if (e->button() == Qt::RightButton)
{
deletePreview();
}
}
-void RS_ActionDrawCircle3P::coordinateEvent(Vector * e)
+void ActionDrawCircle3P::coordinateEvent(Vector * e)
{
if (e == NULL)
return;
}
}
-void RS_ActionDrawCircle3P::commandEvent(RS_CommandEvent * e)
+void ActionDrawCircle3P::commandEvent(RS_CommandEvent * e)
{
QString c = e->getCommand().toLower();
}
}
-QStringList RS_ActionDrawCircle3P::getAvailableCommands()
+QStringList ActionDrawCircle3P::getAvailableCommands()
{
QStringList cmd;
return cmd;
}
-void RS_ActionDrawCircle3P::updateMouseButtonHints()
+void ActionDrawCircle3P::updateMouseButtonHints()
{
switch (getStatus())
{
case SetPoint1:
- RS_DIALOGFACTORY->updateMouseWidget(tr("Specify first point"),
- tr("Cancel"));
+ RS_DIALOGFACTORY->updateMouseWidget(tr("Specify first point"), tr("Cancel"));
break;
case SetPoint2:
- RS_DIALOGFACTORY->updateMouseWidget(tr("Specify second point"),
- tr("Back"));
+ RS_DIALOGFACTORY->updateMouseWidget(tr("Specify second point"), tr("Back"));
break;
case SetPoint3:
- RS_DIALOGFACTORY->updateMouseWidget(tr("Specify third point"),
- tr("Back"));
+ RS_DIALOGFACTORY->updateMouseWidget(tr("Specify third point"), tr("Back"));
break;
default:
}
}
-void RS_ActionDrawCircle3P::updateMouseCursor()
+void ActionDrawCircle3P::updateMouseCursor()
{
graphicView->setMouseCursor(RS2::CadCursor);
}
-void RS_ActionDrawCircle3P::updateToolBar()
+void ActionDrawCircle3P::updateToolBar()
{
if (!isFinished())
RS_DIALOGFACTORY->requestToolBar(RS2::ToolBarSnap);
else
RS_DIALOGFACTORY->requestToolBar(RS2::ToolBarCircles);
}
-
-// EOF
-