]> Shamusworld >> Repos - architektonas/blob - src/actions/actiondimension.h
In the middle of major refactoring...
[architektonas] / src / actions / actiondimension.h
1 #ifndef __ACTIONDIMENSION_H__
2 #define __ACTIONDIMENSION_H__
3
4 #include <QtCore>
5 #include "rs_dimension.h"
6 #include "actioninterface.h"
7
8 /**
9  * Base class for dimension actions.
10  *
11  * @author James Hammons
12  * @author Andrew Mustun
13  */
14 class ActionDimension: public ActionInterface
15 {
16         public:
17                 ActionDimension(const char * name, RS_EntityContainer & container, GraphicView & graphicView);
18                 ~ActionDimension();
19
20                 virtual void reset();
21                 virtual void init(int status = 0);
22                 virtual void hideOptions();
23                 virtual void showOptions();
24                 virtual void updateMouseCursor();
25                 virtual void updateToolBar();
26                 QString getText();
27                 void setText(const QString & t);
28                 QString getLabel();
29                 void setLabel(const QString & t);
30                 QString getTol1();
31                 void setTol1(const QString & t);
32                 QString getTol2();
33                 void setTol2(const QString & t);
34                 bool getDiameter();
35                 void setDiameter(bool d);
36                 static bool isDimensionAction(RS2::ActionType type);
37
38         protected:
39                 /**
40                  * Generic dimension data.
41                  */
42                 RS_DimensionData data;
43
44                 QString label;
45                 QString tol1;
46                 QString tol2;
47                 bool diameter;
48 };
49
50 #endif  // __ACTIONDIMENSION_H__