Index: /Interface_Web/trunk/pspaWT/History
===================================================================
--- /Interface_Web/trunk/pspaWT/History	(revision 478)
+++ /Interface_Web/trunk/pspaWT/History	(revision 479)
@@ -5,4 +5,15 @@
      PSPA - Plateforme de simulation en physique des accÃ©lÃ©rateurs
      =========================================================
+
+07 Janvier 2014 : Laurent Garnier
+- abstractSoftware : Suppression des numeroDeb_deprecated_
+- softwareParmela : Passage en deprecated de 
+  o relativeParmelaElementIndices
+  o setRelativeParmelaElementIndices()
+- dataManager : Correction d'un bug qui rangait les éléments lus dans un fichier dans le sens
+  du dernier vers le premier et non l'inverse
+- softwareParmela::buildBeamAfterElements() : Correction de cette méthode afin de prendre un vecteur d'élément et non des numeroDeb/Fin
+- GWt_console::addConsoleMessage() : Correction dans l'affichage de la console
+- GWt_pspaApplication : ajout d'une méthode createAccelerator() afin de corriger le pb de la console(pointeur nul car celle était détruite à chaque "restaurer")
 
 06 Janvier 2014 : Laurent Garnier
Index: /Interface_Web/trunk/pspaWT/sources/controler/include/abstractSoftware.h
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/controler/include/abstractSoftware.h	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/controler/include/abstractSoftware.h	(revision 479)
@@ -22,5 +22,4 @@
  protected :
   
-  unsigned numeroDeb_deprecated_, numeroFin_deprecated_;
   dataManager* dataManager_;
   string inputFileName_;
Index: /Interface_Web/trunk/pspaWT/sources/controler/include/softwareParmela.h
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/controler/include/softwareParmela.h	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/controler/include/softwareParmela.h	(revision 479)
@@ -15,5 +15,5 @@
   //  unsigned offsetNumElem_;
 
-    vector<int> relativeParmelaElementIndices_;
+    vector<int> relativeParmelaElementIndices__deprecated;
 
 
@@ -21,5 +21,5 @@
 
   bool beamToParmela(string workingDir, particleBeam* partic );
-  void setRelativeParmelaElementIndices();
+  void setRelativeParmelaElementIndices_deprecated();
 
 
Index: /Interface_Web/trunk/pspaWT/sources/controler/src/abstractSoftware.cc
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/controler/src/abstractSoftware.cc	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/controler/src/abstractSoftware.cc	(revision 479)
@@ -14,6 +14,4 @@
   inputFileName_ = inputFileName;
   sectionToExecute_ = sect;
-  numeroDeb_deprecated_ = 0;
-  numeroFin_deprecated_ = 0;
   dataManager_ = data;
   nameOfSoftware_ = nomDeLogiciel("unknownSoftware");
Index: /Interface_Web/trunk/pspaWT/sources/controler/src/dataManager.cc
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/controler/src/dataManager.cc	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/controler/src/dataManager.cc	(revision 479)
@@ -126,6 +126,6 @@
       break;
     }
-    
-    success = softw->createInputFile(sector->getParticleBeam(),workingDir);
+      // END OF FIXME
+      success = softw->createInputFile(sector->getParticleBeam(),workingDir);
     if ( success ) {
       success = softw->execute(workingDir);
@@ -269,4 +269,5 @@
   nomdElements::typedElement elementType;
   string elementLabel;
+  abstractElement* nouveau = NULL;
   while (infile >> elementLabel) {
     if (elementLabel == string("globals") ) {
@@ -280,5 +281,5 @@
     } else {
       elementType = nomdElements::getTypeFromLabel(elementLabel);
-      abstractElement* nouveau = mySect->addElementAfter(elementType,NULL);
+      nouveau = mySect->addElementAfter(elementType,nouveau);
       if ( nouveau == NULL ) {
 	cerr << " dataManager::restoreElements() : restore element " << elementLabel << " failed " << endl;
Index: /Interface_Web/trunk/pspaWT/sources/controler/src/softwareParmela.cc
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/controler/src/softwareParmela.cc	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/controler/src/softwareParmela.cc	(revision 479)
@@ -24,8 +24,9 @@
 }
 
-void softwareParmela::setRelativeParmelaElementIndices() {
-  relativeParmelaElementIndices_.clear();
-  relativeParmelaElementIndices_.resize(numeroFin_deprecated_ - numeroDeb_deprecated_ + 1, -1);
-  cout << " setRelativeParmelaElementIndices() taille a priori : " << relativeParmelaElementIndices_.size() << endl;
+void softwareParmela::setRelativeParmelaElementIndices_deprecated() {
+  return;
+  //  relativeParmelaElementIndices_.clear();
+//  relativeParmelaElementIndices_.resize(numeroFin_deprecated_ - numeroDeb_deprecated_ + 1, -1);
+//  cout << " setRelativeParmelaElementIndices() taille a priori : " << relativeParmelaElementIndices_.size() << endl;
   abstractElement* elPtr = getSectionToExecute()->getElements().front();
 
@@ -34,22 +35,22 @@
   // les elements de parmela sont indexes de 1 Ã  max, s'il n'y a pas de rfgun
   if ( !there_is_rfgun ) {
-    offsetNumElem = numeroDeb_deprecated_ -1;
+//    offsetNumElem = numeroDeb_deprecated_ -1;
     // les elements de parmela sont indexes de 0 Ã  max, s'il y a un rfgun
   } else {
-    offsetNumElem = numeroDeb_deprecated_;
+//    offsetNumElem = numeroDeb_deprecated_;
   }
 
   // index du premier element de parmela
-  int id= numeroDeb_deprecated_ - offsetNumElem;
+//  int id= numeroDeb_deprecated_ - offsetNumElem;
   unsigned k;
   unsigned curseur = 0;
   for ( k=0; k < getSectionToExecute()->getElements().size() ; k++ ) {
     abstractElement* elem = getSectionToExecute()->getElements()[k];
-    cout << " liste PARMELA no absolu " << k << " relatif provisoire " << relativeParmelaElementIndices_.at(curseur) << endl;
+//    cout << " liste PARMELA no absolu " << k << " relatif provisoire " << relativeParmelaElementIndices_.at(curseur) << endl;
     // if ( elem->is_accepted_by_software(nameOfSoftware_) == TBoolOk ) {
     if ( doAcceptElement(elem->getNomdElement().getElementType() )  == TBoolOk ) {
-      relativeParmelaElementIndices_.at(curseur) = id;
-      cout << " mis a " << id << endl;
-      id++;
+//      relativeParmelaElementIndices_.at(curseur) = id;
+//      cout << " mis a " << id << endl;
+//      id++;
     }
     curseur++;
@@ -62,5 +63,5 @@
   unsigned int k;
 
-  setRelativeParmelaElementIndices();
+//  setRelativeParmelaElementIndices();
   string name = workingDir + inputFileName_;
   ofstream outfile;
@@ -100,5 +101,5 @@
   
  // retrouver le sector !!
-  for ( k =1; k <= getSectionToExecute()->getElements().size(); k++)
+  for ( k =1; k < getSectionToExecute()->getElements().size(); k++)
     {
       outfile << elementsData(getSectionToExecute()->getElements()[k]->parametersToSoftware());
@@ -160,7 +161,8 @@
       }
 
-      curseur = k - numeroDeb_deprecated_;
-
-      if ( relativeParmelaElementIndices_.at(curseur) < 0 ) {
+    curseur = k;// - numeroDeb_deprecated_;
+
+    if (!(doAcceptElement(getSectionToExecute()->getElements()[curseur]->getNomdElement().getElementType()) == TBoolOk)) {
+//      if ( relativeParmelaElementIndices_.at(curseur) < 0 ) {
 
 	// si l'element doit etre ignore de parmela, on renvoie sur le diag precedent
@@ -186,5 +188,6 @@
 	  double freq= dataManager_->getGlobalParameters()->getFrequency();
 	  unsigned numeroParmel;
-	  numeroParmel = (unsigned)relativeParmelaElementIndices_.at(curseur);
+//	  numeroParmel = (unsigned)relativeParmelaElementIndices_.at(curseur);
+    numeroParmel = curseur;
 	  cout << " lecture PARMELA el no absolu " << k << " numero relatif " << numeroParmel << " nom " << elem->getNomdElement().getExpandedName() << endl;
       	// lecture sortie parmela
Index: /Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_pspaApplication.h
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_pspaApplication.h	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_pspaApplication.h	(revision 479)
@@ -78,5 +78,6 @@
   bool removePathFromConfigName(string& config);
   bool removeExtensionFromConfigName(string& config);
-    
+  void createAccelerator();
+  
  public :
   
Index: /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_console.cc
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_console.cc	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_console.cc	(revision 479)
@@ -129,6 +129,4 @@
   
   // apply filter, will modify outputCurrent
-// FIXME !!!
-  return;
   searchFilter();
   /*
Index: /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_pspaApplication.cc
===================================================================
--- /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_pspaApplication.cc	(revision 478)
+++ /Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_pspaApplication.cc	(revision 479)
@@ -129,4 +129,13 @@
 
   
+  // FIXME : Have to be move in GWt_accelerator
+  createAccelerator();
+
+  // set auto scrollbar if needed
+  mainContainerWidget->setOverflow(WContainerWidget::OverflowAuto);
+}
+
+
+void PspaApplication::createAccelerator() {
   new GWt_accelerator(acceleratorContainerWidget_,dtmanage_);
   new WBreak(acceleratorContainerWidget_);
@@ -166,6 +175,4 @@
 
   
-  // set auto scrollbar if needed
-  mainContainerWidget->setOverflow(WContainerWidget::OverflowAuto);
 }
 
@@ -321,9 +328,9 @@
   // In the futur, we should be able to have lot of accelerator at the same time and each with ONE datamanager
   acceleratorContainerWidget_->clear();
-  new GWt_accelerator(acceleratorContainerWidget_,dtmanage_);
+  createAccelerator();
 
   globalParam_->renew();
   //sectorParam_->renew();
-  console_->addConsoleMessage(string("restauration terminee \n"));
+  console_->addConsoleMessage(WString("restauration terminee \n"));
 }
 
