source: PSPA/Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_mpole.cc @ 431

Last change on this file since 431 was 431, checked in by touze, 11 years ago

systeme periodique (mailles) + multipoles + madx

File size: 1.8 KB
Line 
1
2#include "GWt_mpole.h"
3#include "mixedTools.h"
4
5#include <Wt/WText>
6#include <Wt/WLineEdit>
7#include <Wt/WBreak>
8#include <Wt/WDialog>
9#include <Wt/WPushButton>
10
11GWt_mpole::GWt_mpole(GWt_elementLigneFaisceau* elm) : GWt_abstractElement(new elementMultipole())
12{
13  elementLigneFaiseauContainer_ = elm;
14  initialize();
15}
16
17void GWt_mpole::initilializeDialog() 
18{
19  string* param = beginDialog();
20  new WText("order : ",dialog_->contents());
21  orderEdit_ = new WLineEdit(param->c_str(),dialog_->contents());
22  new WBreak(dialog_->contents());
23  new WText("component (m^-n) : ",dialog_->contents());
24  componentEdit_ = new WLineEdit((++param)->c_str(),dialog_->contents());
25  new WBreak(dialog_->contents());
26
27  WPushButton *annule= new WPushButton("cancel",dialog_->contents()); 
28  annule->clicked().connect(dialog_, &Wt::WDialog::reject);
29  WPushButton *submit= new WPushButton("OK",dialog_->contents());
30  submit->clicked().connect(dialog_, &Wt::WDialog::accept);
31  dialog_->finished().connect(this, &GWt_mpole::dialogDone);
32}
33
34void GWt_mpole::dialogDone(WDialog::DialogCode code)
35{
36  if (code != Wt::WDialog::Accepted) return;
37
38  unsigned nbParam = abstractElement_->getNbParams();
39  string* envoi = new string[nbParam+1];
40  int compteur = -1;
41
42  envoi[++compteur] = mixedTools::intToString(nbParam);
43  envoi[++compteur] = labelEdit_->text().toUTF8();
44  envoi[++compteur] = orderEdit_->text().toUTF8();
45  envoi[++compteur] = componentEdit_->text().toUTF8();
46  if ( compteur !=  (int)nbParam ) {
47    cerr << " GWt_mpole::dialogDone() : pb dans le nb de parametres, compteur = " << compteur << " nbParam= " << nbParam << endl;
48    return;
49  }
50
51  abstractElement_->setParametersString(envoi);
52  updateLabelAndToolTipWidget();
53  delete [] envoi;
54}
55
56WImage* GWt_mpole::getImage() {
57  return image_;
58}
Note: See TracBrowser for help on using the repository browser.