X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Factions%2Frs_actionmodifyround.h;h=27efe84079acc84bf3344bdeaf5e762fedc16037;hb=be33e866f2121c48db93e06d743c5ae3826c1948;hp=1bff4d1b9f3c5e449ec92343562cf6422047628f;hpb=16ce54abf01ca3032e42a5bb11a4afcf9014dcca;p=architektonas diff --git a/src/actions/rs_actionmodifyround.h b/src/actions/rs_actionmodifyround.h index 1bff4d1..27efe84 100644 --- a/src/actions/rs_actionmodifyround.h +++ b/src/actions/rs_actionmodifyround.h @@ -1,106 +1,59 @@ -/**************************************************************************** -** $Id: rs_actionmodifyround.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_ACTIONMODIFYROUND_H #define RS_ACTIONMODIFYROUND_H -#include "rs_previewactioninterface.h" #include "rs_modification.h" +#include "rs_previewactioninterface.h" +#include "vector.h" +class RS_Entity; /** * This action class can handle user events to round corners. * * @author Andrew Mustun */ -class RS_ActionModifyRound : public RS_PreviewActionInterface { - //Q_OBJECT -public: - /** - * Action States. - */ - enum Status { - SetEntity1, /**< Choosing the 1st entity. */ - SetEntity2, /**< Choosing the 2nd entity. */ - SetRadius, /**< Setting radius in command line. */ - SetTrim /**< Setting trim flag in command line. */ - }; - -public: - RS_ActionModifyRound(RS_EntityContainer& container, - RS_GraphicView& graphicView); - ~RS_ActionModifyRound() {} - - static QAction* createGUIAction(RS2::ActionType /*type*/, QObject* /*parent*/); - - virtual RS2::ActionType rtti() { - return RS2::ActionModifyRound; - } - - virtual void init(int status=0); - virtual void trigger(); - - virtual void mouseMoveEvent(QMouseEvent* e); - virtual void mouseReleaseEvent(QMouseEvent* e); - - virtual void commandEvent(RS_CommandEvent* e); - virtual QStringList getAvailableCommands(); - - virtual void hideOptions(); - virtual void showOptions(); - - virtual void updateMouseButtonHints(); - virtual void updateMouseCursor(); - virtual void updateToolBar(); - - void setRadius(double r) { - data.radius = r; - } - - double getRadius() { - return data.radius; - } - - void setTrim(bool t) { - data.trim = t; - } - - bool isTrimOn() { - return data.trim; - } - -private: - //Vector coord; - Vector coord1; - RS_Entity* entity1; - Vector coord2; - RS_Entity* entity2; - RS_RoundData data; - /** Last status before entering angle. */ - Status lastStatus; +class RS_ActionModifyRound: public RS_PreviewActionInterface +{ + public: + /** + * Action States. + */ + enum Status { + SetEntity1, /**< Choosing the 1st entity. */ + SetEntity2, /**< Choosing the 2nd entity. */ + SetRadius, /**< Setting radius in command line. */ + SetTrim /**< Setting trim flag in command line. */ + }; + + public: + RS_ActionModifyRound(RS_EntityContainer & container, GraphicView & graphicView); + ~RS_ActionModifyRound(); + + virtual RS2::ActionType rtti(); + virtual void init(int status = 0); + virtual void trigger(); + virtual void mouseMoveEvent(QMouseEvent * e); + virtual void mouseReleaseEvent(QMouseEvent * e); + virtual void commandEvent(RS_CommandEvent * e); + virtual QStringList getAvailableCommands(); + virtual void hideOptions(); + virtual void showOptions(); + virtual void updateMouseButtonHints(); + virtual void updateMouseCursor(); + virtual void updateToolBar(); + void setRadius(double r); + double getRadius(); + void setTrim(bool t); + bool isTrimOn(); + + private: + Vector coord1; + RS_Entity * entity1; + Vector coord2; + RS_Entity * entity2; + RS_RoundData data; + /** Last status before entering angle. */ + Status lastStatus; }; #endif