-using namespace std;
+// Copyright (C) 2011-2022 CEA/DEN, EDF R&D
+//
+// 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, or (at your option) any later version.
+//
+// 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
+//
#include "MonCreateIteration.h"
#include "MonCreateHypothesis.h"
#include "HomardQtCommun.h"
#include <utilities.h>
+using namespace std;
// -----------------------------------------------------------------------------------------------------
-MonCreateIteration::MonCreateIteration(QWidget* parent, bool modal,
- HOMARD::HOMARD_Gen_var myHomardGen, QString IterParentName ):
+MonCreateIteration::MonCreateIteration(QWidget* parent, bool modal,
+ HOMARD::HOMARD_Gen_var myHomardGen0, QString IterParentName ):
// -----------------------------------------------------------------------------------------------------
/* Constructs a MonCreateIteration
* Inherits from CasHomard
* Sets attributes to default values
*/
- QDialog(0),
+ QScrollArea(0),
Ui_CreateIteration(),
- _IterationName(""),
+ _Name(""),
_IterParentName(IterParentName),
_CaseName("")
{
MESSAGE("Constructeur");
- _myHomardGen=HOMARD::HOMARD_Gen::_duplicate(myHomardGen);
+ myHomardGen=HOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
setupUi(this);
- setModal(modal);
+ if ( modal ) { setWindowModality(Qt::WindowModal); }
+ else { setWindowModality(Qt::NonModal); }
InitConnect();
- SetNewIterationName();
+ SetNewName();
GetHypotheses();
- if (_IterParentName != QString(""))
- { SetIterParentName(); }
- else
- {setModal(false); /* permet selection de l iteration dans l arbre d etude */}
+ if (_IterParentName != QString("")) { SetIterParentName(); }
+ else { setWindowModality(Qt::NonModal) ; /* permet selection de l'iteration dans l arbre d etude */}
SetTSNo();
+//
+ adjustSize();
}
-
// ------------------------------------------------------------------------
MonCreateIteration::~MonCreateIteration()
// ------------------------------------------------------------------------
void MonCreateIteration::GetHypotheses()
// ------------------------------------------------------------------------
{
- HOMARD::listeHypotheses_var mesHypotheses = _myHomardGen->GetAllHypotheses();
+ HOMARD::listeHypotheses_var mesHypotheses = myHomardGen->GetAllHypothesesName();
for (int i=0; i<mesHypotheses->length(); i++)
{
CBHypothese->addItem(QString(mesHypotheses[i]));
}
}
-
// ------------------------------------------------------------------------
bool MonCreateIteration::PushOnApply()
// ------------------------------------------------------------------------
{
MESSAGE("PushOnApply");
//
- QString aIterationName = LEIterationName->text().trimmed();
- if ( aIterationName == QString (""))
+ QString aName = LEName->text().trimmed();
+ if ( aName == QString (""))
{
- QMessageBox::information( 0, "Error",
- QString(" Nommer l iteration "),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_NAME") );
return false;
}
if ( _IterParentName == QString (""))
{
- QMessageBox::information( 0, "Error",
- QString(" Donner le point de depart "),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_STARTING_POINT") );
return false;
}
QString aMeshName_np1=LEMeshName_np1->text().trimmed();
if (aMeshName_np1 == "" )
{
- QMessageBox::information( 0, "Error",
- QString(" Donner le nom du maillage final."),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_MESH") );
return false;
}
QString monHypoName=CBHypothese->currentText();
if (monHypoName == "" )
{
- QMessageBox::information( 0, "Error",
- QString(" Choisir une hypothese "),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_HYPO") );
return false;
}
- HOMARD::HOMARD_Hypothesis_var _myHypothesis = _myHomardGen->GetHypothesis(monHypoName.toStdString().c_str());
+ HOMARD::HOMARD_Hypothesis_var _myHypothesis = myHomardGen->GetHypothesis(monHypoName.toStdString().c_str());
HOMARD::listeTypes_var ListTypes (_myHypothesis->GetAdapRefinUnRef());
int TypeAdap = ListTypes[0];
- if ( TypeAdap == 1 and LEFieldFile->text().trimmed() == QString("") )
+ if ( TypeAdap == 1 && LEFieldFile->text().trimmed() == QString("") )
{
- QMessageBox::information( 0, "Error",
- QString("Avec cette hypothese, il faut fournir le fichier du champ."),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_FIELD_FILE") );
return false;
}
MESSAGE ("_IterParentName.toStdString " << _IterParentName.toStdString() );
// Creation de l'objet CORBA si ce n'est pas deja fait sous le meme nom
- if (_IterationName != aIterationName)
+ if (_Name != aName)
{
try
{
- _IterationName = aIterationName;
- std::cerr << _IterationName.toStdString() << std::endl;
- aIter = _myHomardGen->CreateIteration( \
- CORBA::string_dup(_IterationName.toStdString().c_str()),
+ _Name = aName;
+ std::cerr << _Name.toStdString() << std::endl;
+ aIter = myHomardGen->CreateIteration( \
+ CORBA::string_dup(_Name.toStdString().c_str()),
CORBA::string_dup(_IterParentName.toStdString().c_str()));
}
- catch( SALOME::SALOME_Exception& S_ex )
+ catch( SALOME::SALOME_Exception& S_ex )
{
- QMessageBox::information( 0, "Error",
- QString(CORBA::string_dup(S_ex.details.text)),
- QMessageBox::Ok + QMessageBox::Default );
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr(CORBA::string_dup(S_ex.details.text)) );
return false;
}
}
-
// Mise en place des attributs
- const char* IterName = aIter->GetName() ;
- std::cerr << IterName << std::endl;
+ std::string IterName = aIter->GetName() ;
if ( LEFieldFile->text().trimmed() != QString(""))
{
QString FieldFile=LEFieldFile->text().trimmed();
+ aIter->SetFieldFile(CORBA::string_dup(FieldFile.toStdString().c_str()));
int rank = SpinBox_Rank->value();
int step = SpinBox_TimeStep->value();
- aIter->SetFieldFile(CORBA::string_dup(FieldFile.toStdString().c_str()));
- aIter->SetTimeStepRank(rank,step);
+ if ( step == -2 ) { aIter->SetTimeStepRankLast(); }
+ else { aIter->SetTimeStepRank(step,rank); }
}
- _myHomardGen->AssociateIterHypo (IterName, monHypoName.toStdString().c_str());
+ myHomardGen->AssociateIterHypo (IterName.c_str(), monHypoName.toStdString().c_str());
aIter->SetMeshName(CORBA::string_dup(aMeshName_np1.toStdString().c_str()));
- HOMARD_UTILS::updateObjBrowser();
+ HOMARD_UTILS::updateObjBrowser() ;
+
return true;
}
-
// ------------------------------------------------------------------------
void MonCreateIteration::PushOnOK()
// ------------------------------------------------------------------------
bool bOK = PushOnApply();
if ( bOK ) this->close();
}
-
// ------------------------------------------------------------------------
void MonCreateIteration::PushOnHelp()
// ------------------------------------------------------------------------
{
- HOMARD_UTILS::PushOnHelp(QString("gui_create_iteration.html"));
+ std::string LanguageShort = myHomardGen->GetLanguageShort();
+ HOMARD_UTILS::PushOnHelp(QString("gui_create_iteration.html"), QString(""), QString(LanguageShort.c_str()));
}
-
// ------------------------------------------------------------------------
void MonCreateIteration::SetIterParentName()
// ------------------------------------------------------------------------
if (_IterParentName == QString("")) { raise();return;};
}
_CaseName=HOMARD_QT_COMMUN::SelectionCasEtude();
- HOMARD::HOMARD_Iteration_var aIterParent = _myHomardGen->GetIteration(_IterParentName.toStdString().c_str()) ;
+ HOMARD::HOMARD_Iteration_var aIterParent = myHomardGen->GetIteration(_IterParentName.toStdString().c_str()) ;
QString MeshName = aIterParent->GetMeshName();
LEMeshName_n->setText(MeshName);
LEMeshName_n->setReadOnly(1);
LEMeshName_np1->setText(MeshName);
-
+
LEIterationParentName->setText(_IterParentName);
}
-
// -------------------------------------------------
-void MonCreateIteration::SetNewIterationName()
+void MonCreateIteration::SetNewName()
// --------------------------------------------------
{
// Recherche d'un nom par defaut qui n'existe pas encore
- HOMARD::listeIterations_var myIters=_myHomardGen->GetAllIterations();
- int num = 0;//
- QString aIterationName="";
- while (aIterationName=="" )
+ HOMARD::listeIterations_var MyObjects=myHomardGen->GetAllIterationsName();
+ int num = 0;//
+ QString aName="";
+ while (aName=="" )
{
- aIterationName.setNum(num+1) ;
- aIterationName.insert(0, QString("Iter_"));
- for ( int i=0; i< myIters->length(); i++)
+ aName.setNum(num+1) ;
+ aName.insert(0, QString("Iter_"));
+ for ( int i=0; i< MyObjects->length(); i++)
{
- if ( aIterationName == QString((myIters)[i]))
+ if ( aName == QString((MyObjects)[i]))
{
- num=num+1;
- aIterationName="";
- break;
+ num ++ ;
+ aName = "" ;
+ break ;
}
}
}
- LEIterationName->setText(aIterationName);
+ LEName->setText(aName);
}
-
-
// ------------------------------------------------------------------------
void MonCreateIteration::PushHypoEdit()
// ------------------------------------------------------------------------
if (CBHypothese->currentText() == QString("")) return;
if (_IterParentName == QString(""))
{
- QMessageBox::information( 0, "Error",
- QString("The previous iteration must be given."),
- QMessageBox::Ok + QMessageBox::Default );
- raise();
- return;
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_STARTING_POINT") );
+ raise();
+ return;
}
QString aFieldFile=LEFieldFile->text().trimmed();
- MonEditHypothesis *HypoDlg = new MonEditHypothesis(this,TRUE, HOMARD::HOMARD_Gen::_duplicate(_myHomardGen),CBHypothese->currentText(), _CaseName, aFieldFile) ;
+ MonEditHypothesis *HypoDlg = new MonEditHypothesis(this, true, HOMARD::HOMARD_Gen::_duplicate(myHomardGen),CBHypothese->currentText(), _CaseName, aFieldFile) ;
HypoDlg->show();
}
void MonCreateIteration::addHypothese(QString newHypothese)
// ------------------------------------------------------------------------
{
- CBHypothese->insertItem(0,newHypothese);
- CBHypothese->setCurrentIndex(0);
+ CBHypothese->insertItem(0,newHypothese);
+ CBHypothese->setCurrentIndex(0);
}
// ------------------------------------------------------------------------
void MonCreateIteration::PushHypoNew()
// ------------------------------------------------------------------------
{
- if (_IterParentName == QString(""))
- {
- QMessageBox::information( 0, "Error",
- QString("The previous iteration must be given."),
- QMessageBox::Ok + QMessageBox::Default );
- raise();
- return;
- }
- if ( _CaseName == QString(""))
- {
- _CaseName = _myHomardGen->GetCaseName(CORBA::string_dup(_IterParentName.toStdString().c_str()));
- }
- QString aFieldFile=LEFieldFile->text().trimmed();
- MonCreateHypothesis *HypoDlg = new MonCreateHypothesis(this,TRUE,HOMARD::HOMARD_Gen::_duplicate(_myHomardGen),QString(""),_CaseName, aFieldFile) ;
- HypoDlg->show();
+ if (_IterParentName == QString(""))
+ {
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_ITER_STARTING_POINT") );
+ raise();
+ return;
+ }
+ if ( _CaseName == QString(""))
+ {
+ HOMARD::HOMARD_Iteration_var aIterParent = myHomardGen->GetIteration(_IterParentName.toStdString().c_str()) ;
+ _CaseName = aIterParent->GetCaseName();
+ }
+ QString aFieldFile=LEFieldFile->text().trimmed();
+ MonCreateHypothesis *HypoDlg = new MonCreateHypothesis(this, true, HOMARD::HOMARD_Gen::_duplicate(myHomardGen), QString(""), _CaseName, aFieldFile) ;
+ HypoDlg->show();
}
-
// ------------------------------------------------------------------------
void MonCreateIteration::SetFieldFile()
// ------------------------------------------------------------------------
-
{
QString fileName0 = LEFieldFile->text().trimmed();
- QString fileName = HOMARD_QT_COMMUN::PushNomFichier(false);
+ QString fileName = HOMARD_QT_COMMUN::PushNomFichier( false, QString("med") ) ;
if (fileName.isEmpty()) fileName = fileName0 ;
LEFieldFile->setText(fileName);
raise();
// ------------------------------------------------------------------------
void MonCreateIteration::SetTSNo()
// ------------------------------------------------------------------------
-// Par defaut, on declare que le pas de temps vaut -1
+// Si on ne tient pas compte du pas de temps, on declare que le pas de temps
+// vaut -1, valeur par defaut de med
{
Rank->setVisible(0);
SpinBox_Rank->setVisible(0);
+ SpinBox_Rank->setValue(-1);
+
TimeStep->setVisible(0);
SpinBox_TimeStep->setVisible(0);
SpinBox_TimeStep->setValue(-1);
+//
adjustSize();
}
// ------------------------------------------------------------------------
void MonCreateIteration::SetTSLast()
// ------------------------------------------------------------------------
-// Par defaut, on declare que le pas de temps vaut -2
+// Si on choisit le dernier instant, on declare que le pas de temps vaut -2
{
Rank->setVisible(0);
SpinBox_Rank->setVisible(0);
+ SpinBox_Rank->setValue(-2);
+
TimeStep->setVisible(0);
SpinBox_TimeStep->setVisible(0);
SpinBox_TimeStep->setValue(-2);
+//
adjustSize();
}
// ------------------------------------------------------------------------
void MonCreateIteration::SetTSChosen()
// ------------------------------------------------------------------------
+// Si choisit un instant, on prepositionne a 0
{
Rank->setVisible(1);
SpinBox_Rank->setVisible(1);
+ SpinBox_Rank->setValue(0);
+
TimeStep->setVisible(1);
SpinBox_TimeStep->setVisible(1);
- SpinBox_TimeStep->setValue(1);
+ SpinBox_TimeStep->setValue(0);
+//
adjustSize();
}