geom/src/GEOMToolsGUI/GEOMToolsGUI.h

100 lines
2.8 KiB
C
Raw Normal View History

2003-07-09 20:33:44 +06: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 20:33:44 +06:00
//
//
//
2004-12-01 15:39:14 +05:00
// File : GEOMToolsGUI.h
2004-01-07 20:46:21 +05:00
// Author : Damien COQUERET
2003-07-09 20:33:44 +06:00
// Module : GEOM
2004-12-01 15:39:14 +05:00
// $Header$
2003-05-12 21:24:23 +06:00
2004-01-07 20:46:21 +05:00
#ifndef GEOMTOOLSGUI_H
#define GEOMTOOLSGUI_H
2003-05-12 21:24:23 +06:00
#include "GEOM_ToolsGUI.hxx"
2004-12-01 15:39:14 +05:00
#include "GEOMGUI.h"
#include "GEOM_Displayer.h"
#include <SALOME_Prs.h>
2003-05-12 21:24:23 +06:00
#include <SALOMEDSClient.hxx>
#include <SALOME_ListIO.hxx>
#include <CORBA.h>
#include <qptrlist.h>
2003-05-12 21:24:23 +06:00
//=================================================================================
2004-12-01 15:39:14 +05:00
// class : GEOMToolsGUI
2003-05-12 21:24:23 +06:00
// purpose :
//=================================================================================
class GEOMTOOLSGUI_EXPORT GEOMToolsGUI : public GEOMGUI
2004-01-07 20:46:21 +05:00
{
public :
GEOMToolsGUI( GeometryGUI* ); // hide constructor to avoid direct creation
2004-01-07 20:46:21 +05:00
~GEOMToolsGUI();
bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent );
virtual void deactivate();
2004-12-01 15:39:14 +05:00
private:
// Import and export topology methods
2004-12-01 15:39:14 +05:00
bool Import();
bool Export();
2004-01-07 20:46:21 +05:00
void OnEditCopy();
void OnEditDelete();
2004-12-01 15:39:14 +05:00
void OnSettingsColor();
void OnSettingsIsos();
void OnSettingsStep();
void OnRename();
void OnCheckGeometry();
// Popup commands
void OnAutoColor();
void OnDisableAutoColor();
2004-12-01 15:39:14 +05:00
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 21:24:23 +06:00
};
2004-01-07 20:46:21 +05:00
#endif