-// Copyright (C) 2011-2014 CEA/DEN, EDF R&D
+// Copyright (C) 2011-2023 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//
#include "MonCreateCase.h"
+#include "MonCreateBoundaryCAO.h"
+#include "MonEditBoundaryCAO.h"
#include "MonCreateBoundaryAn.h"
#include "MonEditBoundaryAn.h"
#include "MonCreateBoundaryDi.h"
#include "MonEditBoundaryDi.h"
+#include "HOMARD.hxx"
#include <QFileDialog>
#include <QMessageBox>
:
Ui_CreateCase(),
_aCaseName(""),_aDirName(""),
- _ConfType(1),
+ _ConfType(0),
+ _ExtType(0),
_Pyram(0)
{
MESSAGE("Debut du constructeur de MonCreateCase");
InitConnect();
SetNewName() ;
+
+ GBBoundaryC->setVisible(0);
GBBoundaryA->setVisible(0);
GBBoundaryD->setVisible(0);
- GBTypeNoConf->setVisible(0);
+
+ CBBoundaryA->setVisible(0);
+ CBBoundaryD->setVisible(0);
+
GBAdvancedOptions->setVisible(0);
Comment->setVisible(0);
CBPyramid->setChecked(false);
void MonCreateCase::InitConnect()
// ------------------------------------------------------------------------
{
- connect( LEName, SIGNAL(textChanged(QString)), this, SLOT(CaseNameChanged()));
- connect( PushDir, SIGNAL(pressed()), this, SLOT(SetDirName()));
- connect( PushFichier, SIGNAL(pressed()), this, SLOT(SetFileName()));
+ connect( LEName, SIGNAL(textChanged(QString)), this, SLOT(CaseNameChanged()));
+ connect( PushDir, SIGNAL(pressed()), this, SLOT(SetDirName()));
+ connect( PushFichier, SIGNAL(pressed()), this, SLOT(SetFileName()));
connect( RBConforme, SIGNAL(clicked()), this, SLOT(SetConforme()));
connect( RBNonConforme, SIGNAL(clicked()), this, SLOT(SetNonConforme()));
- connect( RB1NpM, SIGNAL(clicked()), this, SLOT(Set1NpM()));
- connect( RB1NpA, SIGNAL(clicked()), this, SLOT(Set1NpA()));
- connect( RBQuelconque, SIGNAL(clicked()), this, SLOT(SetQuelconque()));
- connect( CBBoundaryD, SIGNAL(stateChanged(int)), this, SLOT(SetBoundaryD()));
- connect( PBBoundaryDiNew, SIGNAL(pressed()), this, SLOT(PushBoundaryDiNew()));
- connect( PBBoundaryDiEdit, SIGNAL(pressed()), this, SLOT(PushBoundaryDiEdit()) );
- connect( PBBoundaryDiHelp, SIGNAL(pressed()), this, SLOT(PushBoundaryDiHelp()) );
- connect( CBBoundaryA, SIGNAL(stateChanged(int)), this, SLOT(SetBoundaryA()));
- connect( PBBoundaryAnNew, SIGNAL(pressed()), this, SLOT(PushBoundaryAnNew()));
- connect( PBBoundaryAnEdit, SIGNAL(pressed()), this, SLOT(PushBoundaryAnEdit()) );
- connect( PBBoundaryAnHelp, SIGNAL(pressed()), this, SLOT(PushBoundaryAnHelp()) );
+ connect( RBBoundaryNo, SIGNAL(clicked()), this, SLOT(SetBoundaryNo()));
+ connect( RBBoundaryCAO, SIGNAL(clicked()), this, SLOT(SetBoundaryCAO()));
+ connect( RBBoundaryNonCAO, SIGNAL(clicked()), this, SLOT(SetBoundaryNonCAO()));
+
+ connect( PBBoundaryCAONew, SIGNAL(pressed()), this, SLOT(PushBoundaryCAONew()));
+ connect( PBBoundaryCAOEdit, SIGNAL(pressed()), this, SLOT(PushBoundaryCAOEdit()) );
+ connect( PBBoundaryCAOHelp, SIGNAL(pressed()), this, SLOT(PushBoundaryCAOHelp()) );
+ connect( CBBoundaryD, SIGNAL(stateChanged(int)), this, SLOT(SetBoundaryD()));
+ connect( PBBoundaryDiNew, SIGNAL(pressed()), this, SLOT(PushBoundaryDiNew()));
+ connect( PBBoundaryDiEdit, SIGNAL(pressed()), this, SLOT(PushBoundaryDiEdit()) );
+ connect( PBBoundaryDiHelp, SIGNAL(pressed()), this, SLOT(PushBoundaryDiHelp()) );
+ connect( CBBoundaryA, SIGNAL(stateChanged(int)), this, SLOT(SetBoundaryA()));
+ connect( PBBoundaryAnNew, SIGNAL(pressed()), this, SLOT(PushBoundaryAnNew()));
+ connect( PBBoundaryAnEdit, SIGNAL(pressed()), this, SLOT(PushBoundaryAnEdit()) );
+ connect( PBBoundaryAnHelp, SIGNAL(pressed()), this, SLOT(PushBoundaryAnHelp()) );
connect( CBAdvanced, SIGNAL(stateChanged(int)), this, SLOT(SetAdvanced()));
+ connect( RBStandard, SIGNAL(clicked()), this, SLOT(SetStandard()));
+ connect( RBBox, SIGNAL(clicked()), this, SLOT(SetBox()));
+ connect( RBNC1NpA, SIGNAL(clicked()), this, SLOT(SetNC1NpA()));
+ connect( RBNCQuelconque, SIGNAL(clicked()), this, SLOT(SetNCQuelconque()));
+
+ connect( RBMED, SIGNAL(clicked()), this, SLOT(SetMED()));
+ connect( RBSaturne, SIGNAL(clicked()), this, SLOT(SetSaturne()));
+ connect( RBSaturne2D, SIGNAL(clicked()), this, SLOT(SetSaturne2D()));
connect( buttonOk, SIGNAL(pressed()), this, SLOT(PushOnOK()));
connect( buttonApply, SIGNAL(pressed()), this, SLOT(PushOnApply(0)));
// Pour les frontieres analytiques : la colonne des groupes
HOMARD::ListGroupType_var _listeGroupesCas = aCase->GetGroups();
QTableWidgetItem *__colItem = new QTableWidgetItem();
- __colItem->setText(QApplication::translate("CreateCase", "", 0, QApplication::UnicodeUTF8));
+ __colItem->setText(QApplication::translate("CreateCase", "", 0));
TWBoundary->setHorizontalHeaderItem(0, __colItem);
for ( int i = 0; i < _listeGroupesCas->length(); i++ )
{
TWBoundary->setItem( i, 0, new QTableWidgetItem(QString((_listeGroupesCas)[i]).trimmed()));
TWBoundary->item( i, 0 )->setFlags(Qt::ItemIsEnabled |Qt::ItemIsSelectable );
}
+// Pour les frontieres CAO : la liste a saisir
// Pour les frontieres discretes : la liste a saisir
// Pour les frontieres analytiques : les colonnes de chaque frontiere
HOMARD::HOMARD_Boundary_var myBoundary ;
{
myBoundary = myHomardGen->GetBoundary(mesBoundarys[i]);
int type_obj = myBoundary->GetType() ;
- if ( type_obj==0 ) { CBBoundaryDi->addItem(QString(mesBoundarys[i])); }
- else { AddBoundaryAn(QString(mesBoundarys[i])); }
+ if ( type_obj==-1 ) { CBBoundaryCAO->addItem(QString(mesBoundarys[i])); }
+ else if ( type_obj==0 ) { CBBoundaryDi->addItem(QString(mesBoundarys[i])); }
+ else { AddBoundaryAn(QString(mesBoundarys[i])); }
}
// Ajustement
TWBoundary->resizeColumnsToContents();
return false;
}
}
-#ifndef WIN32
- if (chdir(aDirName.toStdString().c_str()) != 0)
-#else
- if (_chdir(aDirName.toStdString().c_str()) != 0)
-#endif
+ if (CHDIR(aDirName.toStdString().c_str()) != 0)
{
QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
QObject::tr("HOM_CASE_DIRECTORY_3") );
aCase->SetDirName(aDirName.toStdString().c_str());
_aDirName=aDirName;
aCase->SetConfType(_ConfType);
+ aCase->SetExtType(_ExtType);
// Menage des eventuelles frontieres deja enregistrees
aCase->SupprBoundaryGroup() ;
// Enregistrement et publication dans l'arbre d'etudes a la sortie definitive
if ( option > 0 )
{
+ if (RBBoundaryCAO->isChecked())
+ {
+ QString monBoundaryCAOName=CBBoundaryCAO->currentText();
+ if (monBoundaryCAOName != "" )
+ {
+ aCase->AddBoundary(monBoundaryCAOName.toStdString().c_str());
+ }
+ }
if (CBBoundaryD->isChecked())
{
QString monBoundaryDiName=CBBoundaryDi->currentText();
if (monBoundaryDiName != "" )
{
- aCase->AddBoundaryGroup(monBoundaryDiName.toStdString().c_str(), "");
+ aCase->AddBoundary(monBoundaryDiName.toStdString().c_str());
}
}
if (CBBoundaryA->isChecked())
// Autorisation des pyramides
if (CBPyramid->isChecked()) { _Pyram = 1 ; }
}
+ aCase->SetPyram(_Pyram);
HOMARD_UTILS::updateObjBrowser();
void MonCreateCase::SetConforme()
// ------------------------------------------------------------------------
{
- GBTypeNoConf->setVisible(0);
//
- _ConfType=1;
+ _ConfType=0;
+ RBNC1NpA->setVisible(0);
+ RBNCQuelconque->setVisible(0);
//
adjustSize();
}
void MonCreateCase::SetNonConforme()
// ------------------------------------------------------------------------
{
- GBTypeNoConf->setVisible(1);
- RB1NpM->setChecked(true);
//
- _ConfType=2;
+ _ConfType=1;
+ RBNC1NpA->setVisible(1);
+ RBNCQuelconque->setVisible(1);
+//
+ adjustSize();
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetStandard()
+// ------------------------------------------------------------------------
+{
+ if ( ( _ConfType == 0 ) || ( _ConfType == -1 ) ) { _ConfType = 0 ; }
+ else { _ConfType = 1 ; }
+ RBStandard->setChecked(true);
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetBox()
+// ------------------------------------------------------------------------
+{
+ if ( ( _ConfType == 0 ) || ( _ConfType == -1 ) ) { _ConfType = -1 ; }
+ else { _ConfType = -2 ; }
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetNC1NpA()
+// ------------------------------------------------------------------------
+{
+ _ConfType = 2;
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetNCQuelconque()
+// ------------------------------------------------------------------------
+{
+ _ConfType = 3;
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetMED()
+// ------------------------------------------------------------------------
+{
+ _ExtType = 0 ;
+ RBMED->setChecked(true);
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetSaturne()
+// ------------------------------------------------------------------------
+{
+ _ExtType = 1 ;
+ RBSaturne->setChecked(true);
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetSaturne2D()
+// ------------------------------------------------------------------------
+{
+ _ExtType = 2 ;
+ RBSaturne2D->setChecked(true);
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetBoundaryNo()
+// ------------------------------------------------------------------------
+{
+//
+ GBBoundaryC->setVisible(0);
+ GBBoundaryA->setVisible(0);
+ GBBoundaryD->setVisible(0);
+ CBBoundaryD->setVisible(0);
+ CBBoundaryA->setVisible(0);
+//
+ adjustSize();
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetBoundaryCAO()
+// ------------------------------------------------------------------------
+{
+//
+ GBBoundaryC->setVisible(1);
+ GBBoundaryA->setVisible(0);
+ GBBoundaryD->setVisible(0);
+ CBBoundaryD->setVisible(0);
+ CBBoundaryA->setVisible(0);
+//
+ adjustSize();
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::SetBoundaryNonCAO()
+// ------------------------------------------------------------------------
+{
+//
+ GBBoundaryC->setVisible(0);
+ CBBoundaryD->setVisible(1);
+ CBBoundaryA->setVisible(1);
//
adjustSize();
}
// ------------------------------------------------------------------------
-void MonCreateCase::Set1NpM()
+void MonCreateCase::AddBoundaryCAO(QString newBoundary)
// ------------------------------------------------------------------------
{
- _ConfType=2;
+ CBBoundaryCAO->insertItem(0,newBoundary);
+ CBBoundaryCAO->setCurrentIndex(0);
}
// ------------------------------------------------------------------------
-void MonCreateCase::Set1NpA()
+void MonCreateCase::PushBoundaryCAONew()
// ------------------------------------------------------------------------
{
- _ConfType=3;
+ MonCreateBoundaryCAO *BoundaryDlg = new MonCreateBoundaryCAO(this, true,
+ HOMARD::HOMARD_Gen::_duplicate(myHomardGen), _aCaseName, "") ;
+ BoundaryDlg->show();
}
// ------------------------------------------------------------------------
-void MonCreateCase::SetQuelconque()
+void MonCreateCase::PushBoundaryCAOEdit()
// ------------------------------------------------------------------------
{
- _ConfType=4;
+ if (CBBoundaryCAO->currentText() == QString("")) return;
+ MonEditBoundaryCAO *BoundaryDlg = new MonEditBoundaryCAO(this, true,
+ HOMARD::HOMARD_Gen::_duplicate(myHomardGen), _aCaseName, CBBoundaryCAO->currentText() ) ;
+ BoundaryDlg->show();
+}
+// ------------------------------------------------------------------------
+void MonCreateCase::PushBoundaryCAOHelp()
+// ------------------------------------------------------------------------
+{
+ std::string LanguageShort = myHomardGen->GetLanguageShort();
+ HOMARD_UTILS::PushOnHelp(QString("gui_create_boundary.html"), QString("CAO"), QString(LanguageShort.c_str()));
}
// ------------------------------------------------------------------------
void MonCreateCase::SetBoundaryD()
else { GBBoundaryA->setVisible(0); }
//
adjustSize();
-//
-// MESSAGE("Fin de SetBoundaryA ");
}
// ------------------------------------------------------------------------
void MonCreateCase::AddBoundaryAn(QString newBoundary)
nbcol += 1 ;
TWBoundary->setColumnCount ( nbcol ) ;
QTableWidgetItem *__colItem = new QTableWidgetItem();
- __colItem->setText(QApplication::translate("CreateCase", newBoundary.toStdString().c_str(), 0, QApplication::UnicodeUTF8));
+ __colItem->setText(QApplication::translate("CreateCase", newBoundary.toStdString().c_str(), 0));
TWBoundary->setHorizontalHeaderItem(nbcol-1, __colItem);
/* TWBoundary->horizontalHeaderItem(nbcol-1)->setFlags( Qt::ItemIsSelectable|Qt::ItemIsEnabled );*/
// Chaque case est a cocher
// ------------------------------------------------------------------------
{
MESSAGE("Debut de SetAdvanced ");
- if (CBAdvanced->isChecked()) { GBAdvancedOptions->setVisible(1); }
+ if (CBAdvanced->isChecked())
+ { GBAdvancedOptions->setVisible(1);
+ GBConforme->setVisible(1);
+ RBStandard->setVisible(1);
+ RBBox->setVisible(1);
+ if ( ( _ConfType == 0 ) || ( _ConfType == -1 ) )
+ { RBNC1NpA->setVisible(0);
+ RBNCQuelconque->setVisible(0);}
+ else
+ { RBNC1NpA->setVisible(1);
+ RBNCQuelconque->setVisible(1);}
+ GBFormat->setVisible(1);
+ RBMED->setVisible(1);
+ RBSaturne2D->setVisible(1);
+ }
else
{ GBAdvancedOptions->setVisible(0);
CBPyramid->setChecked(false);
_Pyram = 0 ;
+ SetStandard() ;
+ SetMED() ;
}
//
adjustSize();