X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOMToolsGUI%2FGEOMToolsGUI.h;h=581d10f7bc612b64d00eb655663ee6b1cec4851b;hb=58803ba33ee53a5944d565373782e5f0868c5461;hp=6d239c3300bdcdd45f8e6f2618e4edd88b89623a;hpb=131a4abe500d60f9a8771655794cd5f8d5da75a9;p=modules%2Fgeom.git diff --git a/src/GEOMToolsGUI/GEOMToolsGUI.h b/src/GEOMToolsGUI/GEOMToolsGUI.h index 6d239c330..581d10f7b 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI.h +++ b/src/GEOMToolsGUI/GEOMToolsGUI.h @@ -1,77 +1,103 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// 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. +// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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 +// 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, or (at your option) any later version. // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// 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 : 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 +class GEOM_Displayer; +class SALOME_View; +class SALOME_ListIO; +class SalomeApp_Study; +class SVTK_View; +class QColor; +class Handle_SALOME_InteractiveObject; +class Handle_AIS_InteractiveContext; + +#include //================================================================================= // class : GEOMToolsGUI // purpose : //================================================================================= -class 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* ); + bool OnGUIEvent( int theCommandID, SUIT_Desktop*, const QVariant& ); -private: - // Import and export topology methods - bool Import(); - bool Export(); + virtual void deactivate(); - void OnEditCopy(); - void OnEditDelete(); + enum ActionType { SHOWDLG, INCR, DECR }; - void OnSettingsColor(); - void OnSettingsIsos(); - void OnSettingsStep(); - void OnRename(); - void OnCheckGeometry(); +private: + + 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 OnDiscloseConcealChildren( bool ); + void OnUnpublishObject(); + void OnPublishObject() ; + void OnPointMarker(); + void OnMaterialProperties(); + void OnMaterialsLibrary(); + void OnSetMaterial(const QVariant& ); + void OnEdgeWidth(); + void OnIsosWidth(); + void OnBringToFront(); + void OnClsBringToFront(); + void OnCreateFolder(); + void OnSortChildren(); + void OnShowDependencyTree(); + void OnReduceStudy(); + + // 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