/*! * \brief Constructeur de la fenêtre de modification d'une UV. * \param uvToEdit référence vers l'UV à modifier * \param uvm référence vers l'UVManager * \param parent fenêtre parente */ UVEditeur::UVEditeur(UV& uvToEdit, UVManager& uvm, QWidget* parent) : QWidget(parent), uv(uvToEdit), M(uvm) { this->setWindowTitle(QString("Edition de l'UV")+uv.getCode()); codeLabel=new QLabel("code", this); titreLabel=new QLabel("titre", this); creditsLabel=new QLabel("credits", this); categorieLabel=new QLabel("categorie", this); ouvertureLabel=new QLabel("ouverture", this); code= new QLineEdit(uv.getCode(), this); titre=new QTextEdit(uv.getTitre(), this); credits=new QSpinBox(this); credits->setRange(1,8); credits->setValue(uv.getNbCredits()); categorie=new QComboBox(this); categorie->addItem("CS"); categorie->addItem("TM"); categorie->addItem("TSH"); categorie->addItem("SP"); categorie->setCurrentIndex(int(uv.getCategorie())); automne=new QCheckBox("automne", this); automne->setChecked(uv.ouvertureAutomne()); printemps=new QCheckBox("printemps", this); printemps->setChecked(uv.ouvertureAutomne()); sauver=new QPushButton("Sauver", this); annuler=new QPushButton("Annuler", this); coucheH1=new QHBoxLayout; coucheH1->addWidget(codeLabel); coucheH1->addWidget(code); coucheH1->addWidget(categorieLabel); coucheH1->addWidget(categorie); coucheH1->addWidget(creditsLabel); coucheH1->addWidget(credits); coucheH2=new QHBoxLayout; coucheH2->addWidget(titreLabel); coucheH2->addWidget(titre); coucheH3=new QHBoxLayout; coucheH3->addWidget(ouvertureLabel); coucheH3->addWidget(automne); coucheH3->addWidget(printemps); coucheH4=new QHBoxLayout; coucheH4->addWidget(annuler); coucheH4->addWidget(sauver); couche=new QVBoxLayout; couche->addLayout(coucheH1); couche->addLayout(coucheH2); couche->addLayout(coucheH3); couche->addLayout(coucheH4); setLayout(couche); QObject::connect(sauver, SIGNAL(clicked()), this, SLOT(sauverUV())); }
/** * @brief Constructeur de la classe UVEditeur qui ouvre une fenêtre avec les différentes caractéristiques de l'UV à éditer. * @param uvToEdit L'UV à modifier. * @param parent Un pointeur sur la fenêtre principale. */ UVEditeur::UVEditeur(UV& uvToEdit, QMainWindow* parent):uv(uvToEdit){ codeLabel= new QLabel("Code",this); titreLabel= new QLabel("Titre", this); creditsLabel= new QLabel("Crédits",this); creditsCSLabel= new QLabel("CS",this); creditsTMLabel= new QLabel("TM",this); creditsTSHLabel= new QLabel("TSH",this); creditsSPLabel= new QLabel("SP",this); ouvertureLabel= new QLabel("Ouverture",this); //brancheLabel= new QLabel("Branche",this); creditsCS= new QSpinBox(this); creditsCS->setRange(0,8); creditsTM= new QSpinBox(this); creditsTM->setRange(0,8); creditsTSH= new QSpinBox(this); creditsTSH->setRange(0,8); creditsSP= new QSpinBox(this); creditsSP->setRange(0,8); automne = new QCheckBox("Automne",this); printemps = new QCheckBox("Printemps",this); save = new QPushButton("Sauvegarder",this); save->setEnabled(false); //desactive le bouton code = new QLineEdit(uv.getCode(),this); titre = new QTextEdit(uv.getTitre(),this); //branche = new QLineEdit(uv.getBranche(),this); parent->setWindowTitle(QString("Edition de l'UV ")+uv.getCode()); creditsCS->setValue(uv.getNbCreditsCS()); creditsTM->setValue(uv.getNbCreditsTM()); creditsTSH->setValue(uv.getNbCreditsTSH()); creditsSP->setValue(uv.getNbCreditsTSH()); automne->setChecked(uv.ouvertureAutomne()); printemps->setChecked(uv.ouverturePrintemps()); QObject::connect(save, SIGNAL(clicked()), this, SLOT(sauverUV())); QObject::connect(code, SIGNAL(textChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(titre, SIGNAL(textChanged(/*QString*/)),this,SLOT(activSave(/*QString*/))); //QObject::connect(branche, SIGNAL(textChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(creditsSP, SIGNAL(valueChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(creditsTSH, SIGNAL(valueChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(creditsTM, SIGNAL(valueChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(creditsCS, SIGNAL(valueChanged(QString)),this,SLOT(activSave(/*QString*/))); QObject::connect(automne, SIGNAL(stateChanged(/*QString*/int)),this,SLOT(activSave(/*QString*/))); QObject::connect(printemps, SIGNAL(stateChanged(/*QString*/int)),this,SLOT(activSave(/*QString*/))); cancel=new QPushButton("Annuler",this); QObject::connect(cancel, SIGNAL(clicked()), this, SLOT(cancelChanges())); coucheH1 = new QHBoxLayout; coucheH2 = new QHBoxLayout; coucheH3 = new QHBoxLayout; coucheH4 = new QHBoxLayout; couche = new QVBoxLayout; coucheH1->addWidget(codeLabel); coucheH1->addWidget(code); coucheH1->addWidget(creditsLabel); coucheH1->addWidget(creditsCSLabel); coucheH1->addWidget(creditsCS); coucheH1->addWidget(creditsTMLabel); coucheH1->addWidget(creditsTM); coucheH1->addWidget(creditsTSHLabel); coucheH1->addWidget(creditsTSH); coucheH1->addWidget(creditsSPLabel); coucheH1->addWidget(creditsSP); coucheH2->addWidget(titreLabel); coucheH2->addWidget(titre); coucheH3->addWidget(ouvertureLabel); coucheH3->addWidget(automne); coucheH3->addWidget(printemps); coucheH4->addWidget(cancel); coucheH4->addWidget(save); couche->addLayout(coucheH1); couche->addLayout(coucheH2); couche->addLayout(coucheH3); couche->addLayout(coucheH4); this->setLayout(couche); parent->setCentralWidget(this); }
UVEditeur::UVEditeur(UV& uvToEdit, UVManager& uvm, QWidget* parent) : QWidget(parent), uv(uvToEdit), M(uvm) { this->setWindowTitle(QString("Edition de l'UV")+uv.getCode()); codeLabel=new QLabel("code", this); titreLabel=new QLabel("titre", this); creditsLabel=new QLabel("credits", this); categorieLabel=new QLabel("categorie", this); ouvertureLabel=new QLabel("ouverture", this); code= new QLineEdit(uv.getCode(), this); titre=new QTextEdit(uv.getTitre(), this); credits=new QSpinBox(this); credits->setRange(1,8); credits->setValue(uv.getNbCredits()); categorie=new QComboBox(this); categorie->addItem("CS"); categorie->addItem("TM"); categorie->addItem("SP"); categorie->addItem("TSH"); categorie->setCurrentIndex(int(uv.getCategorie())); automne=new QCheckBox("automne", this); automne->setChecked(uv.ouvertureAutomne()); printemps=new QCheckBox("printemps", this); printemps->setChecked(uv.ouvertureAutomne()); sauver=new QPushButton("Sauver", this); annuler=new QPushButton("Annuler", this); //on cree plusieurs couches horizontales qu'on superpose ensuite en une couche veerticale coucheH1=new QHBoxLayout; coucheH1->addWidget(codeLabel); coucheH1->addWidget(code); coucheH1->addWidget(categorieLabel); coucheH1->addWidget(categorie); coucheH1->addWidget(creditsLabel); coucheH1->addWidget(credits); coucheH2=new QHBoxLayout; coucheH2->addWidget(titreLabel); coucheH2->addWidget(titre); coucheH3=new QHBoxLayout; coucheH3->addWidget(ouvertureLabel); coucheH3->addWidget(automne); coucheH3->addWidget(printemps); coucheH4=new QHBoxLayout; coucheH4->addWidget(annuler); coucheH4->addWidget(sauver); couche=new QVBoxLayout; couche->addLayout(coucheH1); couche->addLayout(coucheH2); couche->addLayout(coucheH3); couche->addLayout(coucheH4); setLayout(couche); //bouton desactive par defaut //sauver->setEnabled(false); QObject::connect(sauver, SIGNAL(clicked()), this, SLOT(sauverUV())); //pour que ça sactive que si modif : // QObject::connect(code, SIGNAL(textEdited(QString)), this, SLOT(activerSauverUV(QString))); }