-// Copyright (C) 2009-2013 CEA/DEN, EDF R&D
+// Copyright (C) 2009-2022 CEA/DEN, EDF R&D
//
// 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
#include <vtkActorCollection.h>
#include <vtkUnstructuredGrid.h>
-
-
#include <SUIT_Session.h>
-#include <SalomeApp_Study.h>
#include <SalomeApp_Application.h>
#include <OCCViewer_ViewWindow.h>
}
- _PTR(Study) GetActiveStudyDocument()
+ _PTR(Study) getStudy()
{
- SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(GetActiveStudy());
- if (aStudy)
- return aStudy->studyDS();
- else
- return _PTR(Study)();
+ static _PTR(Study) _study;
+ if(!_study)
+ _study = SalomeApp_Application::getStudy();
+ return _study;
}
theName = "";
- TColStd_IndexedMapOfInteger aMapIndex;
+ SVTK_TIndexedMapOfVtkId aMapIndex;
theSelector->GetIndex(theIO,aMapIndex);
typedef std::set<int> TIdContainer;
- std::set<int> anIdContainer;
+ std::set<vtkIdType> anIdContainer;
- for( int i = 1; i <= aMapIndex.Extent(); i++)
+ for( vtkIdType i = 1; i <= aMapIndex.Extent(); i++)
anIdContainer.insert(aMapIndex(i));
- std::set<int>::const_iterator anIter = anIdContainer.begin();
+ std::set<vtkIdType>::const_iterator anIter = anIdContainer.begin();
for( ; anIter != anIdContainer.end(); anIter++)
theName += QString(" %1").arg(*anIter);
continue;
Handle(SelectMgr_Selection) sel = theObj->Selection( m );
-
- for ( sel->Init(); sel->More(); sel->Next() ) {
- Handle(SelectBasics_SensitiveEntity) entity = sel->Sensitive();
+ const NCollection_Vector<Handle(SelectMgr_SensitiveEntity)>& selected = sel->Entities();
+ for ( NCollection_Vector<Handle(SelectMgr_SensitiveEntity)>::Iterator selIter( selected );
+ selIter.More(); selIter.Next() ) {
+ const Handle(SelectMgr_SensitiveEntity) aHSenEntity = selIter.Value();
+ if ( aHSenEntity.IsNull() )
+ continue;
+ Handle(SelectBasics_SensitiveEntity) entity = aHSenEntity->BaseSensitive();
if ( entity.IsNull() )
continue;