X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FKernelHelpers%2FSALOME_StudyEditor.cxx;h=c927df2fedb3ca88711bd1c94271039e2c5a6aad;hb=f6120c1bdb84ed1cc827ffab8284c0ac2709189f;hp=21727e70cd08a09839621d0f30240a8b3c49ecd7;hpb=a63265d524e8436588a7bb82147a69812c153b1b;p=modules%2Fkernel.git diff --git a/src/KernelHelpers/SALOME_StudyEditor.cxx b/src/KernelHelpers/SALOME_StudyEditor.cxx index 21727e70c..c927df2fe 100644 --- a/src/KernelHelpers/SALOME_StudyEditor.cxx +++ b/src/KernelHelpers/SALOME_StudyEditor.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 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" @@ -25,41 +26,25 @@ SALOME_StudyEditor::SALOME_StudyEditor() { } -void SALOME_StudyEditor::setStudy(SALOMEDS::Study_ptr study) { - _study = study; - _sbuilder = _study->NewBuilder(); -} - -void SALOME_StudyEditor::setStudyById(int studyId) { - this->setStudy(KERNEL::getStudyManager()->GetStudyByID(studyId)); -} - -int SALOME_StudyEditor::getStudyId() { - if ( _study->_is_nil() ) return UNDEFINED; - return _study->StudyId(); -} - -SALOME_StudyEditor::SALOME_StudyEditor(int studyId) { - this->setStudyById(studyId); -} -SALOME_StudyEditor::SALOME_StudyEditor(SALOMEDS::Study_ptr study) { - this->setStudy(study); +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) { - SALOMEDS::SObject_var sobject = _study->FindObjectID(entry); + SALOMEDS::SObject_var sobject = KERNEL::getStudyServant()->FindObjectID(entry); return sobject._retn(); } 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(); } @@ -73,16 +58,16 @@ 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; } SALOMEDS::SComponent_ptr SALOME_StudyEditor::findRoot(const char * moduleName) { - return _study->FindComponent(moduleName); + return KERNEL::getStudyServant()->FindComponent(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; @@ -102,14 +87,14 @@ 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); } // // MEM: AttributeParameter -// Note that the AttributeParameter is a multitype dictionnary whose +// Note that the AttributeParameter is a multitype dictionary whose // keys are the names specified when setting the value // @@ -120,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); } @@ -144,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); }