X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMeasureGUI%2FMeasureGUI_CheckShapeDlg.cxx;h=7cd562cd7b4f5f44dc1da74523710daae4634ceb;hb=12efffce9b0ebe93526a85431536159aa8da4419;hp=d63de1040322245cc1f4f007cff21c07a9382e7d;hpb=732211808796539fcf1de34e06038e7fb015ece9;p=modules%2Fgeom.git diff --git a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx index d63de1040..7cd562cd7 100644 --- a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx @@ -1,45 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// -// -// File : MeasureGUI_CheckShapeDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CheckShapeDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// #include "MeasureGUI_CheckShapeDlg.h" -#include "MeasureGUI_1Sel1TextView_QTD.h" - -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" +#include "MeasureGUI_Widgets.h" -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include #define TEXTEDIT_FONT_FAMILY "Courier" #define TEXTEDIT_FONT_SIZE 11 @@ -49,43 +39,46 @@ // purpose : Constructs a MeasureGUI_CheckShapeDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_CheckShapeDlg::MeasureGUI_CheckShapeDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_CheckShapeDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_CHECKSHAPE" ) ) ); + "GEOM", tr( "ICON_DLG_CHECKSHAPE" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_CHECK_TITLE" ) ); + setWindowTitle( tr( "GEOM_CHECK_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_CHECK_SHAPE" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CHECK_SHAPE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel1TextView_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel1TextView1Check( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_CHECK_INFOS" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); - myGrp->TextEdit1->setReadOnly( TRUE ); - + myGrp->TextView1->setReadOnly( true ); + QFont aFont( TEXTEDIT_FONT_FAMILY, TEXTEDIT_FONT_SIZE ); aFont.setStyleHint( QFont::TypeWriter, QFont::PreferAntialias ); - myGrp->TextEdit1->setFont( aFont ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->TextView1->setFont( aFont ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ + myHelpFileName = "using_measurement_tools_page.html#check_anchor"; + /* Initialisation */ Init(); } - //================================================================================= // function : ~MeasureGUI_CheckShapeDlg() // purpose : Destroys the object and frees any allocated resources @@ -104,6 +97,9 @@ void MeasureGUI_CheckShapeDlg::Init() mySelBtn = myGrp->PushButton1; mySelEdit = myGrp->LineEdit1; MeasureGUI_Skeleton::Init(); + + connect( myGrp->CheckBox1, SIGNAL( toggled( bool) ), + this, SLOT( SelectionIntoArgument() ) ); } //================================================================================= @@ -114,21 +110,23 @@ bool MeasureGUI_CheckShapeDlg::getParameters ( bool& theIsValid, QString& theMsg { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + GEOM::GEOM_IMeasureOperations_var anOper = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() ); + try { char* aMsg; - theIsValid = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->CheckShape( myObj, aMsg ); + bool isCheckGeometry = myGrp->CheckBox1->isChecked(); + if ( isCheckGeometry ) + theIsValid = anOper->CheckShapeWithGeometry( myObj, aMsg ); + else + theIsValid = anOper->CheckShape( myObj, aMsg ); theMsg = aMsg; } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } - return getOperation()->IsDone(); + return anOper->IsDone(); } } @@ -141,18 +139,18 @@ void MeasureGUI_CheckShapeDlg::processObject() { bool isShapeValid; QString aMsg; - if ( !getParameters( isShapeValid, aMsg ) ) - { - myGrp->TextEdit1->setText( "" ); + if ( !getParameters( isShapeValid, aMsg ) ) { + myGrp->TextView1->setText( "" ); return; } - if (isShapeValid) { - myGrp->TextEdit1->setText("This Shape seems to be valid."); - } else { - QString aDescr ("This Shape is not valid.\n"); + if ( isShapeValid ) { + myGrp->TextView1->setText( "This Shape seems to be valid." ); + } + else { + QString aDescr ( "This Shape is not valid.\n" ); aDescr += aMsg; - myGrp->TextEdit1->setText(aDescr); -// myGrp->TextEdit1->setText("This Shape is not valid."); + myGrp->TextView1->setText( aDescr ); +// myGrp->TextView1->setText("This Shape is not valid."); } }