1 #ifndef RS_ACTIONDRAWSPLINE_H
2 #define RS_ACTIONDRAWSPLINE_H
5 #include "rs_previewactioninterface.h"
9 * This action class can handle user events to draw splines.
11 * @author Andrew Mustun
13 class RS_ActionDrawSpline: public RS_PreviewActionInterface
20 SetStartpoint, /**< Setting the startpoint. */
21 SetNextPoint /**< Setting the next point. */
25 RS_ActionDrawSpline(RS_EntityContainer & container, GraphicView & graphicView);
26 virtual ~RS_ActionDrawSpline();
28 virtual RS2::ActionType rtti();
29 //static QAction * createGUIAction(RS2::ActionType /*type*/, QObject * /*parent*/);
31 virtual void init(int status = 0);
32 virtual void trigger();
33 virtual void mouseMoveEvent(QMouseEvent * e);
34 virtual void mouseReleaseEvent(QMouseEvent * e);
35 virtual void coordinateEvent(Vector * e);
36 virtual void commandEvent(RS_CommandEvent * e);
37 virtual QStringList getAvailableCommands();
38 virtual void showOptions();
39 virtual void hideOptions();
40 virtual void updateMouseButtonHints();
41 virtual void updateMouseCursor();
42 virtual void updateToolBar();
46 void setDegree(int deg);
48 void setClosed(bool c);
53 * Spline data defined so far.
58 * Polyline entity we're working on.
63 * Point history (for undo)
65 QList<Vector *> history;