#include "Utils_ORB_INIT.hxx"
#include "Utils_SINGLETON.hxx"
-#include <SMESHGUI.h>
-#include <SMESHGUI_GEOMGenUtils.h>
+#include "SMESHGUI.h"
+#include "SMESHGUI_Utils.h"
+#include "SMESHGUI_GEOMGenUtils.h"
// SALOME Includes
#include "SUIT_ResourceMgr.h"
#include "SUIT_Session.h"
+#include "SALOMEDS_SObject.hxx"
+
#include "SalomeApp_Application.h"
#include "utilities.h"
static CORBA::ORB_var _orb;
-static char* ObjectToString (CORBA::Object_ptr obj)
-{
- return _orb->object_to_string(obj);
-}
-
static CORBA::Object_ptr StringToObject (const char* ior)
{
return _orb->string_to_object(ior);
anAttr = myStudyBuilder->FindOrCreateAttribute(father, "AttributeName");
aName = SALOMEDS::AttributeName::_narrow(anAttr);
//NRI aName->SetValue(QObject::tr("SMESH_MEN_COMPONENT"));
- aName->SetValue( SMESHGUI::GetSMESHGUI()->moduleName() );
+ SMESHGUI* gui = SMESHGUI::GetSMESHGUI(); //SRN: BugID IPAL9186, load a SMESH gui if it hasn't been loaded
+ if(!gui) {
+ SalomeApp_Application* app = dynamic_cast<SalomeApp_Application*>(SUIT_Session::session()->activeApplication());
+ if(app) {
+ CAM_Module* module = app->module( "Mesh" );
+ if(!module) module = app->loadModule("Mesh");
+ gui = dynamic_cast<SMESHGUI*>( module );
+ }
+ else {
+ MESSAGE("Can't find the application");
+ }
+ } //SRN: BugID IPAL9186: end of a fix
+ aName->SetValue( gui->moduleName() );
anAttr = myStudyBuilder->FindOrCreateAttribute(father, "AttributePixMap");
aPixmap = SALOMEDS::AttributePixMap::_narrow(anAttr);
aPixmap->SetPixMap( "ICON_OBJBROWSER_SMESH" );
MESSAGE("Destructeur");
}
-
const char* SMESH_Swig::AddNewMesh(const char* IOR)
{
MESSAGE("AddNewMesh");
myStudyBuilder->Addreference (SO,SO_Hypothesis);
}
}
+
void SMESH_Swig::SetAlgorithms(const char* Mesh_Or_SubMesh_Entry, const char* Algorithms_Entry)
{
SALOMEDS::SObject_var SO_MorSM = myStudy->FindObjectID( Mesh_Or_SubMesh_Entry );
myStudyBuilder->RemoveObject(SO_Applied_Hypothesis);
}
-
const char* SMESH_Swig::AddSubMesh(const char* SO_Mesh_Entry, const char* SM_IOR, int ST)
{
SALOMEDS::SObject_var SO_Mesh = myStudy->FindObjectID( SO_Mesh_Entry );
}
}
-
void SMESH_Swig::setOrb()
{
try {
}
ASSERT(! CORBA::is_nil(_orb));
}
+
+//================================================================================
+/*!
+ * \brief Set mesh icon according to compute status
+ * \param Mesh_Entry - entry of a mesh
+ * \param isComputed - is mesh computed or not
+ */
+//================================================================================
+
+void SMESH_Swig::SetMeshIcon(const char* Mesh_Entry, const bool isComputed)
+{
+ SALOMEDS::SObject_var mesh_var = myStudy->FindObjectID( Mesh_Entry );
+ if ( !mesh_var->_is_nil() ) {
+ _PTR(SObject) mesh = _PTR(SObject)(new SALOMEDS_SObject( mesh_var ));
+ if ( mesh )
+ SMESH::ModifiedMesh( mesh, isComputed );
+ }
+}