source: PSPA/Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_elementBend.cc @ 437

Last change on this file since 437 was 437, checked in by garnier, 11 years ago

Renommage de toutes les classes d’élément dans le GWt_ par GWt_elementXXX

File size: 2.8 KB
RevLine 
[372]1 
[437]2#include "GWt_elementBend.h"
[202]3#include "mixedTools.h"
[106]4
[84]5#include <Wt/WText>
6#include <Wt/WLineEdit>
7#include <Wt/WBreak>
8#include <Wt/WDialog>
9#include <Wt/WPushButton>
10
[437]11GWt_elementBend::GWt_elementBend(GWt_elementLigneFaisceau* elemLigne )
[305]12:GWt_abstractElement(new elementBend())
[84]13{
[328]14  elementLigneFaiseauContainer_ = elemLigne;
15  initialize();
[308]16}
17
[437]18void GWt_elementBend::initilializeDialog() 
[328]19{
20  string* param = beginDialog();
[272]21   
[328]22  new WText("angle (deg.) : ",dialog_->contents());
23  angleEdit_ = new WLineEdit( param->c_str(), dialog_->contents());
24  new WBreak(dialog_->contents());
25 
26  new WText("radius (m) : ",dialog_->contents());
27  radiusEdit_ = new WLineEdit( (++param)->c_str(), dialog_->contents());
28  new WBreak(dialog_->contents());
[272]29   
[328]30  new WText("momentum (MeV/c) : ",dialog_->contents());
31  momentumEdit_ = new WLineEdit( (++param)->c_str(), dialog_->contents());
32  new WBreak(dialog_->contents());
[272]33   
[328]34  new WText("length (cm) : ",dialog_->contents());
35  xlengthEdit_ = new WLineEdit("0", dialog_->contents());
36  xlengthEdit_->setDisabled(true);
37  new WBreak(dialog_->contents());
[272]38   
[328]39  new WText("aperture (cm) : ",dialog_->contents());
40  apertureEdit_ = new WLineEdit( (++param)->c_str(), dialog_->contents());
41  apertureEdit_->setDisabled(true);
42  new WBreak(dialog_->contents());
[272]43   
[328]44  new WText("pole face rotations (deg.) entrance : ",dialog_->contents());
45  beta1Edit_ = new WLineEdit( (++param)->c_str(), dialog_->contents());
46  new WText("exit : ",dialog_->contents());
47  beta2Edit_ = new WLineEdit( (++param)->c_str(), dialog_->contents());
48  new WBreak(dialog_->contents());
49 
50  WPushButton *annule= new WPushButton("cancel",dialog_->contents()); 
51  annule->clicked().connect(dialog_, &Wt::WDialog::reject); 
52  WPushButton *submit= new WPushButton("OK",dialog_->contents());
53  submit->clicked().connect(dialog_, &Wt::WDialog::accept);
[437]54  dialog_->finished().connect(this, &GWt_elementBend::dialogDone);
[84]55}
56
[437]57void GWt_elementBend::dialogDone(WDialog::DialogCode code)
[328]58{
59  if (code != Wt::WDialog::Accepted) return;
[308]60
[328]61  unsigned nbParam = abstractElement_->getNbParams();
62  string* envoi = new string[nbParam+1];
63  int compteur = -1;
64 
65  envoi[++compteur] = string(mixedTools::intToString(nbParam) );
66  envoi[++compteur] = labelEdit_->text().toUTF8();
67  envoi[++compteur] = angleEdit_->text().toUTF8();
68  envoi[++compteur] = radiusEdit_->text().toUTF8();
69  envoi[++compteur] = momentumEdit_->text().toUTF8();
70  envoi[++compteur] = apertureEdit_->text().toUTF8();
71  envoi[++compteur] = beta1Edit_->text().toUTF8();
72  envoi[++compteur] = beta2Edit_->text().toUTF8(); 
73  if ( compteur !=  (int)nbParam ) {
[437]74    cerr << " GWt_elementBend::dialogDone() pb nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
[328]75    return;
76  }
77  abstractElement_->setParametersString(envoi);
[372]78  updateLabelAndToolTipWidget();
[328]79  delete [] envoi;
[84]80}
[260]81
Note: See TracBrowser for help on using the repository browser.