X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_Utils.h;h=690cd26335c6c4ce2ea3b6d7ee1330013984dc05;hp=ab468bf32e2713ea9632ac4def9771df4fa23c98;hb=79b1ac2b6df9117f16f11d444b1f165d477a1813;hpb=e4737e85f0da6d3f90fd08f6be1c2825195fe16f diff --git a/src/SMESHGUI/SMESHGUI_Utils.h b/src/SMESHGUI/SMESHGUI_Utils.h index ab468bf32..690cd2633 100644 --- a/src/SMESHGUI/SMESHGUI_Utils.h +++ b/src/SMESHGUI/SMESHGUI_Utils.h @@ -1,68 +1,121 @@ // 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// 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 #ifndef SMESHGUI_Utils_HeaderFile #define SMESHGUI_Utils_HeaderFile +#include "SMESH_SMESHGUI.hxx" + +#include + +#include "SALOMEDSClient_definitions.hxx" #include "SALOME_InteractiveObject.hxx" +#include "LightApp_DataOwner.h" class QString; -class QAD_Study; -class QAD_StudyFrame; -class SALOME_Selection; +class SUIT_ViewWindow; +class SUIT_Desktop; +class SUIT_Study; +class SUIT_ResourceMgr; + +class CAM_Module; -#include "SALOMEconfig.h" -#include CORBA_CLIENT_HEADER(SALOMEDS) +class SALOMEDSClient_Study; +class SALOMEDSClient_SObject; +class SalomeApp_Study; +class SalomeApp_Module; +class LightApp_SelectionMgr; -namespace SMESH{ +namespace SMESH { - QAD_Study* GetActiveStudy(); +SMESHGUI_EXPORT + SUIT_Desktop* + GetDesktop(const CAM_Module* theModule); - QAD_StudyFrame* GetActiveStudyFrame(); +SMESHGUI_EXPORT + LightApp_SelectionMgr* + GetSelectionMgr(const SalomeApp_Module* theModule); - SALOMEDS::Study_var GetActiveStudyDocument(); +SMESHGUI_EXPORT + SalomeApp_Study* + GetAppStudy(const CAM_Module* theModule); - SALOMEDS::SObject_var FindSObject(CORBA::Object_ptr theObject); +SMESHGUI_EXPORT + SUIT_ResourceMgr* + GetResourceMgr( const SalomeApp_Module* ); + +SMESHGUI_EXPORT + _PTR(Study) + GetCStudy(const SalomeApp_Study* theStudy); +SMESHGUI_EXPORT + CORBA::Object_var DataOwnerToObject(const LightApp_DataOwnerPtr& theOwner); - void SetName(SALOMEDS::SObject_ptr theSObject, const char* theName); - void SetValue(SALOMEDS::SObject_ptr theSObject, const char* theValue); + template typename TInterface::_var_type + DataOwnerToInterface(const LightApp_DataOwnerPtr& theDataOwner) + { + CORBA::Object_var anObj = DataOwnerToObject(theDataOwner); + if(!CORBA::is_nil(anObj)) + return TInterface::_narrow(anObj); + return TInterface::_nil(); + } - CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr theSObject, - SALOMEDS::Study_ptr theStudy); - - CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr theSObject); - +SMESHGUI_EXPORT + SUIT_Study* GetActiveStudy(); + +SMESHGUI_EXPORT + SUIT_ViewWindow* GetActiveWindow(); + +SMESHGUI_EXPORT + _PTR(Study) GetActiveStudyDocument(); + +SMESHGUI_EXPORT + _PTR(SObject) FindSObject(CORBA::Object_ptr theObject); + +SMESHGUI_EXPORT + void SetName (_PTR(SObject) theSObject, const char* theName); + +SMESHGUI_EXPORT + void SetValue (_PTR(SObject) theSObject, const char* theValue); + void setFileType (_PTR(SObject) theSObject, const char* theValue); + void setFileName (_PTR(SObject) theSObject, const char* theValue); + +SMESHGUI_EXPORT + CORBA::Object_var SObjectToObject (_PTR(SObject) theSObject, + _PTR(Study) theStudy); + +SMESHGUI_EXPORT + CORBA::Object_var SObjectToObject(_PTR(SObject) theSObject); template typename TInterface::_var_type - SObjectToInterface(SALOMEDS::SObject_ptr theSObject) + SObjectToInterface(_PTR(SObject) theSObject) { CORBA::Object_var anObj = SObjectToObject(theSObject); if(!CORBA::is_nil(anObj)) return TInterface::_narrow(anObj); return TInterface::_nil(); } - +SMESHGUI_EXPORT CORBA::Object_var IObjectToObject(const Handle(SALOME_InteractiveObject)& theIO); template typename TInterface::_var_type @@ -73,8 +126,8 @@ namespace SMESH{ return TInterface::_narrow(anObj); return TInterface::_nil(); } - +SMESHGUI_EXPORT CORBA::Object_var IORToObject(const char* theIOR); template typename TInterface::_var_type @@ -85,15 +138,18 @@ namespace SMESH{ return TInterface::_narrow(anObj); return TInterface::_nil(); } - - int GetNameOfSelectedIObjects(SALOME_Selection* theSel, QString& theName); +SMESHGUI_EXPORT + int GetNameOfSelectedIObjects (LightApp_SelectionMgr*, QString& theName); - SALOMEDS::SObject_var GetMeshOrSubmesh(SALOMEDS::SObject_ptr theSObject); +SMESHGUI_EXPORT + _PTR(SObject) GetMeshOrSubmesh (_PTR(SObject) theSObject); - void ModifiedMesh(SALOMEDS::SObject_ptr theSObject, bool theIsRight); +SMESHGUI_EXPORT + void ModifiedMesh (_PTR(SObject) theSObject, bool theIsNot, bool isEmptyMesh=false); +SMESHGUI_EXPORT + void ShowHelpFile (QString theHelpFileName); } - #endif