1 #ifndef __ACTIONDRAWLINEPARALLELTHROUGH_H__
2 #define __ACTIONDRAWLINEPARALLELTHROUGH_H__
5 #include "actioninterface.h"
11 * This action class can handle user events to draw parallel lines, arcs and
14 * @author James Hammons
15 * @author Andrew Mustun
17 class ActionDrawLineParallelThrough: public ActionInterface
21 SetEntity, /**< Choose original entity. */
22 SetPos, /**< Setting point for this parallel to go through. */
23 SetNumber /**< Setting number in the command line. */
27 ActionDrawLineParallelThrough(EntityContainer & container, GraphicView & graphicView);
28 ~ActionDrawLineParallelThrough();
30 virtual RS2::ActionType rtti();
31 virtual void trigger();
32 virtual void mouseMoveEvent(QMouseEvent * e);
33 virtual void mouseReleaseEvent(QMouseEvent * e);
34 virtual void updateMouseButtonHints();
35 virtual void coordinateEvent(Vector * e);
36 virtual void commandEvent(CommandEvent * e);
37 virtual QStringList getAvailableCommands();
38 virtual void hideOptions();
39 virtual void showOptions();
40 virtual void updateMouseCursor();
41 virtual void updateToolBar();
43 void setNumber(int n);
46 /** Closest parallel. */
48 /** Data of new line */
50 /** Number of parallels. */
52 /** Coordinate of the mouse. */
54 /** Original entity. */
56 /** Last status before entering length or number. */
60 #endif // __ACTIONDRAWLINEPARALLELTHROUGH_H__