]> Shamusworld >> Repos - architektonas/blobdiff - src/actions/rs_actiondrawlineparallel.h
Major refactoring of actions: Moved implementation from header files
[architektonas] / src / actions / rs_actiondrawlineparallel.h
index d357e0a6fb3558a0b07beded0cf2461ac5aa45b5..162e2deb0ef31704a57121b795e7d0f9144966de 100644 (file)
@@ -1,8 +1,11 @@
 #ifndef RS_ACTIONDRAWLINEPARALLEL_H
 #define RS_ACTIONDRAWLINEPARALLEL_H
 
+#include "rs_line.h"
 #include "rs_previewactioninterface.h"
+#include "vector.h"
 
+class RS_Entity;
 
 /**
  * This action class can handle user events to draw parallel
  *
  * @author Andrew Mustun
  */
-class RS_ActionDrawLineParallel : public RS_PreviewActionInterface {
-       //Q_OBJECT
-private:
-    enum Status {
-        SetEntity,    /**< Choose original entity. */
-               //SetDistance,  /**< Setting distance in the command line. */
-               SetNumber     /**< Setting number in the command line. */
-               //SetThrough     /**< Setting a point for the parallel to go through. */
-       };
-
-public:
-    RS_ActionDrawLineParallel(RS_EntityContainer& container,
-                              RS_GraphicView& graphicView);
-    ~RS_ActionDrawLineParallel() {}
-
-       static QAction* createGUIAction(RS2::ActionType type, QObject* /*parent*/);
-
-       virtual RS2::ActionType rtti() {
-               return RS2::ActionDrawLineParallel;
-       }
-
-    virtual void trigger();
-
-    virtual void mouseMoveEvent(QMouseEvent* e);
-    virtual void mouseReleaseEvent(QMouseEvent* e);
-    virtual void updateMouseButtonHints();
-
-    virtual void commandEvent(RS_CommandEvent* e);
-       virtual QStringList getAvailableCommands();
-
-    virtual void hideOptions();
-    virtual void showOptions();
-
-    virtual void updateMouseCursor();
-    virtual void updateToolBar();
-
-       double getDistance() {
-               return distance;
-       }
-
-       void setDistance(double d) {
-               distance = d;
-       }
-
-       int getNumber() {
-               return number;
-       }
-
-       void setNumber(int n) {
-               number = n;
-       }
-
-private:
-    /** Closest parallel. */
-    RS_Entity* parallel;
-    /** Data of new line */
-    RS_LineData data;
-    /** Distance of the parallel. */
-    double distance;
-       /** Number of parallels. */
-       int number;
-       /** Coordinate of the mouse. */
-       Vector coord;
-       /** Original entity. */
-       RS_Entity* entity;
-       /**
-        * Commands
-        */
-       /*
-       QString cmdDistance;
-       QString cmdDistance2;
-       QString cmdDistance3;
-
-       QString cmdNumber;
-       QString cmdNumber2;
-       QString cmdNumber3;
-       */
+class RS_ActionDrawLineParallel: public RS_PreviewActionInterface
+{
+       private:
+               enum Status {
+                       SetEntity,    /**< Choose original entity. */
+                       //SetDistance,  /**< Setting distance in the command line. */
+                       SetNumber     /**< Setting number in the command line. */
+                       //SetThrough     /**< Setting a point for the parallel to go through. */
+               };
+
+       public:
+               RS_ActionDrawLineParallel(RS_EntityContainer & container, RS_GraphicView & graphicView);
+               ~RS_ActionDrawLineParallel();
+
+               virtual RS2::ActionType rtti();
+               virtual void trigger();
+               virtual void mouseMoveEvent(QMouseEvent * e);
+               virtual void mouseReleaseEvent(QMouseEvent * e);
+               virtual void updateMouseButtonHints();
+               virtual void commandEvent(RS_CommandEvent * e);
+               virtual QStringList getAvailableCommands();
+               virtual void hideOptions();
+               virtual void showOptions();
+               virtual void updateMouseCursor();
+               virtual void updateToolBar();
+               double getDistance();
+               void setDistance(double d);
+               int getNumber();
+               void setNumber(int n);
+
+       private:
+               /** Closest parallel. */
+               RS_Entity * parallel;
+               /** Data of new line */
+               RS_LineData data;
+               /** Distance of the parallel. */
+               double distance;
+               /** Number of parallels. */
+               int number;
+               /** Coordinate of the mouse. */
+               Vector coord;
+               /** Original entity. */
+               RS_Entity * entity;
 };
 
 #endif