1 #ifndef RS_ACTIONDRAWARCTANGENTIAL_H
2 #define RS_ACTIONDRAWARCTANGENTIAL_H
4 #include "rs_previewactioninterface.h"
11 * This action class can handle user events to draw
12 * arcs with three points given.
14 * @author Andrew Mustun
16 class RS_ActionDrawArcTangential: public RS_PreviewActionInterface
23 SetBaseEntity, /**< Setting base entity. */
24 SetEndAngle /**< Setting end angle. */
28 RS_ActionDrawArcTangential(RS_EntityContainer & container, RS_GraphicView & graphicView);
29 ~RS_ActionDrawArcTangential();
31 virtual RS2::ActionType rtti();
33 virtual void init(int status = 0);
34 virtual void trigger();
35 void preparePreview();
36 virtual void mouseMoveEvent(QMouseEvent * e);
37 virtual void mouseReleaseEvent(QMouseEvent * e);
38 virtual void coordinateEvent(Vector * e);
39 virtual void commandEvent(RS_CommandEvent * e);
40 virtual QStringList getAvailableCommands();
41 virtual void hideOptions();
42 virtual void showOptions();
43 virtual void updateMouseButtonHints();
44 virtual void updateMouseCursor();
45 virtual void updateToolBar();
46 void setRadius(double r);
53 RS_AtomicEntity * baseEntity;
55 * Start point of base entity clicked?
59 * Point that determines end angle.
63 * Arc data calculated.