1 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License.
9 // This library is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 // See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
20 #ifndef SMESHGUI_Utils_HeaderFile
21 #define SMESHGUI_Utils_HeaderFile
23 #include "SALOME_InteractiveObject.hxx"
29 class SALOME_Selection;
31 #include "SALOMEconfig.h"
32 #include CORBA_CLIENT_HEADER(SALOMEDS)
37 QAD_Study* GetActiveStudy();
39 QAD_StudyFrame* GetActiveStudyFrame();
41 SALOMEDS::Study_var GetActiveStudyDocument();
43 SALOMEDS::SObject_var FindSObject(CORBA::Object_ptr theObject);
46 void SetName(SALOMEDS::SObject_ptr theSObject, const char* theName);
47 void SetValue(SALOMEDS::SObject_ptr theSObject, const char* theValue);
50 CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr theSObject,
51 SALOMEDS::Study_ptr theStudy);
53 CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr theSObject);
56 template<class TInterface> typename TInterface::_var_type
57 SObjectToInterface(SALOMEDS::SObject_ptr theSObject)
59 CORBA::Object_var anObj = SObjectToObject(theSObject);
60 if(!CORBA::is_nil(anObj))
61 return TInterface::_narrow(anObj);
62 return TInterface::_nil();
66 CORBA::Object_var IObjectToObject(const Handle(SALOME_InteractiveObject)& theIO);
68 template<class TInterface> typename TInterface::_var_type
69 IObjectToInterface(const Handle(SALOME_InteractiveObject)& theIO)
71 CORBA::Object_var anObj = IObjectToObject(theIO);
72 if(!CORBA::is_nil(anObj))
73 return TInterface::_narrow(anObj);
74 return TInterface::_nil();
78 CORBA::Object_var IORToObject(const char* theIOR);
80 template<class TInterface> typename TInterface::_var_type
81 IORToInterface(const char* theIOR)
83 CORBA::Object_var anObj = IORToObject(theIOR);
84 if(!CORBA::is_nil(anObj))
85 return TInterface::_narrow(anObj);
86 return TInterface::_nil();
90 int GetNameOfSelectedIObjects(SALOME_Selection* theSel, QString& theName);
92 SALOMEDS::SObject_var GetMeshOrSubmesh(SALOMEDS::SObject_ptr theSObject);
94 void ModifiedMesh(SALOMEDS::SObject_ptr theSObject, bool theIsRight);