Changeset 405 in PSPA


Ignore:
Timestamp:
Mar 28, 2013, 9:39:26 AM (11 years ago)
Author:
garnier
Message:

Correction de problèmes avec le softwarePanel

Location:
Interface_Web/trunk/pspaWT
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • Interface_Web/trunk/pspaWT/History

    r401 r405  
    55     PSPA - Plateforme de simulation en physique des accélérateurs
    66     =========================================================
     7
     828 Mars : Laurent Garnier
     9- Correction de problèmes avec le softwarePanel
    710
    81127 Mars : Laurent Garnier
     
    1720  lors de l'effacement des composants
    1821- GWt_softwarePanel.cc : Mise en place des comboBox et suppression des dialogBox
     22- Ajout d'un fond gris sur l'output
     23-
    1924
    202524 mars 2013 : Guy Le Meur
  • Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_softwarePanel.h

    r401 r405  
    4747    PspaApplication* pspa_;
    4848
    49     std::vector <GWt_sectionToExecute*> sections;
     49    std::vector <GWt_sectionToExecute*> sections_;
    5050};
    5151
  • Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_sectionToExecute.cc

    r401 r405  
    8585    errorsContainer_->setStyleClass("errorsContainer");
    8686
     87    // resize combo
     88    firstElement->setMinimumSize(80,12);
     89    lastElement->setMinimumSize(80,12);
     90    software->setMinimumSize(80,12);
    8791   
    8892    firstElement->activated().connect(softwarePanel,&GWt_softwarePanel::updateSections);
  • Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_softwarePanel.cc

    r401 r405  
    6464  int dernierIndex = 0;
    6565
    66     // if this is the first section
    67   if(dtmanage_->getJobListSize() == 0) {
     66    // if there is no section
     67  if(sections_.size() == 0) {
    6868      premierElement = pspa_->getBeamLine()->getAbstractElement(0);
    69       dernierElement = pspa_->getBeamLine()->getAbstractElement(pspa_->getBeamLine()->getBeamLineSize()-1);
    7069      premierIndex = 0;
    71       dernierIndex = pspa_->getBeamLine()->getBeamLineSize()-1;
    7270
    7371  // if this is not the first :
     
    7876     
    7977  } else {
    80     int indexOfLastElementOfLastSection = dtmanage_->getJobListAt(dtmanage_->getJobListSize()-1)->getLastElementNumberInSection();
     78    dernierElement = pspa_->getBeamLine()->getAbstractElement(pspa_->getBeamLine()->getBeamLineSize()-1);
     79    dernierIndex = pspa_->getBeamLine()->getBeamLineSize()-1;
     80
     81    premierElement = dernierElement;
     82    premierIndex = dernierIndex;
     83   
     84/*    int indexOfLastElementOfLastSection = dtmanage_->getJobListAt(dtmanage_->getJobListSize()-1)->getLastElementNumberInSection();
     85
     86   
     87    // if there are still elements at the end
    8188    if (pspa_->getBeamLine()->getAbstractElement(indexOfLastElementOfLastSection+1) != NULL ) {
    8289      premierIndex = indexOfLastElementOfLastSection+1;
    8390      premierElement = pspa_->getBeamLine()->getAbstractElement(indexOfLastElementOfLastSection+1);
     91
     92      // if this is the last element
    8493    } else {
    8594      premierIndex = indexOfLastElementOfLastSection;
     
    8796       
    8897    }
    89     dernierIndex = dtmanage_->getJobListSize()-1;
    90     dernierElement = pspa_->getBeamLine()->getAbstractElement(pspa_->getBeamLine()->getBeamLineSize()-1);
    91   }
    92  
     98 */
     99  }
     100 
     101  dernierElement = pspa_->getBeamLine()->getAbstractElement(pspa_->getBeamLine()->getBeamLineSize()-1);
     102  dernierIndex = pspa_->getBeamLine()->getBeamLineSize()-1;
    93103  //  cout << "PspaApplication::addSectionToExecute() : " << premierText << " à  " << dernierText << endl;
    94104 
     
    112122  fillComboWithElements(lineToCombo);
    113123
     124  // set selection
     125  lineFromCombo->setCurrentIndex(premierIndex);
     126  lineToCombo->setCurrentIndex(dernierIndex);
     127
    114128  WComboBox* softCombo = new WComboBox();
    115129  fillComboWithSoftwares(softCombo);
     
    118132
    119133  // push back on sections vector
    120   sections.push_back(newSection);
     134  sections_.push_back(newSection);
    121135
    122136  Wt::WContainerWidget* container = new Wt::WContainerWidget();
     
    236250  // on impose le depart du calcul au premier element
    237251  string premier = dtmanage_->getLabelFromElementNumero(1);
    238   if (sections.size() > 0) {
    239     sections[0]->setFirstElementCurrentSelection(premier);
    240   }
    241  
    242   Wt::WString currentString =  sections[0]->getLastElementCurrentText();
     252  if (sections_.size() > 0) {
     253    sections_[0]->setFirstElementCurrentSelection(premier);
     254  }
     255 
     256  Wt::WString currentString =  sections_[0]->getLastElementCurrentText();
    243257  int current = dtmanage_->getNumeroFromElementLabel(currentString.toUTF8());
    244258 
     
    248262    current = dtmanage_->getBeamLineSize();
    249263    currentString =  dtmanage_->getLabelFromElementNumero(current);
    250     if (sections.size() > 0) {
    251       sections[0]->setLastElementCurrentSelection(currentString);
     264    if (sections_.size() > 0) {
     265      sections_[0]->setLastElementCurrentSelection(currentString);
    252266//...
    253267    }
     
    257271 
    258272  // traitement des suivantes (on avance d'un cran dans la liste)
    259   for (int a = 1; a< sections.size(); a++)
     273  for (int a = 1; a< sections_.size(); a++)
    260274    {
    261275      // debut
     
    267281        }
    268282     
    269       sections[a]->setFirstElementCurrentSelection(currentString);
     283      sections_[a]->setFirstElementCurrentSelection(currentString);
    270284
    271285      // fin
    272       string finString =  sections[a]->getLastElementCurrentText().toUTF8();
     286      string finString =  sections_[a]->getLastElementCurrentText().toUTF8();
    273287     
    274288      int numeroFin = dtmanage_->getNumeroFromElementLabel( finString);
     
    312326  string diagnosticWarnings;
    313327 
    314   for (int a = 0; a< sections.size(); a++)
     328  for (int a = 0; a< sections_.size(); a++)
    315329  {
    316     string debString = sections[a]->getFirstElementCurrentText().toUTF8();
    317     string finString = sections[a]->getLastElementCurrentText().toUTF8();
     330    string debString = sections_[a]->getFirstElementCurrentText().toUTF8();
     331    string finString = sections_[a]->getLastElementCurrentText().toUTF8();
    318332   
    319333    int debut = pspa_->getBeamLine()->getAbstractElementIndexFromLabel(debString)+1; // FIXME : Should NOT be +1
    320334    int fin = pspa_->getBeamLine()->getAbstractElementIndexFromLabel(finString)+1; // FIXME : Should NOT be +1
    321335   
    322     nomDeLogiciel prog = nomDeLogiciel ( sections[a]->getSoftwareCurrentText().toUTF8());
     336    nomDeLogiciel prog = nomDeLogiciel ( sections_[a]->getSoftwareCurrentText().toUTF8());
    323337    dtmanage_->addSectionToExecute(pspa_->getBeamLine()->getAbstractElement(debut),
    324338                                   debut,
     
    353367    }
    354368    // set errors and warnings
    355     sections[a]->setErrors(diagnosticErrors);
    356     sections[a]->setWarnings(diagnosticWarnings);
     369    sections_[a]->setErrors(diagnosticErrors);
     370    sections_[a]->setWarnings(diagnosticWarnings);
    357371  }
    358372   
     
    367381
    368382  // delete from User Interface
    369   sections.pop_back();
     383  sections_.pop_back();
    370384}
    371385
     
    374388{
    375389  // update all sections in order to manage new/deleted items
    376   for (int a = 0; a< sections.size(); a++) {
    377     fillComboWithElements(sections[a]->getFirstElement());
    378     fillComboWithElements(sections[a]->getLastElement());
    379   }
    380   if (sections.size() == 0) {
     390  for (int a = 0; a< sections_.size(); a++) {
     391    fillComboWithElements(sections_[a]->getFirstElement());
     392    fillComboWithElements(sections_[a]->getLastElement());
     393
     394    sections_[a]->getFirstElement()->setEnabled (true);
     395    sections_[a]->getLastElement()->setEnabled (true);
     396  }
     397  if (sections_.size() == 0) {
    381398    return;
    382399  }
    383400  // the first element will always be the first element of the beamLine
    384   sections[0]->getFirstElement()->setCurrentIndex(0);
    385  
     401  sections_[0]->getFirstElement()->setCurrentIndex(0);
     402  sections_[0]->getFirstElement()->setEnabled (false);
     403
    386404  // the last element will always be the last element of the beamLine
    387   sections[sections.size()-1]->getLastElement()->setCurrentIndex(sections[sections.size()-1]->getLastElement()->count());
     405  sections_[sections_.size()-1]->getLastElement()->setCurrentIndex(sections_[sections_.size()-1]->getLastElement()->count());
     406  sections_[sections_.size()-1]->getLastElement()->setEnabled (false);
    388407
    389408  // set default values
     
    457476    }
    458477  }
     478  cBox->refresh();
    459479}
    460480
     
    469489    cBox->addItem(nomDeLogiciel(k).getString());
    470490  }
    471  
     491  cBox->refresh();
    472492}
    473493
     
    492512  exec_delete->setStyleClass("roundButton");
    493513  exec_delete->setMaximumSize(20,20);
    494   exec_add->setToolTip("Remove this section");
     514  exec_delete->setToolTip("Remove this section");
    495515
    496516  buttonContainerLayout->addWidget(exec_add);
Note: See TracChangeset for help on using the changeset viewer.