NPAL18363: EDF635: We can now select any object in all window.

This commit is contained in:
jfa 2007-12-19 15:04:04 +00:00
parent b51d7706d2
commit add6b67d1c

View File

@ -284,7 +284,7 @@ void GenerationGUI_PrismDlg::SelectionIntoArgument()
// nbSel == 1 // nbSel == 1
Standard_Boolean testResult = Standard_False; Standard_Boolean testResult = Standard_False;
GEOM::GEOM_Object_ptr aSelectedObject = GEOM::GEOM_Object_ptr aSelectedObject =
GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult );
if (!testResult) if (!testResult)
return; return;
@ -353,31 +353,31 @@ void GenerationGUI_PrismDlg::SelectionIntoArgument()
TopoDS_Shape aShape; TopoDS_Shape aShape;
bool myOk = true; bool myOk = true;
if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() )
{ {
LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr();
TColStd_IndexedMapOfInteger aMap; TColStd_IndexedMapOfInteger aMap;
aSelMgr->GetIndexes( firstIObject(), aMap ); aSelMgr->GetIndexes( firstIObject(), aMap );
if ( aMap.Extent() == 1 ) if (aMap.Extent() == 1)
{ {
GEOM::GEOM_IShapesOperations_var aShapesOp = GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId());
getGeomEngine()->GetIShapesOperations( getStudyId() ); int anIndex = aMap(1);
int anIndex = aMap( 1 ); aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex);
aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); aName.append(":vertex_" + QString::number(anIndex));
aName.append( ":vertex_" + QString::number( anIndex ) ); aSelMgr->clearSelected();
aSelMgr->clearSelected(); }
} else
else { {
if ( (aShape.ShapeType() != TopAbs_EDGE && myEditCurrentArgument == GroupPoints2->LineEdit2 ) || if ((aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit2) ||
(aShape.ShapeType() != TopAbs_EDGE && myEditCurrentArgument == GroupPoints2->LineEdit3 )) { (aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit3))
{
aSelectedObject = GEOM::GEOM_Object::_nil(); aSelectedObject = GEOM::GEOM_Object::_nil();
aName = ""; aName = "";
myOk = false; myOk = false;
} }
} }
} }
myEditCurrentArgument->setText( aName ); myEditCurrentArgument->setText(aName);
if (myEditCurrentArgument == GroupPoints2->LineEdit1) { if (myEditCurrentArgument == GroupPoints2->LineEdit1) {
myBase = aSelectedObject; myBase = aSelectedObject;
@ -391,13 +391,11 @@ void GenerationGUI_PrismDlg::SelectionIntoArgument()
myOkPnt2 = true; myOkPnt2 = true;
myPoint2 = aSelectedObject; myPoint2 = aSelectedObject;
} }
} }
displayPreview(); displayPreview();
} }
//================================================================================= //=================================================================================
// function : LineEditReturnPressed() // function : LineEditReturnPressed()
// purpose : // purpose :