X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FGEOMToolsGUI%2FGEOMToolsGUI.h;h=4241124f648abd30e3f49fff5f52faafd68123fc;hb=15e78623e92030e26c218fab844b77f2c4d09d89;hp=9db5170ef43e93000598a1ad4df0aa8df4fad882;hpb=9499b99fe2dcb53e1ea364f97986f8f432b04600;p=modules%2Fgeom.git diff --git a/src/GEOMToolsGUI/GEOMToolsGUI.h b/src/GEOMToolsGUI/GEOMToolsGUI.h index 9db5170ef..4241124f6 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI.h +++ b/src/GEOMToolsGUI/GEOMToolsGUI.h @@ -1,81 +1,94 @@ -// 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 +// 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 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. +// 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 +// 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 : GEOMToolsGUI.h -// Author : Damien COQUERET -// Module : GEOM -// $Header$ +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// #ifndef GEOMTOOLSGUI_H #define GEOMTOOLSGUI_H -#include "GEOMGUI.h" +#include "GEOM_ToolsGUI.hxx" + +#include #include -#include -#include -#if defined WNT && defined WIN32 && defined SALOME_WNT_EXPORTS -#define GEOMTOOLSGUI_WNT_EXPORT __declspec( dllexport ) -#else -#define GEOMTOOLSGUI_WNT_EXPORT -#endif +class GEOM_Displayer; +class SALOME_View; +class SALOME_ListIO; + +#include + //================================================================================= // class : GEOMToolsGUI // purpose : //================================================================================= -class GEOMTOOLSGUI_WNT_EXPORT GEOMToolsGUI : public GEOMGUI +class GEOMTOOLSGUI_EXPORT GEOMToolsGUI : public GEOMGUI { -public : +public: GEOMToolsGUI( GeometryGUI* ); // hide constructor to avoid direct creation ~GEOMToolsGUI(); - bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent ); + bool OnGUIEvent( int, SUIT_Desktop* ); + virtual void deactivate(); + + enum ActionType { SHOWDLG, INCR, DECR }; private: // Import and export topology methods - bool Import(); - bool Export(); - - void OnEditCopy(); - void OnEditDelete(); + bool Import(); + bool Export(); - void OnSettingsColor(); - void OnSettingsIsos(); - void OnSettingsStep(); - void OnRename(); - void OnCheckGeometry(); + void OnEditDelete(); + void OnCheckGeometry(); // Popup commands - void OnColor(); - void OnTransparency(); - void OnNbIsos(); - void OnOpen(); + void OnAutoColor(); + void OnDisableAutoColor(); + void OnColor(); + void OnTexture(); + void OnTransparency(); + void OnNbIsos( ActionType actionType = SHOWDLG ); + void OnDeflection(); + void OnSelectOnly(int mode); + void OnShowHideChildren( bool ); + void OnUnpublishObject(); + void OnPublishObject() ; + void OnPointMarker(); + void OnMaterialProperties(); + void OnEdgeWidth(); + void OnIsosWidth(); + void OnBringToFront(); + void OnClsBringToFront(); + + // Shortcut commands + void OnChangeTransparency( bool ); - // returns name of Module (Component) of given objects (usually selected objects) - // if objects belong to different Components, a NULL string is returned. - QString getParentComponent( _PTR( Study ), const SALOME_ListIO& ); - QString getParentComponent( _PTR(SObject) ); + // Recursive deletion of object with children + void removeObjectWithChildren( _PTR(SObject), + _PTR(Study), + QList, + GEOM_Displayer* ); }; -#endif +#endif // GEOMTOOLSGUI_H