X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FSALOMEDSImpl%2FSALOMEDSImpl_AttributeExpandable.cxx;h=548c1e5a7f03afccc919f6b2a518462a1c6f5184;hb=2327711cfa31b70d64ffcf23b7a901dad74c0412;hp=69451c0a02b3b66e09a01e6b06974a8d60cdb04d;hpb=e6bfea36374791cd31c274a2f97df90dc60ddaf3;p=modules%2Fkernel.git diff --git a/src/SALOMEDSImpl/SALOMEDSImpl_AttributeExpandable.cxx b/src/SALOMEDSImpl/SALOMEDSImpl_AttributeExpandable.cxx index 69451c0a0..548c1e5a7 100644 --- a/src/SALOMEDSImpl/SALOMEDSImpl_AttributeExpandable.cxx +++ b/src/SALOMEDSImpl/SALOMEDSImpl_AttributeExpandable.cxx @@ -1,42 +1,38 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 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 +// 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 +// +// 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 +// 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 // + // File : SALOMEDSImpl_AttributeExpandable.cxx // Author : Sergey RUIN // Module : SALOME - +// #include "SALOMEDSImpl_AttributeExpandable.hxx" -#ifndef WNT -using namespace std; -#endif - -IMPLEMENT_STANDARD_HANDLE( SALOMEDSImpl_AttributeExpandable, SALOMEDSImpl_GenericAttribute ) -IMPLEMENT_STANDARD_RTTIEXT( SALOMEDSImpl_AttributeExpandable, SALOMEDSImpl_GenericAttribute ) - //======================================================================= //function : GetID //purpose : //======================================================================= -const Standard_GUID& SALOMEDSImpl_AttributeExpandable::GetID () +const std::string& SALOMEDSImpl_AttributeExpandable::GetID () { - static Standard_GUID SALOMEDSImpl_AttributeExpandableID ("12837185-8F52-11d6-A8A3-0001021E8C7F"); + static std::string SALOMEDSImpl_AttributeExpandableID ("12837185-8F52-11d6-A8A3-0001021E8C7F"); return SALOMEDSImpl_AttributeExpandableID; } @@ -46,11 +42,11 @@ const Standard_GUID& SALOMEDSImpl_AttributeExpandable::GetID () //function : Set //purpose : //======================================================================= -Handle(SALOMEDSImpl_AttributeExpandable) SALOMEDSImpl_AttributeExpandable::Set (const TDF_Label& L, - const Standard_Integer value) +SALOMEDSImpl_AttributeExpandable* SALOMEDSImpl_AttributeExpandable::Set (const DF_Label& L, + const int value) { - Handle(SALOMEDSImpl_AttributeExpandable) A; - if (!L.FindAttribute(SALOMEDSImpl_AttributeExpandable::GetID(),A)) { + SALOMEDSImpl_AttributeExpandable* A = NULL; + if (!(A=(SALOMEDSImpl_AttributeExpandable*)L.FindAttribute(SALOMEDSImpl_AttributeExpandable::GetID()))) { A = new SALOMEDSImpl_AttributeExpandable(); L.AddAttribute(A); } @@ -67,20 +63,22 @@ Handle(SALOMEDSImpl_AttributeExpandable) SALOMEDSImpl_AttributeExpandable::Set ( SALOMEDSImpl_AttributeExpandable::SALOMEDSImpl_AttributeExpandable() :SALOMEDSImpl_GenericAttribute("AttributeExpandable") { - myValue = 0; + myValue = 1; } //======================================================================= //function : SetExpandable //purpose : //======================================================================= -void SALOMEDSImpl_AttributeExpandable::SetExpandable(const Standard_Integer theValue) +void SALOMEDSImpl_AttributeExpandable::SetExpandable(const int theValue) { CheckLocked(); Backup(); (theValue!=0)?myValue=1:myValue=0; + + SetModifyFlag(); //VSR: Mark the study as being modified, so it could be saved } //======================================================================= @@ -88,7 +86,7 @@ void SALOMEDSImpl_AttributeExpandable::SetExpandable(const Standard_Integer theV //purpose : //======================================================================= -const Standard_GUID& SALOMEDSImpl_AttributeExpandable::ID () const { return GetID(); } +const std::string& SALOMEDSImpl_AttributeExpandable::ID () const { return GetID(); } //======================================================================= @@ -96,7 +94,7 @@ const Standard_GUID& SALOMEDSImpl_AttributeExpandable::ID () const { return GetI //purpose : //======================================================================= -Handle(TDF_Attribute) SALOMEDSImpl_AttributeExpandable::NewEmpty () const +DF_Attribute* SALOMEDSImpl_AttributeExpandable::NewEmpty () const { return new SALOMEDSImpl_AttributeExpandable(); } @@ -106,9 +104,9 @@ Handle(TDF_Attribute) SALOMEDSImpl_AttributeExpandable::NewEmpty () const //purpose : //======================================================================= -void SALOMEDSImpl_AttributeExpandable::Restore(const Handle(TDF_Attribute)& with) +void SALOMEDSImpl_AttributeExpandable::Restore(DF_Attribute* with) { - myValue = Handle(SALOMEDSImpl_AttributeExpandable)::DownCast (with)->IsExpandable (); + myValue = dynamic_cast(with)->IsExpandable (); } //======================================================================= @@ -116,9 +114,8 @@ void SALOMEDSImpl_AttributeExpandable::Restore(const Handle(TDF_Attribute)& with //purpose : //======================================================================= -void SALOMEDSImpl_AttributeExpandable::Paste (const Handle(TDF_Attribute)& into, - const Handle(TDF_RelocationTable)& RT) const +void SALOMEDSImpl_AttributeExpandable::Paste (DF_Attribute* into) { - Handle(SALOMEDSImpl_AttributeExpandable)::DownCast (into)->SetExpandable (myValue); + dynamic_cast(into)->SetExpandable (myValue); }