geom/src/GEOMToolsGUI/GEOMToolsGUI.h

103 lines
2.9 KiB
C
Raw Normal View History

2003-07-09 14:33:44 +00:00
// 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.
//
// 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
2003-07-09 14:33:44 +00:00
//
//
//
2004-12-01 10:39:14 +00:00
// File : GEOMToolsGUI.h
2004-01-07 15:46:21 +00:00
// Author : Damien COQUERET
2003-07-09 14:33:44 +00:00
// Module : GEOM
2004-12-01 10:39:14 +00:00
// $Header$
2003-05-12 15:24:23 +00:00
2004-01-07 15:46:21 +00:00
#ifndef GEOMTOOLSGUI_H
#define GEOMTOOLSGUI_H
2003-05-12 15:24:23 +00:00
2004-12-01 10:39:14 +00:00
#include "GEOMGUI.h"
#include "GEOM_Displayer.h"
#include <SALOME_Prs.h>
2003-05-12 15:24:23 +00:00
#include <SALOMEDSClient.hxx>
#include <SALOME_ListIO.hxx>
#include <CORBA.h>
#include <qptrlist.h>
2005-08-22 11:23:41 +00:00
#if defined WNT && defined WIN32 && defined SALOME_WNT_EXPORTS
#define GEOMTOOLSGUI_WNT_EXPORT __declspec( dllexport )
#else
#define GEOMTOOLSGUI_WNT_EXPORT
#endif
2003-05-12 15:24:23 +00:00
//=================================================================================
2004-12-01 10:39:14 +00:00
// class : GEOMToolsGUI
2003-05-12 15:24:23 +00:00
// purpose :
//=================================================================================
2005-08-22 11:23:41 +00:00
class GEOMTOOLSGUI_WNT_EXPORT GEOMToolsGUI : public GEOMGUI
2004-01-07 15:46:21 +00:00
{
public :
GEOMToolsGUI( GeometryGUI* ); // hide constructor to avoid direct creation
2004-01-07 15:46:21 +00:00
~GEOMToolsGUI();
bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent );
virtual void deactivate();
2004-12-01 10:39:14 +00:00
private:
// Import and export topology methods
2004-12-01 10:39:14 +00:00
bool Import();
bool Export();
2004-01-07 15:46:21 +00:00
void OnEditCopy();
void OnEditDelete();
2004-12-01 10:39:14 +00:00
void OnSettingsColor();
void OnSettingsIsos();
void OnSettingsStep();
void OnRename();
void OnCheckGeometry();
// Popup commands
void OnColor();
void OnTransparency();
void OnNbIsos();
void OnOpen();
void OnSelectOnly(int mode);
// 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) obj,
_PTR(Study) aStudy,
QPtrList<SALOME_View> views,
GEOM_Displayer* disp);
//checks if the object passed as the first argument depends on the second arguments
bool CheckSubObjectInUse(_PTR(SObject) checkobj,
_PTR(SObject) remobj,
_PTR(Study) aStudy);
2003-05-12 15:24:23 +00:00
};
2004-01-07 15:46:21 +00:00
#endif