- if ( anObj->hasEntry() ) {
- QAD_Study* ActiveStudy = QAD_Application::getDesktop()->getActiveStudy();
- SALOMEDS::Study_var aStudy = ActiveStudy->getStudyDocument();
- SALOMEDS::SObject_var obj = aStudy->FindObjectID( anObj->getEntry() );
+ _PTR(SObject) obj (study->FindObjectID(entry.latin1())), aRefSO;
+ if( extractReference && obj && obj->ReferencedObject( aRefSO ) )
+ obj = aRefSO;
+ if (!obj) return false;
+
+ _PTR(SObject) objFather = obj->GetFather();
+ _PTR(SComponent) objComponent = obj->GetFatherComponent();
+
+ if( objComponent->ComponentDataType()!="SMESH" )
+ return false;