1 #ifndef __ACTIONDRAWLINEBISECTOR_H__
2 #define __ACTIONDRAWLINEBISECTOR_H__
5 #include "actioninterface.h"
11 * This action class can handle user events to draw bisectors.
13 * @author James Hammons
14 * @author Andrew Mustun
16 class ActionDrawLineBisector: public ActionInterface
20 SetLine1, /**< Choose the 1st line. */
21 SetLine2, /**< Choose the 2nd line. */
22 SetLength, /**< Set length in command line. */
23 SetNumber /**< Set number in command line. */
27 ActionDrawLineBisector(EntityContainer & container, GraphicView & graphicView);
28 ~ActionDrawLineBisector();
30 virtual RS2::ActionType rtti();
31 virtual void trigger();
32 virtual void mouseMoveEvent(QMouseEvent * e);
33 virtual void mouseReleaseEvent(QMouseEvent * e);
34 virtual void commandEvent(CommandEvent * e);
35 virtual QStringList getAvailableCommands();
36 virtual void hideOptions();
37 virtual void showOptions();
38 virtual void updateMouseButtonHints();
39 virtual void updateMouseCursor();
40 virtual void updateToolBar();
41 void setLength(double l);
43 void setNumber(int n);
47 /** Closest bisector. */
49 /** First chosen entity */
51 /** Second chosen entity */
53 /** Data of new bisector */
55 /** Length of the bisector. */
57 /** Number of bisectors to create. */
59 /** Mouse pos when choosing the 1st line */
61 /** Mouse pos when choosing the 2nd line */
63 /** Last status before entering length or number. */
67 #endif // __ACTIONDRAWLINEBISECTOR_H__