X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Factions%2Frs_actiondrawlineparallelthrough.h;h=4963bc87f23fa425abb314553f6b8c216d3a4df1;hb=3f46c180da0806c9c263e6d87d0f1404632402da;hp=d71d1a5c17e811d69b3b7fa41afda8901ed4cf39;hpb=16ce54abf01ca3032e42a5bb11a4afcf9014dcca;p=architektonas diff --git a/src/actions/rs_actiondrawlineparallelthrough.h b/src/actions/rs_actiondrawlineparallelthrough.h index d71d1a5..4963bc8 100644 --- a/src/actions/rs_actiondrawlineparallelthrough.h +++ b/src/actions/rs_actiondrawlineparallelthrough.h @@ -1,110 +1,59 @@ -/**************************************************************************** -** $Id: rs_actiondrawlineparallelthrough.h 1062 2004-01-16 21:51:20Z andrew $ -** -** Copyright (C) 2001-2003 RibbonSoft. All rights reserved. -** -** This file is part of the qcadlib Library project. -** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** Licensees holding valid qcadlib Professional Edition licenses may use -** this file in accordance with the qcadlib Commercial License -** Agreement provided with the Software. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -** -** See http://www.ribbonsoft.com for further details. -** -** Contact info@ribbonsoft.com if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - #ifndef RS_ACTIONDRAWLINEPARALLELTHROUGH_H #define RS_ACTIONDRAWLINEPARALLELTHROUGH_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 + * This action class can handle user events to draw parallel * lines, arcs and circles. * * @author Andrew Mustun */ -class RS_ActionDrawLineParallelThrough : public RS_PreviewActionInterface { - //Q_OBJECT -private: - enum Status { - SetEntity, /**< Choose original entity. */ - SetPos, /**< Setting point for this parallel to go through. */ - SetNumber /**< Setting number in the command line. */ - }; - -public: - RS_ActionDrawLineParallelThrough(RS_EntityContainer& container, - RS_GraphicView& graphicView); - ~RS_ActionDrawLineParallelThrough() {} - - static QAction* createGUIAction(RS2::ActionType /*type*/, QObject* /*parent*/); - - virtual RS2::ActionType rtti() { - return RS2::ActionDrawLineParallelThrough; - } - - virtual void trigger(); - - virtual void mouseMoveEvent(QMouseEvent* e); - virtual void mouseReleaseEvent(QMouseEvent* e); - virtual void updateMouseButtonHints(); - - virtual void coordinateEvent(RS_CoordinateEvent* e); - virtual void commandEvent(RS_CommandEvent* e); - virtual QStringList getAvailableCommands(); - - virtual void hideOptions(); - virtual void showOptions(); - - virtual void updateMouseCursor(); - virtual void updateToolBar(); - - int getNumber() { - return number; - } - - void setNumber(int n) { - number = n; - } - -private: - /** Closest parallel. */ - RS_Entity* parallel; - /** Data of new line */ - RS_LineData data; - /** Number of parallels. */ - int number; - /** Coordinate of the mouse. */ - Vector coord; - /** Original entity. */ - RS_Entity* entity; - /** Last status before entering length or number. */ - Status lastStatus; - /** - * Commands - */ - /* - QString cmdDistance; - QString cmdDistance2; - QString cmdDistance3; - - QString cmdNumber; - QString cmdNumber2; - QString cmdNumber3; - */ +class RS_ActionDrawLineParallelThrough: public RS_PreviewActionInterface +{ + private: + enum Status { + SetEntity, /**< Choose original entity. */ + SetPos, /**< Setting point for this parallel to go through. */ + SetNumber /**< Setting number in the command line. */ + }; + + public: + RS_ActionDrawLineParallelThrough(RS_EntityContainer & container, RS_GraphicView & graphicView); + ~RS_ActionDrawLineParallelThrough(); + + virtual RS2::ActionType rtti(); + virtual void trigger(); + virtual void mouseMoveEvent(QMouseEvent * e); + virtual void mouseReleaseEvent(QMouseEvent * e); + virtual void updateMouseButtonHints(); + virtual void coordinateEvent(Vector * e); + virtual void commandEvent(RS_CommandEvent * e); + virtual QStringList getAvailableCommands(); + virtual void hideOptions(); + virtual void showOptions(); + virtual void updateMouseCursor(); + virtual void updateToolBar(); + int getNumber(); + void setNumber(int n); + + private: + /** Closest parallel. */ + RS_Entity * parallel; + /** Data of new line */ + RS_LineData data; + /** Number of parallels. */ + int number; + /** Coordinate of the mouse. */ + Vector coord; + /** Original entity. */ + RS_Entity * entity; + /** Last status before entering length or number. */ + Status lastStatus; }; #endif