2 // File : VisuGUI_MagnitudeDlg.cxx
3 // Created : Wed Aug 01 10:23:06 2001
4 // Author : Laurent CORNABE & Hubert ROLLAND
7 // Copyright : PRINCIPIA
10 #include "VisuGUI_MagnitudeDlg.h"
12 #include "QAD_Application.h"
13 #include "QAD_Desktop.h"
18 VisuGUI_MagnitudeDlg::VisuGUI_MagnitudeDlg()
19 : QDialog( QAD_Application::getDesktop(), "VisuGUI_MagnitudeDlg", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
21 setCaption( tr( "Deformed Shape" ) );
22 setSizeGripEnabled( TRUE );
24 QGridLayout* TopLayout = new QGridLayout( this );
25 TopLayout->setSpacing( 6 );
26 TopLayout->setMargin( 11 );
28 QGroupBox* TopGroup = new QGroupBox( this, "TopGroup" );
29 TopGroup->setColumnLayout(0, Qt::Vertical );
30 TopGroup->layout()->setSpacing( 0 );
31 TopGroup->layout()->setMargin( 0 );
32 QGridLayout* TopGroupLayout = new QGridLayout( TopGroup->layout() );
33 TopGroupLayout->setAlignment( Qt::AlignTop );
34 TopGroupLayout->setSpacing( 6 );
35 TopGroupLayout->setMargin( 11 );
37 QLabel* ScaleLabel = new QLabel( tr( "Scale Factor:" ), TopGroup, "ScaleLabel" );
38 TopGroupLayout->addWidget( ScaleLabel, 0, 0 );
40 ScalFact = new QAD_SpinBoxDbl( TopGroup, 0, 1.0E+38, 0.1, 5);
41 ScalFact->setValue( 0.1 );
42 TopGroupLayout->addWidget( ScalFact, 0, 1 );
44 UseMagn = new QCheckBox( tr( "Magnitude coloring" ), TopGroup, "UseMagn" );
45 UseMagn->setChecked( true );
46 TopGroupLayout->addMultiCellWidget( UseMagn, 1, 1, 0, 1 );
50 QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
51 GroupButtons->setGeometry( QRect( 10, 10, 281, 48 ) );
52 GroupButtons->setColumnLayout(0, Qt::Vertical );
53 GroupButtons->layout()->setSpacing( 0 );
54 GroupButtons->layout()->setMargin( 0 );
55 QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
56 GroupButtonsLayout->setAlignment( Qt::AlignTop );
57 GroupButtonsLayout->setSpacing( 6 );
58 GroupButtonsLayout->setMargin( 11 );
60 QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
61 buttonOk->setAutoDefault( TRUE );
62 buttonOk->setDefault( TRUE );
63 GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
64 GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
65 QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
66 buttonCancel->setAutoDefault( TRUE );
67 GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
69 TopLayout->addWidget( TopGroup, 0, 0 );
70 TopLayout->addWidget( GroupButtons, 1, 0 );
72 // signals and slots connections
73 connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
74 connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
80 VisuGUI_MagnitudeDlg::~VisuGUI_MagnitudeDlg()
85 void VisuGUI_MagnitudeDlg::initFromPrsObject(VISU::DeformedShape_i* thePrs) {
86 setFactor(thePrs->GetScale());
87 UseMagn->setChecked(thePrs->isColored());
91 void VisuGUI_MagnitudeDlg::storeToPrsObject(VISU::DeformedShape_i* thePrs) {
92 thePrs->SetScale(getFactor());
93 thePrs->setColored(isColored());