]> Shamusworld >> Repos - architektonas/blob - src/actions/actiondimaligned.h
Bugfixes related to removing Snapper class.
[architektonas] / src / actions / actiondimaligned.h
1 #ifndef __ACTIONDIMALIGNED_H__
2 #define __ACTIONDIMALIGNED_H__
3
4 #include "actiondimension.h"
5 #include "dimaligned.h"
6
7 /**
8  * This action class can handle user events to draw
9  * aligned dimensions.
10  *
11  * @author James Hammons
12  * @author Andrew Mustun
13  */
14 class ActionDimAligned: public ActionDimension
15 {
16         public:
17                 /**
18                  * Action States.
19                  */
20                 enum Status {
21                         SetExtPoint1,    /**< Setting the 1st ext point.  */
22                         SetExtPoint2,    /**< Setting the 2nd ext point. */
23                         SetDefPoint,     /**< Setting the common def point */
24                         SetText          /**< Setting the text label in command line */
25                 };
26
27         public:
28                 ActionDimAligned(EntityContainer & container, GraphicView & graphicView);
29                 ~ActionDimAligned();
30
31                 virtual RS2::ActionType rtti();
32                 virtual void reset();
33                 virtual void trigger();
34                 void preparePreview();
35                 virtual void mouseMoveEvent(QMouseEvent * e);
36                 virtual void mouseReleaseEvent(QMouseEvent * e);
37                 virtual void coordinateEvent(Vector * e);
38                 virtual void commandEvent(CommandEvent * e);
39                 virtual QStringList getAvailableCommands();
40                 virtual void hideOptions();
41                 virtual void showOptions();
42                 virtual void updateMouseButtonHints();
43
44         protected:
45                 /**
46                  * Aligned dimension data.
47                  */
48                 DimAlignedData edata;
49
50                 /** Last status before entering text. */
51                 Status lastStatus;
52 };
53
54 #endif  // __ACTIONDIMALIGNED_H__