X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMeasureGUI%2FMeasureGUI_InertiaDlg.cxx;h=389345dd9246c46823220f058e65a71afbc638c8;hb=12efffce9b0ebe93526a85431536159aa8da4419;hp=8caa6f25abbe6a001770a3dbdbacdf9d477ffc44;hpb=239f8109c64fa0c5a2e1d87a420bad5529b57f48;p=modules%2Fgeom.git diff --git a/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx b/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx index 8caa6f25a..389345dd9 100644 --- a/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx @@ -1,98 +1,89 @@ -// 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 -// -// 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. -// -// 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.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 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 +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// File : MeasureGUI_InertiaDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_InertiaDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// #include "MeasureGUI_InertiaDlg.h" -#include "MeasureGUI_1Sel12LineEdit_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "GEOMBase.h" +#include +#include -#include -#include -#include #include -#include - -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" -#include -#include -#include -#include -#include -#include +#include +#include +#include //================================================================================= // class : MeasureGUI_InertiaDlg() // purpose : Constructs a MeasureGUI_InertiaDlg 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_InertiaDlg::MeasureGUI_InertiaDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_InertiaDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr( "ICON_DLG_INERTIA" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_INERTIA_TITLE" ) ); + setWindowTitle( tr( "GEOM_INERTIA_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_INERTIA_CONSTR" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_INERTIA_CONSTR" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel12LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel12LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_MATRIX" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_INERTIA_I" ).arg( "1" ) ); myGrp->TextLabel3->setText( tr( "GEOM_INERTIA_I" ).arg( "2" ) ); myGrp->TextLabel4->setText( tr( "GEOM_INERTIA_I" ).arg( "3" ) ); myGrp->TextLabel5->setText( tr( "GEOM_INERTIA_IXYZ" ) ); - myGrp->LineEdit11->setReadOnly( TRUE ); - myGrp->LineEdit12->setReadOnly( TRUE ); - myGrp->LineEdit13->setReadOnly( TRUE ); - myGrp->LineEdit21->setReadOnly( TRUE ); - myGrp->LineEdit22->setReadOnly( TRUE ); - myGrp->LineEdit23->setReadOnly( TRUE ); - myGrp->LineEdit31->setReadOnly( TRUE ); - myGrp->LineEdit32->setReadOnly( TRUE ); - myGrp->LineEdit33->setReadOnly( TRUE ); - myGrp->LineEdit41->setReadOnly( TRUE ); - myGrp->LineEdit42->setReadOnly( TRUE ); - myGrp->LineEdit43->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->LineEdit11->setReadOnly( true ); + myGrp->LineEdit12->setReadOnly( true ); + myGrp->LineEdit13->setReadOnly( true ); + myGrp->LineEdit21->setReadOnly( true ); + myGrp->LineEdit22->setReadOnly( true ); + myGrp->LineEdit23->setReadOnly( true ); + myGrp->LineEdit31->setReadOnly( true ); + myGrp->LineEdit32->setReadOnly( true ); + myGrp->LineEdit33->setReadOnly( true ); + myGrp->LineEdit41->setReadOnly( true ); + myGrp->LineEdit42->setReadOnly( true ); + myGrp->LineEdit43->setReadOnly( true ); + 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 ); /***************************************************************/ @@ -132,8 +123,7 @@ void MeasureGUI_InertiaDlg::processObject() gp_XYZ anIXYZ; gp_Mat aMat; - if ( !getParameters( aMat, anIXYZ ) ) - { + if ( !getParameters( aMat, anIXYZ ) ) { mySelEdit->setText( "" ); myGrp->LineEdit11->setText( "" ); @@ -152,23 +142,22 @@ void MeasureGUI_InertiaDlg::processObject() myGrp->LineEdit42->setText( "" ); myGrp->LineEdit43->setText( "" ); } - else - { - myGrp->LineEdit11->setText( QString( "%1" ).arg( aMat( 1, 1 ), 12, 'e', 4 ) ); - myGrp->LineEdit12->setText( QString( "%1" ).arg( aMat( 1, 2 ), 12, 'e', 4 ) ); - myGrp->LineEdit13->setText( QString( "%1" ).arg( aMat( 1, 3 ), 12, 'e', 4 ) ); + else { + myGrp->LineEdit11->setText( DlgRef::PrintDoubleValue( aMat( 1, 1 ), -6 ) ); + myGrp->LineEdit12->setText( DlgRef::PrintDoubleValue( aMat( 1, 2 ), -6 ) ); + myGrp->LineEdit13->setText( DlgRef::PrintDoubleValue( aMat( 1, 3 ), -6 ) ); - myGrp->LineEdit21->setText( QString( "%1" ).arg( aMat( 2, 1 ), 12, 'e', 4 ) ); - myGrp->LineEdit22->setText( QString( "%1" ).arg( aMat( 2, 2 ), 12, 'e', 4 ) ); - myGrp->LineEdit23->setText( QString( "%1" ).arg( aMat( 2, 3 ), 12, 'e', 4 ) ); + myGrp->LineEdit21->setText( DlgRef::PrintDoubleValue( aMat( 2, 1 ), -6 ) ); + myGrp->LineEdit22->setText( DlgRef::PrintDoubleValue( aMat( 2, 2 ), -6 ) ); + myGrp->LineEdit23->setText( DlgRef::PrintDoubleValue( aMat( 2, 3 ), -6 ) ); - myGrp->LineEdit31->setText( QString( "%1" ).arg( aMat( 3, 1 ), 12, 'e', 4 ) ); - myGrp->LineEdit32->setText( QString( "%1" ).arg( aMat( 3, 2 ), 12, 'e', 4 ) ); - myGrp->LineEdit33->setText( QString( "%1" ).arg( aMat( 3, 3 ), 12, 'e', 4 ) ); + myGrp->LineEdit31->setText( DlgRef::PrintDoubleValue( aMat( 3, 1 ), -6 ) ); + myGrp->LineEdit32->setText( DlgRef::PrintDoubleValue( aMat( 3, 2 ), -6 ) ); + myGrp->LineEdit33->setText( DlgRef::PrintDoubleValue( aMat( 3, 3 ), -6 ) ); - myGrp->LineEdit41->setText( QString( "%1" ).arg( anIXYZ.X(), 12, 'e', 4 ) ); - myGrp->LineEdit42->setText( QString( "%1" ).arg( anIXYZ.Y(), 12, 'e', 4 ) ); - myGrp->LineEdit43->setText( QString( "%1" ).arg( anIXYZ.Z(), 12, 'e', 4 ) ); + myGrp->LineEdit41->setText( DlgRef::PrintDoubleValue( anIXYZ.X(), -6 ) ); + myGrp->LineEdit42->setText( DlgRef::PrintDoubleValue( anIXYZ.Y(), -6 ) ); + myGrp->LineEdit43->setText( DlgRef::PrintDoubleValue( anIXYZ.Z(), -6 ) ); } } @@ -181,25 +170,23 @@ bool MeasureGUI_InertiaDlg::getParameters( gp_Mat& I, { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + GEOM::GEOM_IMeasureOperations_var anOper = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() ); + try { double x, y, z; - GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetInertia( myObj, - I( 1, 1 ), I( 1, 2 ), I( 1, 3 ), - I( 2, 1 ), I( 2, 2 ), I( 2, 3 ), - I( 3, 1 ), I( 3, 2 ), I( 3, 3 ), - x, y, z ); + anOper->GetInertia( myObj, + I( 1, 1 ), I( 1, 2 ), I( 1, 3 ), + I( 2, 1 ), I( 2, 2 ), I( 2, 3 ), + I( 3, 1 ), I( 3, 2 ), I( 3, 3 ), + x, y, z ); theIXYZ.SetCoord( x, y, z ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } - return getOperation()->IsDone(); + return anOper->IsDone(); } }