Merge from V6_1_BR 07/09/2010

This commit is contained in:
vsr 2010-09-07 13:00:54 +00:00
parent 6ceb0d7750
commit cacfca6348
3 changed files with 15 additions and 1 deletions

View File

@ -76,7 +76,8 @@
//================================================================================= //=================================================================================
BasicGUI_PointDlg::BasicGUI_PointDlg( GeometryGUI* theGeometryGUI, QWidget* parent, BasicGUI_PointDlg::BasicGUI_PointDlg( GeometryGUI* theGeometryGUI, QWidget* parent,
bool modal, Qt::WindowFlags fl ) bool modal, Qt::WindowFlags fl )
: GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ),
myBusy ( false )
{ {
QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT") ) ); QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT") ) );
QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_EDGE" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_EDGE" ) ) );
@ -532,6 +533,8 @@ void BasicGUI_PointDlg::SelectionIntoArgument()
if ( aShape.IsNull() || aShape.ShapeType() != myNeedType) if ( aShape.IsNull() || aShape.ShapeType() != myNeedType)
return; return;
myBusy = true;
if ( id == GEOM_POINT_XYZ ) { if ( id == GEOM_POINT_XYZ ) {
gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) ); gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) );
GroupXYZ->SpinBox_DX->setValue( aPnt.X() ); GroupXYZ->SpinBox_DX->setValue( aPnt.X() );
@ -572,6 +575,7 @@ void BasicGUI_PointDlg::SelectionIntoArgument()
myFace = aSelectedObject; myFace = aSelectedObject;
GroupOnSurface->LineEdit1->setText( aName ); GroupOnSurface->LineEdit1->setText( aName );
} }
myBusy = false;
} }
} }
@ -638,6 +642,10 @@ void BasicGUI_PointDlg::SetEditCurrentArgument()
GroupLineIntersection->LineEdit2->setEnabled(true); GroupLineIntersection->LineEdit2->setEnabled(true);
} }
send->setDown(true); send->setDown(true);
if ( ( send == GroupLineIntersection->PushButton1 ||
send == GroupLineIntersection->PushButton2 ) && !myBusy )
SelectionIntoArgument();
} }

View File

@ -82,6 +82,8 @@ private:
GEOM::GEOM_Object_var myLine1; GEOM::GEOM_Object_var myLine1;
GEOM::GEOM_Object_var myLine2; GEOM::GEOM_Object_var myLine2;
bool myBusy;
DlgRef_3Spin* GroupXYZ; DlgRef_3Spin* GroupXYZ;
DlgRef_1Sel3Spin* GroupRefPoint; DlgRef_1Sel3Spin* GroupRefPoint;
DlgRef_1Sel1Spin* GroupOnCurve; DlgRef_1Sel1Spin* GroupOnCurve;

View File

@ -190,6 +190,10 @@ Standard_Integer GEOMImpl_PointDriver::Execute(TFunction_Logbook& log) const
Standard_TypeMismatch::Raise Standard_TypeMismatch::Raise
("Creation Point On Lines Intersection Aborted : Line shape is not an edge or wire"); ("Creation Point On Lines Intersection Aborted : Line shape is not an edge or wire");
} }
if (aRefShape1.IsSame(aRefShape2))
Standard_ConstructionError::Raise("The lines to make intersection must be different");
//Calculate Lines Intersection Point //Calculate Lines Intersection Point
BRepExtrema_DistShapeShape dst (aRefShape1, aRefShape2); BRepExtrema_DistShapeShape dst (aRefShape1, aRefShape2);
if (dst.IsDone()) { if (dst.IsDone()) {