X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FBasicGUI%2FBasicGUI_PlaneDlg.cxx;h=e87cde189d60af48003c0c1dd903f3176de16694;hb=643c92eb8f6e84b5643ba9c3bc990110d166f96b;hp=feca255ea02e20d67cdc6e884fa892d9da208510;hpb=7b409949c0c3eee7fc973db215c98c27a1f62d16;p=modules%2Fgeom.git diff --git a/src/BasicGUI/BasicGUI_PlaneDlg.cxx b/src/BasicGUI/BasicGUI_PlaneDlg.cxx index feca255ea..e87cde189 100644 --- a/src/BasicGUI/BasicGUI_PlaneDlg.cxx +++ b/src/BasicGUI/BasicGUI_PlaneDlg.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2010 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 @@ -19,6 +19,7 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + // GEOM GEOMGUI : GUI for Geometry component // File : BasicGUI_PlaneDlg.cxx // Author : Lucien PIGNOLONI, Open CASCADE S.A.S. @@ -53,7 +54,7 @@ // TRUE to construct a modal dialog. //================================================================================= BasicGUI_PlaneDlg::BasicGUI_PlaneDlg( GeometryGUI* theGeometryGUI, QWidget* parent, - bool modal, Qt::WindowFlags fl ) + bool modal, Qt::WindowFlags fl ) : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PLANE_PV" ) ) ); @@ -184,15 +185,15 @@ void BasicGUI_PlaneDlg::Init() double aTrimSize = 2000.0; /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupPntDir->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPntDir->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupPntDir->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( Group3Pnts->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Pnts->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); Group3Pnts->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( GroupFace->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupFace->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupFace->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( Group2Vec->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Vec->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); Group2Vec->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( GroupLCS->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupLCS->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupLCS->SpinBox_DX->setValue( aTrimSize ); /* signals and slots connections */ @@ -363,10 +364,11 @@ void BasicGUI_PlaneDlg::ConstructorsClicked( int constructorId ) qApp->processEvents(); updateGeometry(); resize( minimumSizeHint() ); + SelectionIntoArgument(); myEditCurrentArgument->setFocus(); connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), - this, SLOT( SelectionIntoArgument() ) ); + this, SLOT( SelectionIntoArgument() ) ); displayPreview(); } @@ -440,9 +442,8 @@ void BasicGUI_PlaneDlg::SelectionIntoArgument() } // nbSel == 1 - Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); - if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( aSelList.First() ); + if ( !CORBA::is_nil( aSelectedObject ) ) { QString aName = GEOMBase::GetName( aSelectedObject ); TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; if ( myEditCurrentArgument == GroupPntDir->LineEdit2 || myEditCurrentArgument == Group2Vec->LineEdit1 || myEditCurrentArgument == Group2Vec->LineEdit2) @@ -465,16 +466,16 @@ void BasicGUI_PlaneDlg::SelectionIntoArgument() else aName += QString( ":vertex_%1" ).arg( anIndex ); - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); - } - else { - aSelectedObject = aFindedObject; // get Object from study - } + if ( aFindedObject->_is_nil() ) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); + } + else { + aSelectedObject = aFindedObject; // get Object from study + } } else { // Global Selection if ( aShape.ShapeType() != aNeedType ) { @@ -489,50 +490,50 @@ void BasicGUI_PlaneDlg::SelectionIntoArgument() /* if (!aSelectedObject->_is_nil()) { // clear selection if something selected globalSelection(); if ( myEditCurrentArgument == GroupFace->LineEdit1 ) { - TColStd_MapOfInteger aMap; - aMap.Add( GEOM_PLANE ); - aMap.Add( GEOM_MARKER ); - globalSelection( aMap ); + TColStd_MapOfInteger aMap; + aMap.Add( GEOM_PLANE ); + aMap.Add( GEOM_MARKER ); + globalSelection( aMap ); } else - localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); - }*/ + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + }*/ if ( myEditCurrentArgument == GroupPntDir->LineEdit1 ) { myPoint = aSelectedObject; if ( !myPoint->_is_nil() && myDir->_is_nil() ) - GroupPntDir->PushButton2->click(); + GroupPntDir->PushButton2->click(); } else if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) { myDir = aSelectedObject; if ( !myDir->_is_nil() && myPoint->_is_nil() ) - GroupPntDir->PushButton1->click(); + GroupPntDir->PushButton1->click(); } else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) { myPoint1 = aSelectedObject; if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) - Group3Pnts->PushButton2->click(); + Group3Pnts->PushButton2->click(); } else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) { myPoint2 = aSelectedObject; if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) - Group3Pnts->PushButton3->click(); + Group3Pnts->PushButton3->click(); } else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) { myPoint3 = aSelectedObject; if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) - Group3Pnts->PushButton1->click(); + Group3Pnts->PushButton1->click(); } else if ( myEditCurrentArgument == GroupFace->LineEdit1 ) myFace = aSelectedObject; else if ( myEditCurrentArgument == Group2Vec->LineEdit1 ) { myVec1 = aSelectedObject; if ( !myVec1->_is_nil() && myVec2->_is_nil() ) - Group2Vec->PushButton2->click(); + Group2Vec->PushButton2->click(); } else if ( myEditCurrentArgument == Group2Vec->LineEdit2 ) { myVec2 = aSelectedObject; if ( !myVec2->_is_nil() && myVec1->_is_nil() ) - Group2Vec->PushButton1->click(); + Group2Vec->PushButton1->click(); } else if ( myEditCurrentArgument == GroupLCS->LineEdit1 ) myLCS = aSelectedObject; @@ -660,7 +661,7 @@ void BasicGUI_PlaneDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), - this, SLOT( SelectionIntoArgument() ) ); + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); SelectionIntoArgument(); @@ -741,7 +742,7 @@ GEOM::GEOM_IOperations_ptr BasicGUI_PlaneDlg::createOperation() //================================================================================= static bool isEqual( const GEOM::GEOM_Object_var& thePnt1, const GEOM::GEOM_Object_var& thePnt2 ) { - return thePnt1->_is_equivalent( thePnt2 ); + return thePnt1->_is_equivalent( thePnt2 ); } //=================================================================================