X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FKernelHelpers%2FSALOME_StudyEditor.cxx;h=c927df2fedb3ca88711bd1c94271039e2c5a6aad;hb=6296b3a3052d25ddb1f46c5fa50bd7b6e87859cb;hp=df6ed2dc0e73e5dfc3f4ec14288945dfba7c0b3f;hpb=9749fc1db72bd80e278405114b05ffc69b5031da;p=modules%2Fkernel.git diff --git a/src/KernelHelpers/SALOME_StudyEditor.cxx b/src/KernelHelpers/SALOME_StudyEditor.cxx index df6ed2dc0..c927df2fe 100644 --- a/src/KernelHelpers/SALOME_StudyEditor.cxx +++ b/src/KernelHelpers/SALOME_StudyEditor.cxx @@ -1,9 +1,9 @@ -// Copyright (C) 2007-2013 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 // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -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); }