X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FEntityGUI%2FEntityGUI.h;h=7ab56f090add3364debf563892210c5f4a71c095;hb=12efffce9b0ebe93526a85431536159aa8da4419;hp=bc0fdadc438493a2d0926a63395c1185e366bf2f;hpb=d3dd282390888d7dc091ba2c2ffe7923bd7458e6;p=modules%2Fgeom.git diff --git a/src/EntityGUI/EntityGUI.h b/src/EntityGUI/EntityGUI.h index bc0fdadc4..7ab56f090 100644 --- a/src/EntityGUI/EntityGUI.h +++ b/src/EntityGUI/EntityGUI.h @@ -1,36 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// File : EntityGUI.h -// Author : Damien COQUERET -// Module : GEOM -// $Header$ +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// #ifndef ENTITYGUI_H #define ENTITYGUI_H -#include "GEOMGUI.h" -#include "GEOMBase.h" +#include + +#include + +#include +#include + +class TopoDS_Shape; + //================================================================================= // class : EntityGUI @@ -38,40 +43,28 @@ //================================================================================= class EntityGUI : public GEOMGUI { -protected: - EntityGUI(); // hide constructor to avoid direct creation - public : + EntityGUI( GeometryGUI* ); ~EntityGUI(); - // Get the only EntityGUI object - static EntityGUI* GetEntityGUI(); - - bool OnGUIEvent(int theCommandID, QAD_Desktop* parent); - - void OnSketchEnd(const char *Cmd); + bool OnGUIEvent( int, SUIT_Desktop* ); + bool OnMousePress( QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWindow* theViewWindow ); + bool OnMouseMove( QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWindow* theViewWindow ); + bool OnMouseRelease( QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWindow* theViewWindow ); + + static gp_Pnt ConvertClickToPoint( int x, int y, Handle(V3d_View) aView ); - void DisplaySimulationShape(const TopoDS_Shape& S1, const TopoDS_Shape& S2); - void EraseSimulationShape(); + void DisplaySimulationShape( const TopoDS_Shape&, const TopoDS_Shape& ); + void EraseSimulationShape(); - void MakeInterpolAndDisplay(GEOM::string_array& listShapesIOR); - void MakeBezierAndDisplay(GEOM::string_array& listShapesIOR); + // Methods for sub-shapes explode + bool SObjectExist( const _PTR(SObject)&, const char* ); - /* Methods for sub shapes explode */ - bool SObjectExist(SALOMEDS::SObject_ptr theFatherObject, const char* IOR); - bool OnSubShapeGetAll(const TopoDS_Shape& ShapeTopo, const char* ShapeTopoIOR, const int SubShapeType); - bool OnSubShapeGetSelected(const TopoDS_Shape& ShapeTopo, const char* ShapeTopoIOR, const int SubShapeType, - Standard_Integer& aLocalContextId, bool& myUseLocalContext); - - /* AIS shape used only during topo/geom simulations */ +public: + // AIS shape used only during topo/geom simulations Handle(AIS_Shape) mySimulationShape1; Handle(AIS_Shape) mySimulationShape2; - - GEOMBase* myGeomBase; - GEOM::GEOM_Gen_var myGeom; /* Current Geom Component */ - -private: - static EntityGUI* myGUIObject; // the only EntityGUI object + }; -#endif +#endif // ENTITYGUI_H