X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Factions%2Frs_actiondrawlineparallel.h;h=162e2deb0ef31704a57121b795e7d0f9144966de;hb=3f46c180da0806c9c263e6d87d0f1404632402da;hp=d357e0a6fb3558a0b07beded0cf2461ac5aa45b5;hpb=16ce54abf01ca3032e42a5bb11a4afcf9014dcca;p=architektonas diff --git a/src/actions/rs_actiondrawlineparallel.h b/src/actions/rs_actiondrawlineparallel.h index d357e0a..162e2de 100644 --- a/src/actions/rs_actiondrawlineparallel.h +++ b/src/actions/rs_actiondrawlineparallel.h @@ -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 @@ -10,83 +13,49 @@ * * @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