X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FVISUGUI%2FVisuGUI_TimeAnimation.cxx;h=5b0779f1dc50b0d9a35454232844b1dd0af32419;hb=de799091f3bde871c887d0bf34f9f5f1c9146de8;hp=3d1f175d41107d14141df6b5dedadd1db7c9b9ab;hpb=17b175ff4b710fc93421509ffa7583edd1678a5d;p=modules%2Fvisu.git diff --git a/src/VISUGUI/VisuGUI_TimeAnimation.cxx b/src/VISUGUI/VisuGUI_TimeAnimation.cxx index 3d1f175d..5b0779f1 100644 --- a/src/VISUGUI/VisuGUI_TimeAnimation.cxx +++ b/src/VISUGUI/VisuGUI_TimeAnimation.cxx @@ -127,12 +127,12 @@ SetupDlg::SetupDlg(QWidget* theParent, VISU_TimeAnimation* theAnimator) connect( myTypeCombo, SIGNAL( activated(int) ), this, SLOT( onTypeChanged(int) ) ); - QPushButton* aBarBtn = new QPushButton("Scalar Bar...", aPropBox); - connect( aBarBtn, SIGNAL( clicked() ), - this, SLOT( onScalarBarDlg() ) ); + // QPushButton* aBarBtn = new QPushButton("Scalar Bar...", aPropBox); + //connect( aBarBtn, SIGNAL( clicked() ), + // this, SLOT( onScalarBarDlg() ) ); myPropBtn = new QPushButton("Properties...", aPropBox); - myPropBtn->setEnabled(theAnimator->getFieldData(0).myPrsType != VISU::TSCALARMAP); + // myPropBtn->setEnabled(theAnimator->getFieldData(0).myPrsType != VISU::TSCALARMAP); connect( myPropBtn, SIGNAL( clicked() ), this, SLOT( onPreferencesDlg() ) ); @@ -143,7 +143,7 @@ SetupDlg::SetupDlg(QWidget* theParent, VISU_TimeAnimation* theAnimator) QHBoxLayout* aBtnLayout = new QHBoxLayout(aBtnBox->layout()); aBtnLayout->addStretch(); - QPushButton* aCloseBtn = new QPushButton(tr("BUT_CLOSE"), aBtnBox); + QPushButton* aCloseBtn = new QPushButton(tr("VISU_BUT_OK"), aBtnBox); connect(aCloseBtn, SIGNAL(clicked()), this, SLOT(close())); aMainLayout->addWidget(aBtnBox); @@ -186,7 +186,7 @@ void SetupDlg::onFieldChange(int theIndex) { aData.myPrsType = VISU::TSTREAMLINES; break; } - myPropBtn->setEnabled(aData.myPrsType != VISU::TSCALARMAP); + //myPropBtn->setEnabled(aData.myPrsType != VISU::TSCALARMAP); } //************************************************************************ @@ -213,13 +213,13 @@ void SetupDlg::onTypeChanged(int theIndex) { break; } myAnimator->clearData(aData); - myPropBtn->setEnabled(aData.myPrsType != VISU::TSCALARMAP); + //myPropBtn->setEnabled(aData.myPrsType != VISU::TSCALARMAP); //myAnimator->generatePresentations(myFieldLst->currentItem()); } //************************************************************************ -void SetupDlg::onScalarBarDlg() { +/*void SetupDlg::onScalarBarDlg() { QApplication::setOverrideCursor( Qt::waitCursor ); FieldData& aData = myAnimator->getFieldData(myFieldLst->currentItem()); if (aData.myPrs == 0) @@ -233,67 +233,60 @@ void SetupDlg::onScalarBarDlg() { aScalarBarDlg->storeToPrsObject(aData.myPrs[i]); } } - +*/ //************************************************************************ void SetupDlg::onPreferencesDlg() { QApplication::setOverrideCursor( Qt::waitCursor ); FieldData& aData = myAnimator->getFieldData(myFieldLst->currentItem()); - if (aData.myPrs == 0) + if (aData.myPrs.empty()) myAnimator->generatePresentations(myFieldLst->currentItem()); QApplication::restoreOverrideCursor(); +// BUG VISU5725 : Compatibility gcc 2.95 +// #define EDITPRS(TYPE, DLG) \ +// { \ +// DLG* aDlg = new DLG(); \ +// aDlg->initFromPrsObject(dynamic_cast(aData.myPrs.at(0))); \ +// if (aDlg->exec()) { \ +// for (int i = 0; i < aData.myNbFrames; i++) \ +// aDlg->storeToPrsObject(dynamic_cast(aData.myPrs.at(i))); \ +// } \ +// delete aDlg; \ +// } + + +#define EDITPRS(TYPE, DLG) {DLG* aDlg = new DLG(); aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); if (aDlg->exec()) { for (int i = 0; i < aData.myNbFrames; i++) aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); } delete aDlg;} + switch (myTypeCombo->currentItem()) { + case 0: //Scalar Map + EDITPRS(VISU::ScalarMap_i, VisuGUI_ScalarBarDlg); + break; case 1: //Iso Surfaces - { - VisuGUI_IsoSurfacesDlg* aDlg = new VisuGUI_IsoSurfacesDlg(); - aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); - if (aDlg->exec()) { - for (int i = 0; i < aData.myNbFrames; i++) - aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); - } - } + EDITPRS(VISU::IsoSurfaces_i, VisuGUI_IsoSurfacesDlg); break; case 2: //Cut Planes + // EDITPRS(VISU::CutPlanes_i, VisuGUI_CutPlanesDlg); { - VisuGUI_CutPlanesDlg* aDlg = new VisuGUI_CutPlanesDlg(); - aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); + VisuGUI_CutPlanesDlg* aDlg = new VisuGUI_CutPlanesDlg(false, true); + aDlg->initFromPrsObject(dynamic_cast(aData.myPrs.at(0))); if (aDlg->exec()) { for (int i = 0; i < aData.myNbFrames; i++) - aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); + aDlg->storeToPrsObject(dynamic_cast(aData.myPrs.at(i))); } + delete aDlg; } break; case 3: //Deformed Shape - { - VisuGUI_MagnitudeDlg* aDlg = new VisuGUI_MagnitudeDlg(); - aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); - if (aDlg->exec()) { - for (int i = 0; i < aData.myNbFrames; i++) - aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); - } - } + EDITPRS(VISU::DeformedShape_i, VisuGUI_MagnitudeDlg); break; case 4: //Vectors - { - VisuGUI_VectorsDlg* aDlg = new VisuGUI_VectorsDlg(); - aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); - if (aDlg->exec()) { - for (int i = 0; i < aData.myNbFrames; i++) - aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); - } - } + EDITPRS(VISU::Vectors_i, VisuGUI_VectorsDlg); break; case 5: //Stream Lines - { - VisuGUI_StreamLinesDlg* aDlg = new VisuGUI_StreamLinesDlg(); - aDlg->initFromPrsObject(dynamic_cast(aData.myPrs[0])); - if (aDlg->exec()) { - for (int i = 0; i < aData.myNbFrames; i++) - aDlg->storeToPrsObject(dynamic_cast(aData.myPrs[i])); - } - } + EDITPRS(VISU::StreamLines_i, VisuGUI_StreamLinesDlg); break; } +#undef EDITPRS } //************************************************************************ @@ -567,6 +560,8 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg(SALOMEDS::Study_var theStudy) mySaveCheck = new QCheckBox("Save pictures to directory", aSaveBox); aSaveLay->addMultiCellWidget(mySaveCheck, 0, 0, 0, 2); + connect(mySaveCheck, SIGNAL( toggled(bool)), + aWheel, SLOT( setDisabled(bool) )); QLabel* aPathLbl = new QLabel("Path:", aSaveBox); aPathLbl->setEnabled(false); @@ -636,13 +631,13 @@ void VisuGUI_TimeAnimationDlg::createFrames() { QApplication::setOverrideCursor( Qt::waitCursor ); for (int i = 0; i < myAnimator->getNbFields(); i++) { - if (myAnimator->getFieldData(i).myPrs == 0) + if (myAnimator->getFieldData(i).myPrs.empty()) myAnimator->generatePresentations(i); } if (myAnimator->getNbFrames() == 0) { myPlayFrame->setEnabled(false); QApplication::restoreOverrideCursor(); - QMessageBox::warning(QAD_Application::getDesktop(), tr("ERROR"), tr("MSG_NO_ANIMATIONDATA")); + QMessageBox::warning(QAD_Application::getDesktop(), tr("ERROR"), tr("MSG_NO_ANIMATIONDATA")); return; } mySlider->setMaxValue(myAnimator->getNbFrames()-1); @@ -753,6 +748,7 @@ void VisuGUI_TimeAnimationDlg::onExecution(long theNewFrame, double theTime) { //************************************************************************ void VisuGUI_TimeAnimationDlg::onSetupDlg() { + if (myAnimator->getNbFrames() > 0) myAnimator->firstFrame(); SetupDlg* aDlg = new SetupDlg(this, myAnimator); aDlg->exec(); myPlayFrame->setEnabled(false); @@ -761,7 +757,9 @@ void VisuGUI_TimeAnimationDlg::onSetupDlg() { //************************************************************************ void VisuGUI_TimeAnimationDlg::onBrowse() { - myPathEdit->setText(QAD_FileDlg::getExistingDirectory(this, "/","Select path")); + QString aPath = QAD_FileDlg::getExistingDirectory(this, "/","Select path"); + if (!aPath.isEmpty()) + myPathEdit->setText(aPath); }