IPAL21643 Point construction dialog appearance is wrong for 1st mode

This commit is contained in:
dmv 2010-03-23 14:57:14 +00:00
parent c0e748333f
commit e0d2d8d420
2 changed files with 22 additions and 13 deletions

View File

@ -43,6 +43,7 @@
#include <QLabel> #include <QLabel>
#include <QRadioButton> #include <QRadioButton>
#include <QMenu> #include <QMenu>
#include <QTimer>
#include <gp_Pnt.hxx> #include <gp_Pnt.hxx>
#include <TopoDS_Shape.hxx> #include <TopoDS_Shape.hxx>
@ -263,8 +264,7 @@ void BasicGUI_PointDlg::Init()
connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) );
connect( myParamCoord->button( PARAM_VALUE ), SIGNAL( clicked() ), this, SLOT( ClickParamCoord() ) ); connect( myParamCoord, SIGNAL( buttonClicked( int ) ), this, SLOT( ClickParamCoord( int ) ) );
connect( myParamCoord->button( COORD_VALUE ), SIGNAL( clicked() ), this, SLOT( ClickParamCoord() ) );
connect( GroupOnCurve->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); connect( GroupOnCurve->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) );
connect( GroupOnCurve->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); connect( GroupOnCurve->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) );
@ -420,9 +420,7 @@ void BasicGUI_PointDlg::ConstructorsClicked(int constructorId)
myY->setText( "" ); myY->setText( "" );
myZ->setText( "" ); myZ->setText( "" );
qApp->processEvents(); QTimer::singleShot(50, this, SLOT(updateSize()));
updateGeometry();
resize( 100, 100 );
SelectionIntoArgument(); SelectionIntoArgument();
} }
@ -952,7 +950,7 @@ void BasicGUI_PointDlg::addSubshapesToStudy()
// function : ClickParamCoord() // function : ClickParamCoord()
// purpose : // purpose :
//================================================================================= //=================================================================================
void BasicGUI_PointDlg::ClickParamCoord() void BasicGUI_PointDlg::ClickParamCoord( int id )
{ {
updateParamCoord( true ); updateParamCoord( true );
displayPreview(); displayPreview();
@ -965,7 +963,6 @@ void BasicGUI_PointDlg::ClickParamCoord()
void BasicGUI_PointDlg::updateParamCoord(bool theIsUpdate) void BasicGUI_PointDlg::updateParamCoord(bool theIsUpdate)
{ {
bool isParam = myParamCoord->checkedId() == PARAM_VALUE; bool isParam = myParamCoord->checkedId() == PARAM_VALUE;
GroupXYZ->setShown( !isParam );
const int id = getConstructorId(); const int id = getConstructorId();
if ( id == GEOM_POINT_EDGE ) { if ( id == GEOM_POINT_EDGE ) {
@ -978,11 +975,11 @@ void BasicGUI_PointDlg::updateParamCoord(bool theIsUpdate)
GroupOnSurface->SpinBox_DX->setShown( isParam ); GroupOnSurface->SpinBox_DX->setShown( isParam );
GroupOnSurface->SpinBox_DY->setShown( isParam ); GroupOnSurface->SpinBox_DY->setShown( isParam );
} }
if ( theIsUpdate ) {
qApp->processEvents(); GroupXYZ->setShown( !isParam );
updateGeometry();
resize( minimumSizeHint() ); if ( theIsUpdate )
} QTimer::singleShot(50, this, SLOT(updateSize()));
} }
//================================================================================= //=================================================================================
@ -1001,3 +998,14 @@ void BasicGUI_PointDlg::onBtnPopup( QAction* a )
localSelection( GEOM::GEOM_Object::_nil(), myNeedType ); localSelection( GEOM::GEOM_Object::_nil(), myNeedType );
} }
//=================================================================================
// function : updateSize
// purpose : adjust dialog size to minimum
//=================================================================================
void BasicGUI_PointDlg::updateSize()
{
qApp->processEvents();
updateGeometry();
resize( minimumSizeHint() );
}

View File

@ -111,8 +111,9 @@ private slots:
void ConstructorsClicked( int ); void ConstructorsClicked( int );
void ValueChangedInSpinBox( double ); void ValueChangedInSpinBox( double );
void SetDoubleSpinBoxStep( double ); void SetDoubleSpinBoxStep( double );
void ClickParamCoord(); void ClickParamCoord( int );
void onBtnPopup( QAction* ); void onBtnPopup( QAction* );
void updateSize();
}; };
#endif // BASICGUI_POINTDLG_H #endif // BASICGUI_POINTDLG_H