Salome HOME
Merge branch 'vsr/26457'
[modules/kernel.git] / src / KernelHelpers / SALOME_StudyEditor.cxx
index 16391639cbd1841fa10e5c0e67bd27d228f7e032..c927df2fedb3ca88711bd1c94271039e2c5a6aad 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -16,6 +16,7 @@
 //
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+
 // Author: Guillaume Boulant (EDF/R&D) 
 
 #include "SALOME_StudyEditor.hxx"
 
 /** Canonic constructor. The object can't be used without a setStudy() */
 SALOME_StudyEditor::SALOME_StudyEditor() {
-  _sbuilder = KERNEL::getStudyServant()->NewBuilder();
+}
+
+SALOMEDS::StudyBuilder_var SALOME_StudyEditor::studyBuilder()
+{
+  return KERNEL::getStudyServant()->NewBuilder();
 }
 
 SALOMEDS::SObject_ptr SALOME_StudyEditor::newObject(SALOMEDS::SObject_ptr parent) {
-  return _sbuilder->NewObject(parent);
+  return studyBuilder()->NewObject(parent);
 }
 
 SALOMEDS::SObject_ptr SALOME_StudyEditor::findObject(const char * entry) {
@@ -38,8 +43,8 @@ SALOMEDS::SObject_ptr SALOME_StudyEditor::findObject(const char * entry) {
 SALOMEDS::SComponent_ptr SALOME_StudyEditor::newRoot(const char * moduleName) {
   SALOMEDS::SComponent_var sroot = findRoot(moduleName);
   if ( sroot->_is_nil() ) {
-    sroot = _sbuilder->NewComponent(moduleName);
-    _sbuilder->SetName(sroot,moduleName);
+    sroot = studyBuilder()->NewComponent(moduleName);
+    studyBuilder()->SetName(sroot,moduleName);
   }
   return sroot._retn();
 }
@@ -53,7 +58,7 @@ bool SALOME_StudyEditor::bindEngine(SALOMEDS::SComponent_var studyRoot,
   // raising (eh, you work on SALOME isn't it?)
   SALOMEDS::Driver_var driver = SALOMEDS::Driver::_narrow(engine);
   if ( driver->_is_nil() || studyRoot->_is_nil() ) return false;
-  _sbuilder->DefineComponentInstance(studyRoot, engine);
+  studyBuilder()->DefineComponentInstance(studyRoot, engine);
   return true;
 }
 
@@ -62,7 +67,7 @@ SALOMEDS::SComponent_ptr SALOME_StudyEditor::findRoot(const char * moduleName) {
 }
 
 void SALOME_StudyEditor::setName(SALOMEDS::SObject_var sobject, const char * value) {
-  _sbuilder->SetName(sobject,value);  
+  studyBuilder()->SetName(sobject,value);  
 }
 const char * SALOME_StudyEditor::getName(SALOMEDS::SObject_var sobject) {
   if (sobject->_is_nil()) return NULL;
@@ -82,7 +87,7 @@ const char * SALOME_StudyEditor::getName(SALOMEDS::SObject_var sobject) {
 void SALOME_StudyEditor::setIcon(SALOMEDS::SObject_var sobject, const char * resourcename) {
   SALOMEDS::GenericAttribute_var anAttr;
   SALOMEDS::AttributePixMap_var aPixmap;
-  anAttr = _sbuilder->FindOrCreateAttribute(sobject, "AttributePixMap");
+  anAttr = studyBuilder()->FindOrCreateAttribute(sobject, "AttributePixMap");
   aPixmap = SALOMEDS::AttributePixMap::_narrow(anAttr);
   aPixmap->SetPixMap(resourcename);
 }
@@ -100,7 +105,7 @@ void SALOME_StudyEditor::setIcon(SALOMEDS::SObject_var sobject, const char * res
 void SALOME_StudyEditor::setParameterInt(SALOMEDS::SObject_var sobject, const char * name, int value) { 
   SALOMEDS::GenericAttribute_var anAttr;
   SALOMEDS::AttributeParameter_var aParam;
-  anAttr = _sbuilder->FindOrCreateAttribute(sobject, "AttributeParameter");
+  anAttr = studyBuilder()->FindOrCreateAttribute(sobject, "AttributeParameter");
   aParam = SALOMEDS::AttributeParameter::_narrow(anAttr);
   aParam->SetInt(name,value);
 }
@@ -124,7 +129,7 @@ int SALOME_StudyEditor::getParameterInt(SALOMEDS::SObject_var sobject, const cha
 void SALOME_StudyEditor::setParameterBool(SALOMEDS::SObject_var sobject, const char * name, bool value) {
   SALOMEDS::GenericAttribute_var anAttr;
   SALOMEDS::AttributeParameter_var aParam;
-  anAttr = _sbuilder->FindOrCreateAttribute(sobject, "AttributeParameter");
+  anAttr = studyBuilder()->FindOrCreateAttribute(sobject, "AttributeParameter");
   aParam = SALOMEDS::AttributeParameter::_narrow(anAttr);
   aParam->SetBool(name,value);
 }