// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-using namespace std;
-
#include "MonPursueIteration.h"
#include <QFileDialog>
#include "HomardQtCommun.h"
#include <utilities.h>
+#ifdef WIN32
+#include <direct.h>
+#endif
+
+using namespace std;
// -----------------------------------------------------------------------------------------
/* Constructs a MonPursueIteration
- * Inherits from CasHomard
* Sets attributes to default values
*/
// -----------------------------------------------------------------------------------------
-MonPursueIteration::MonPursueIteration (QWidget* parent, bool modal, HOMARD::HOMARD_Gen_var myHomardGen)
+MonPursueIteration::MonPursueIteration ( bool modal, HOMARD::HOMARD_Gen_var myHomardGen0 )
:
Ui_PursueIteration(),
_aCaseName(""), _aDirName(""), _aDirNameStart("")
{
MESSAGE("Debut du constructeur de MonPursueIteration");
- _myHomardGen=HOMARD::HOMARD_Gen::_duplicate(myHomardGen);
+ myHomardGen=HOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
setupUi(this);
setModal(modal);
SetNewCaseName() ;
_Type = 1 ;
GBIterationintoCase->setVisible(0);
- spinBoxNumber->setVisible(0);
+ SpinBoxNumber->setVisible(0);
adjustSize();
MESSAGE("Fin du constructeur de MonPursueIteration");
void MonPursueIteration::InitConnect()
// ------------------------------------------------------------------------
{
- connect( LECaseName, SIGNAL(textChanged(QString)), this, SLOT(CaseNameChanged()));
connect( PushDir, SIGNAL(pressed()), this, SLOT(SetDirName()));
connect( RBIteration, SIGNAL(clicked()), this, SLOT(FromIteration()));
// --------------------------------
{
MESSAGE("PushOnApply");
-
+// 1. Enregistrement du repertoire du cas
QString aDirName=LEDirName->text().trimmed();
if (aDirName == QString(""))
{
QObject::tr("HOM_CASE_DIRECTORY_1") );
return false;
}
- if ((aDirName != _aDirName) and (_myHomardGen->VerifieDir( aDirName.toStdString().c_str()) == false))
+ if ( aDirName != _aDirName)
+ { QString CaseNameDir = myHomardGen->VerifieDir( aDirName.toStdString().c_str()) ;
+ if ( CaseNameDir != "" )
+ {
+ QString texte ;
+ texte = QObject::tr("HOM_CASE_DIRECTORY_2") + CaseNameDir ;
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ texte );
+ return false;
+ }
+ }
+#ifndef WIN32
+ if (chdir(aDirName.toStdString().c_str()) != 0)
+#else
+ if (_chdir(aDirName.toStdString().c_str()) != 0)
+#endif
{
QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
- QObject::tr("HOM_CASE_DIRECTORY_2") );
+ QObject::tr("HOM_CASE_DIRECTORY_3") );
return false;
}
- if (chdir(aDirName.toStdString().c_str()) != 0)
+// 2. Enregistrement du repertoire de depart
+ QString aDirNameStart=LEDirNameStart->text().trimmed();
+ if (aDirNameStart == QString(""))
{
QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
- QObject::tr("HOM_CASE_DIRECTORY_3") );
+ QObject::tr("HOM_START_DIRECTORY_1") );
+ return false;
+ }
+#ifndef WIN32
+ if (chdir(aDirNameStart.toStdString().c_str()) != 0)
+#else
+ if (_chdir(aDirNameStart.toStdString().c_str()) != 0)
+#endif
+ {
+ QMessageBox::critical( 0, QObject::tr("HOM_ERROR"),
+ QObject::tr("HOM_START_DIRECTORY_3") );
return false;
}
-// Enregistrement du numero d'iteration
+// 3. Enregistrement du numero d'iteration
int Number ;
- if ( _Type == 3 ) { Number = spinBoxNumber->value() ; }
+ if ( _Type == 3 ) { Number = SpinBoxNumber->value() ; }
-// Creation du cas
+// 4. Creation du cas
QString _aCaseName=LECaseName->text().trimmed();
+ _aDirNameStart=aDirNameStart;
+ MESSAGE("_aCaseName = "<<_aCaseName.toStdString().c_str());
+ MESSAGE("_aDirNameStart = "<<_aDirNameStart.toStdString().c_str());
MESSAGE("_Type = "<<_Type);
switch (_Type)
{
try
{
MESSAGE("Poursuite a partir d'une iteration");
- aCase = _myHomardGen->CreateCaseFromIteration( \
+ aCase = myHomardGen->CreateCaseFromIteration( \
CORBA::string_dup(_aCaseName.toStdString().c_str()), \
CORBA::string_dup(_aDirNameStart.toStdString().c_str()) );
}
try
{
MESSAGE("Poursuite a partir de la derniere iteration dans un cas");
- aCase = _myHomardGen->CreateCaseFromCaseLastIteration( \
+ aCase = myHomardGen->CreateCaseFromCaseLastIteration( \
CORBA::string_dup(_aCaseName.toStdString().c_str()), \
CORBA::string_dup(_aDirNameStart.toStdString().c_str()) );
}
try
{
MESSAGE("Poursuite a partir d'une iteration dans un cas");
- aCase = _myHomardGen->CreateCaseFromCaseIteration( \
+ aCase = myHomardGen->CreateCaseFromCaseIteration( \
CORBA::string_dup(_aCaseName.toStdString().c_str()), \
CORBA::string_dup(_aDirNameStart.toStdString().c_str()), \
Number );
}
}
+ aCase->SetDirName(aDirName.toStdString().c_str());
+ _aDirName=aDirName;
+
HOMARD_UTILS::updateObjBrowser();
return true;
void MonPursueIteration::PushOnHelp()
//-------------------------------
{
- HOMARD_UTILS::PushOnHelp(QString("gui_create_case.html"));
+ char* LanguageShort = myHomardGen->GetLanguageShort();
+ HOMARD_UTILS::PushOnHelp(QString("gui_create_case.html"), QString(""), QString(LanguageShort));
}
// ---------------------------------
void MonPursueIteration::SetNewCaseName()
// ------------------------------
{
- HOMARD::listeCases_var MyCases = _myHomardGen->GetAllCasesName();
+ HOMARD::listeCases_var MyCases = myHomardGen->GetAllCasesName();
int num = 0; QString aCaseName="";
while (aCaseName=="" )
{
{
if ( aCaseName == QString((MyCases)[i]))
{
- num += 1;
- aCaseName = "";
- break;
+ num ++ ;
+ aCaseName = "" ;
+ break ;
}
}
}
// ------------------------------------------------------------------------
{
GBIterationintoCase->setVisible(0);
- spinBoxNumber->setVisible(0);
+ SpinBoxNumber->setVisible(0);
_Type = 1 ;
adjustSize();
}
void MonPursueIteration::CaseLastIteration()
// ------------------------------------------------------------------------
{
- spinBoxNumber->setVisible(0);
+ SpinBoxNumber->setVisible(0);
_Type = 2 ;
adjustSize();
}
void MonPursueIteration::CaseNIteration()
// ------------------------------------------------------------------------
{
- spinBoxNumber->setVisible(1);
+ SpinBoxNumber->setVisible(1);
_Type = 3 ;
adjustSize();
}