1 #ifndef RS_ACTIONDIMLINEAR_H
2 #define RS_ACTIONDIMLINEAR_H
4 #include "rs_actiondimension.h"
5 #include "rs_dimlinear.h"
8 * This action class can handle user events to draw
11 * @author Andrew Mustun
13 class RS_ActionDimLinear: public RS_ActionDimension
17 * Varitions of this action.
29 SetExtPoint1, /**< Setting the 1st ext point. */
30 SetExtPoint2, /**< Setting the 2nd ext point. */
31 SetDefPoint, /**< Setting the common def point. */
32 SetText, /**< Setting the text label in the command line. */
33 SetAngle /**< Setting the angle in the command line. */
37 RS_ActionDimLinear(RS_EntityContainer & container, GraphicView & graphicView, double angle = 0.0, bool fixedAngle = false);
38 ~RS_ActionDimLinear();
40 virtual RS2::ActionType rtti();
42 virtual void trigger();
43 void preparePreview();
44 virtual void mouseMoveEvent(QMouseEvent * e);
45 virtual void mouseReleaseEvent(QMouseEvent * e);
46 virtual void coordinateEvent(Vector * e);
47 virtual void commandEvent(RS_CommandEvent * e);
48 virtual QStringList getAvailableCommands();
49 virtual void hideOptions();
50 virtual void showOptions();
51 virtual void updateMouseButtonHints();
53 void setAngle(double a);
58 * Aligned dimension data.
60 RS_DimLinearData edata;
66 /** Last status before entering text or angle. */