![]() |
Chrono-Cross
1.1
BTS SN-IR La Salle Avignon 2018
|
La fenêtre principale de l'application. Plus de détails...
#include <ihmmanifestation.h>
Fonctions membres publiques | |
IHMManifestation (QWidget *parent=0) | |
Constructeur de la calsse IHMManifestation. | |
~IHMManifestation () | |
Destructeur de la classe IHMManifestation. | |
Connecteurs privés | |
void | afficherConfigurationManifestation () |
Affiche l'onglet pour configurer une manifestation. | |
void | afficherInscriptionCoureurs () |
Affiche l'onglet pour inscrire les coureurs. | |
void | afficherPublicationResultats () |
Affiche l'onglet pour publier les résultats. | |
void | quitter () |
Ferme l'application principale. | |
void | selectionnerOnglet (int index) |
Initialise les données pour l'onglet affiché | |
void | creerManifestation () |
Crée la manifestation. | |
void | modifierManifestation () |
Modifie la manifestation. | |
void | supprimerManifestation () |
Supprime la manifestation. | |
void | selectionnerManifestation () |
Selectionne la manifestation. | |
void | creerCourse () |
Crée la course. | |
void | modifierCourse () |
Modifie la course. | |
void | supprimerCourse () |
Supprime la course. | |
void | selectionnerCourse () |
Sélectionne la course. | |
void | choisirInscriptionCourse () |
Amène directement à l'onglet Inscription. | |
void | creerCoureur () |
Créer un coureur. | |
void | modifierCoureur () |
Modifie un coureur. | |
void | supprimerCoureur () |
Supprime un coureur. | |
void | selectionnerCoureur () |
Sélectionne le coureur. | |
void | chargerListeCoureurs () |
Charge la liste des coureurs. | |
void | selectionnerListeCoureursCourse () |
Selectionne la liste des coureurs et des courses. | |
void | afficherListeCoureurs () |
Affiche la liste des coureurs. | |
void | selectionnerCoureurListe (const QModelIndex &index) |
Selectionne la liste des coureurs. | |
void | selectionnerDossardListe (const QModelIndex &index) |
Selectionne la liste des dossards. | |
void | demarrerInscriptionCoureur () |
Demarre l'inscription d'un coureur. | |
void | inscrireCoureur () |
Inscrit le coureur. | |
void | chargerListeInscriptionCourses () |
Charge la liste des coureurs inscrit. | |
void | afficherResultats (QString idCourse) |
Affiche les résultats de la course. | |
void | activerImpression () |
Détecte le déclanchement du bouton imprimer. | |
void | ajouterResultat (int ligne, QStringList unResultat) |
Ajoute les résultats d'une course dans un tableau. | |
void | selectionnerManifestationResultats () |
Sélectionne une manifestation dans l'onglet résultats. | |
void | selectionnerCourseResultats () |
Sélectionne une course dans l'onglet résultats. | |
void | imprimerResultats () |
Imprime les résultats. | |
Fonctions membres privées | |
void | chargerListeManifestations () |
Charge les manifestations dans le sélectionneur. | |
void | chargerListeCourses (QString idManifestation) |
Charge les courses dans le sélectionneur. | |
void | chargerListeClasses () |
Charge la liste des classes. | |
QString | getIdClasse () |
Obtiens l'identifiant de la classe. | |
void | chargerListeCategories () |
Charge la liste des categories. | |
QString | getIdCategorie () |
Obtiens l'identifiant de la categorie. | |
bool | verifierInformationsCoureur () |
Verifie les informations du coureur. | |
QString | getNumeroDossard (QString idCoureur, QString idCourse) |
Obtiens le numero de dossard. | |
QString | getIdCoureur (QString nom) |
Obtiens l'identifiant du coureur. | |
bool | verifierInformationsSuppressionCoureur () |
Verifie les informations de suppression du coureur. | |
void | configurerTableResultats () |
Configure le tableau de résultats dans l'onglet résultats. | |
void | effacerResultats () |
Efface les résultats dans l'onglet résultats. | |
Attributs privés | |
Ui::IHMManifestation * | ui |
relation vers la classe IHM | |
BaseDeDonnees * | bd |
association vers la classe BaseDeDonnees | |
QVector< QStringList > | listeManifestations |
la liste des manifestations créée dans la base de donnees | |
QVector< QStringList > | listeCourses |
la liste des courses pour une manifestation | |
QVector< QStringList > | listeCoureurs |
la liste des coureurs | |
QVector< QStringList > | listeClasses |
la liste des classes pour les coureurs | |
QVector< QStringList > | listeCategories |
la liste des catégories pour les coureurs | |
QStringList | listeNomsCoureurs |
la liste des noms des coureurs pour le QStringListModel | |
QStringList | listeNumerosDossardCoureurs |
la liste des numéros de dossard des coureurs pour le QStringListModel | |
QStringList | listeIdCoureurs |
la liste des idCoureur des coureurs pour l'inscription | |
QStringListModel * | coureurs |
la liste des noms des coureurs pour le QListView | |
QStringListModel * | dossards |
la liste des numéros de dossard des coureurs pour le QListView | |
QVector< QStringList > | listeManifestationsResultats |
la liste des manifestations créée dans la base de donnees dans l'onglet résultats | |
QVector< QStringList > | listeCoursesResultats |
la liste des courses pour une manifestation dans l'onglet résultats | |
QStringList | manifestation |
la manifestation pour l'onglet résultats | |
bool | editionDossard |
état de l'édition d'un dossard. | |
QString | idCoureur |
Identifiant du coureur. |
IHMManifestation::IHMManifestation | ( | QWidget * | parent = 0 | ) | [explicit] |
parent |
Références afficherConfigurationManifestation(), afficherInscriptionCoureurs(), afficherPublicationResultats(), bd, chargerListeManifestations(), choisirInscriptionCourse(), configurerTableResultats(), BaseDeDonnees::connecter(), coureurs, creerCoureur(), demarrerInscriptionCoureur(), dossards, BaseDeDonnees::getInstance(), BaseDeDonnees::getNomBaseDonnees(), imprimerResultats(), inscrireCoureur(), modifierCoureur(), modifierCourse(), modifierManifestation(), quitter(), selectionnerCoureur(), selectionnerCoureurListe(), selectionnerDossardListe(), selectionnerListeCoureursCourse(), selectionnerOnglet(), supprimerCoureur(), supprimerCourse(), supprimerManifestation(), TEMPO_STATUS, et ui.
: QMainWindow(parent), ui(new Ui::IHMManifestation) { ui->setupUi(this); // Connexion à la base de données bd = BaseDeDonnees::getInstance(); bool connexion = bd->connecter(); if(connexion) { ui->statusBar->showMessage(QString::fromUtf8("Connexion réussie à la base de données %1").arg(bd->getNomBaseDonnees()), TEMPO_STATUS); } else { ui->statusBar->showMessage(QString::fromUtf8("Impossible de se connecter à la base de données %1").arg(bd->getNomBaseDonnees())); } // Menu connect(ui->actionConfigurer_une_manifestation, SIGNAL(triggered()), this, SLOT(afficherConfigurationManifestation())); connect(ui->actionInscrire_les_coureurs, SIGNAL(triggered()), this, SLOT(afficherInscriptionCoureurs())); connect(ui->actionPublier_les_r_sultats, SIGNAL(triggered()), this, SLOT(afficherPublicationResultats())); connect(ui->actionQuitter, SIGNAL(triggered()), this, SLOT(quitter())); connect(ui->onglets, SIGNAL(currentChanged(int)), this, SLOT(selectionnerOnglet(int))); // Actions Manifestation : BULIN Julien connect(ui->boutonModificationManifestation, SIGNAL(clicked()), this, SLOT(modifierManifestation())); connect(ui->boutonSuppressionManifestation, SIGNAL(clicked()), this, SLOT(supprimerManifestation())); connect(ui->boutonInscrireCourse, SIGNAL(clicked()), this, SLOT(choisirInscriptionCourse())); connect(ui->boutonModificationCourse, SIGNAL(clicked()), this, SLOT(modifierCourse())); connect(ui->boutonSuppressionCourse, SIGNAL(clicked()), this, SLOT(supprimerCourse())); connect(ui->boutonImprimerResultats, SIGNAL(clicked()), this, SLOT(imprimerResultats())); // Actions Inscription : PELLIZZONI Corentin connect(ui->listeInscriptionCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerListeCoureursCourse())); //connect(ui->lineEditNumeroDossard, SIGNAL(editingFinished()), this, SLOT(inscrireCoureur())); connect(ui->lineEditNumeroDossard, SIGNAL(textEdited(QString)), this, SLOT(demarrerInscriptionCoureur())); connect(ui->lineEditNumeroDossard, SIGNAL(editingFinished()), this, SLOT(inscrireCoureur())); connect(ui->listeCoureurs, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCoureur())); connect(ui->listViewCoureurs, SIGNAL(clicked(const QModelIndex &)), this, SLOT(selectionnerCoureurListe(const QModelIndex &))); connect(ui->listViewCoureurs, SIGNAL(activated(const QModelIndex &)), this, SLOT(selectionnerCoureurListe(const QModelIndex &))); connect(ui->listViewDossards, SIGNAL(clicked(const QModelIndex &)), this, SLOT(selectionnerDossardListe(QModelIndex))); connect(ui->listViewDossards, SIGNAL(activated(const QModelIndex &)), this, SLOT(selectionnerDossardListe(QModelIndex))); connect(ui->boutonModificationCoureur, SIGNAL(clicked()), this, SLOT(modifierCoureur())); connect(ui->boutonSuppressionCoureur, SIGNAL(clicked()), this, SLOT(supprimerCoureur())); connect(ui->boutonCreationCoureur, SIGNAL(clicked()), this, SLOT(creerCoureur())); // Actions Résultats : BULIN Julien configurerTableResultats(); chargerListeManifestations(); coureurs = new QStringListModel(this); dossards = new QStringListModel(this); afficherConfigurationManifestation(); }
Références bd, BaseDeDonnees::detruireInstance(), et ui.
{ bd->detruireInstance(); delete ui; }
IHMManifestation::activerImpression | ( | ) | [private, slot] |
Références ui.
Référencé par afficherResultats().
{ ui->boutonImprimerResultats->setEnabled(true); }
IHMManifestation::afficherConfigurationManifestation | ( | ) | [private, slot] |
Références ONGLET_MANIFESTATION, et ui.
Référencé par IHMManifestation().
{ ui->onglets->setCurrentIndex(ONGLET_MANIFESTATION); }
IHMManifestation::afficherInscriptionCoureurs | ( | ) | [private, slot] |
Références ONGLET_INSCRIPTION, et ui.
Référencé par IHMManifestation().
{ ui->onglets->setCurrentIndex(ONGLET_INSCRIPTION); }
void IHMManifestation::afficherListeCoureurs | ( | ) | [private, slot] |
Références coureurs, dossards, listeNomsCoureurs, listeNumerosDossardCoureurs, et ui.
Référencé par selectionnerListeCoureursCourse(), et selectionnerOnglet().
{ if(ui->onglets->currentIndex() != 1) return; if(!ui->listeInscriptionCourses->currentText().isEmpty()) { coureurs->setStringList(listeNomsCoureurs); ui->listViewCoureurs->setModel(coureurs); dossards->setStringList(listeNumerosDossardCoureurs); ui->listViewDossards->setModel(dossards); } }
IHMManifestation::afficherPublicationResultats | ( | ) | [private, slot] |
Références ONGLET_RESULTATS, et ui.
Référencé par IHMManifestation().
{ ui->onglets->setCurrentIndex(ONGLET_RESULTATS); }
IHMManifestation::afficherResultats | ( | QString | idCourse | ) | [private, slot] |
idCourse | QString l'identifiant de la course |
Références activerImpression(), ajouterResultat(), bd, effacerResultats(), et BaseDeDonnees::recuperer().
Référencé par selectionnerCourseResultats().
{ // On commence par effacer le contenu précédent effacerResultats(); // Récupérer les résultats d'une course (Requête SQL) QVector<QStringList> resultats; QString requete = "SELECT Inscrit.NumeroDossard, Coureur.Nom, Coureur.Prenom, Classe.Nom AS NomClasse, Classe.Numero, Arrivee.Temps FROM Course, Inscrit, Coureur, Classe, Arrivee WHERE Course.IdCourse = Inscrit.idCourse AND Inscrit.idCoureur = Coureur.idCoureur AND Coureur.idClasse = Classe.idClasse AND Inscrit.idInscrit = Arrivee.idInscrit AND Course.IdCourse = '" + idCourse + "' ORDER BY Arrivee.Temps ASC;"; qDebug() << Q_FUNC_INFO <<requete; bool retour = bd->recuperer(requete, resultats); if(retour != false) { QStringList unResultat; // Ajouter chaque élément dans le TableWidget for(int ligne = 0; ligne < resultats.size(); ligne++) { unResultat = resultats.at(ligne); ajouterResultat(ligne, unResultat); } activerImpression(); } }
IHMManifestation::ajouterResultat | ( | int | ligne, |
QStringList | unResultat | ||
) | [private, slot] |
Références COLONNE_CLASSE, COLONNE_CLASSEMENT, COLONNE_NOM, COLONNE_NUMERODOSSARD, COLONNE_PRENOM, COLONNE_TEMPS, EMPLACEMENT_NOM, EMPLACEMENT_NOMCLASSE, EMPLACEMENT_NUMEROCLASSE, EMPLACEMENT_NUMERODOSSARD, EMPLACEMENT_PRENOM, EMPLACEMENT_TEMPS, et ui.
Référencé par afficherResultats().
{ QTableWidgetItem *elementClassement, *elementNumeroDossard, *elementNom, *elementPrenom, *elementClasse, *elementTemps; //Colonne Classement ui->tableWidgetResultats->insertRow(ligne); elementClassement = new QTableWidgetItem(QString::number(ligne+1)); elementClassement->setFlags(Qt::ItemIsEnabled); if(ligne < 1) { elementClassement->setBackgroundColor(QColor(239,216,7)); QFont font("", 16, QFont::Normal); font.setBold(true); elementClassement->setFont(font); } else if(ligne < 2) { elementClassement->setBackgroundColor(QColor(206,206,206)); QFont font("", 16, QFont::Normal); font.setBold(true); elementClassement->setFont(font); } else if(ligne < 3) { elementClassement->setBackgroundColor(QColor(205,127,50)); elementClassement->setForeground(Qt::white); QFont font("", 16, QFont::Normal); font.setBold(true); elementClassement->setFont(font); } ui->tableWidgetResultats->setItem(ligne, COLONNE_CLASSEMENT, elementClassement); // l : ligne (row) et c : colonne //Colonne Numéro de Dossard elementNumeroDossard = new QTableWidgetItem(unResultat.at(EMPLACEMENT_NUMERODOSSARD)); elementNumeroDossard->setFlags(Qt::ItemIsEnabled); if(ligne < 1) { elementNumeroDossard->setBackgroundColor(QColor(239,216,7)); } else if(ligne < 2) { elementNumeroDossard->setBackgroundColor(QColor(206,206,206)); } else if(ligne < 3) { elementNumeroDossard->setBackgroundColor(QColor(205,127,50)); elementNumeroDossard->setForeground(Qt::white); } ui->tableWidgetResultats->setItem(ligne, COLONNE_NUMERODOSSARD, elementNumeroDossard); // l : ligne (row) et c : colonne //Colonne Nom elementNom = new QTableWidgetItem(unResultat.at(EMPLACEMENT_NOM)); elementNom->setFlags(Qt::ItemIsEnabled); if(ligne < 1) { elementNom->setBackgroundColor(QColor(239,216,7)); } else if(ligne < 2) { elementNom->setBackgroundColor(QColor(206,206,206)); } else if(ligne < 3) { elementNom->setBackgroundColor(QColor(205,127,50)); elementNom->setForeground(Qt::white); } ui->tableWidgetResultats->setItem(ligne, COLONNE_NOM, elementNom); // l : ligne (row) et c : colonne //Colonne Prénom elementPrenom = new QTableWidgetItem(unResultat.at(EMPLACEMENT_PRENOM)); elementPrenom->setFlags(Qt::ItemIsEnabled); if(ligne < 1) { elementPrenom->setBackgroundColor(QColor(239,216,7)); } else if(ligne < 2) { elementPrenom->setBackgroundColor(QColor(206,206,206)); } else if(ligne < 3) { elementPrenom->setBackgroundColor(QColor(205,127,50)); elementPrenom->setForeground(Qt::white); } ui->tableWidgetResultats->setItem(ligne, COLONNE_PRENOM, elementPrenom); // l : ligne (row) et c : colonne //Colonne Classe elementClasse = new QTableWidgetItem(unResultat.at(EMPLACEMENT_NOMCLASSE) + " " + unResultat.at(EMPLACEMENT_NUMEROCLASSE)); elementClasse->setFlags(Qt::ItemIsEnabled); elementClasse->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter); if(ligne < 1) { elementClasse->setBackgroundColor(QColor(239,216,7)); } else if(ligne < 2) { elementClasse->setBackgroundColor(QColor(206,206,206)); } else if(ligne < 3) { elementClasse->setBackgroundColor(QColor(205,127,50)); elementClasse->setForeground(Qt::white); } ui->tableWidgetResultats->setItem(ligne, COLONNE_CLASSE, elementClasse); // l : ligne (row) et c : colonne //Colonne Temps elementTemps = new QTableWidgetItem(unResultat.at(EMPLACEMENT_TEMPS)); elementTemps->setFlags(Qt::ItemIsEnabled); elementTemps->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter); if(ligne < 1) { elementTemps->setBackgroundColor(QColor(239,216,7)); } else if(ligne < 2) { elementTemps->setBackgroundColor(QColor(206,206,206)); } else if(ligne < 3) { elementTemps->setBackgroundColor(QColor(205,127,50)); elementTemps->setForeground(Qt::white); } ui->tableWidgetResultats->setItem(ligne, COLONNE_TEMPS, elementTemps); // l : ligne (row) et c : colonne }
IHMManifestation::chargerListeCategories | ( | ) | [private] |
Charge la liste des catégories.
Références bd, listeCategories, BaseDeDonnees::recuperer(), et ui.
Référencé par selectionnerOnglet().
{ qDebug() << Q_FUNC_INFO; QString requete; QStringList categories; bool retour; // Initialise la liste ui->listeInscriptionsCategories->clear(); listeCategories.clear(); // Récupère dans la liste des categories dans un QVector de QStringList requete = "SELECT * FROM Categorie ORDER BY Nom ASC;"; qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeCategories); if(retour != false) { for(int i=0; i < listeCategories.size(); i++) { categories = listeCategories.at(i); qDebug() << Q_FUNC_INFO << QString::fromUtf8("Catégories : ") << categories; ui->listeInscriptionsCategories->addItem(categories.at(1) + " " + categories.at(2)); } } }
IHMManifestation::chargerListeClasses | ( | ) | [private] |
Références bd, listeClasses, BaseDeDonnees::recuperer(), et ui.
Référencé par selectionnerOnglet().
{ QString requete; QStringList classe; bool retour; // Initialise la liste ui->listeInscriptionsClasses->clear(); listeClasses.clear(); // Récupère dans la liste des classes dans un QVector de QStringList requete = "SELECT * FROM Classe ORDER BY Nom ASC;"; qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeClasses); if(retour != false) { for(int i=0; i < listeClasses.size(); i++) { classe = listeClasses.at(i); qDebug() << Q_FUNC_INFO << QString::fromUtf8("Classe : ") << classe; ui->listeInscriptionsClasses->addItem(classe.at(1) + " " + classe.at(2)); } } }
IHMManifestation::chargerListeCoureurs | ( | ) | [private, slot] |
Charge la liste coureur.
Références bd, listeCoureurs, BaseDeDonnees::recuperer(), selectionnerCoureur(), selectionnerListeCoureursCourse(), et ui.
Référencé par creerCoureur(), modifierCoureur(), selectionnerOnglet(), et supprimerCoureur().
{ QString requete; bool retour; qDebug() << Q_FUNC_INFO; // Réinitialise la liste disconnect(ui->listeCoureurs, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCoureur())); listeCoureurs.clear(); ui->listeCoureurs->clear(); ui->listeCoureurs->addItem(""); // Récupère dans la liste des coureurs dans un QVector de QStringList requete = "SELECT Coureur.*,Classe.Nom as NomClasse,Classe.Numero,Categorie.Nom as NomCategorie,Categorie.Sexe as SexeCategorie FROM Coureur,Classe,Categorie WHERE Coureur.idCategorie = Categorie.idCategorie AND Coureur.idClasse = Classe.idClasse ORDER BY Coureur.Nom ASC;"; //qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeCoureurs); if(retour != false) { for(int i=0; i < listeCoureurs.size(); i++) { //qDebug() << Q_FUNC_INFO << QString::fromUtf8("Coureur : ") << listeCoureurs.at(i); ui->listeCoureurs->addItem(QString(listeCoureurs.at(i).at(4) + QString(" ") + listeCoureurs.at(i).at(5) + QString(" - ") + listeCoureurs.at(i).at(8) + QString(" ") + listeCoureurs.at(i).at(9) + QString(" - ") + listeCoureurs.at(i).at(10))); } selectionnerCoureur(); selectionnerListeCoureursCourse(); } connect(ui->listeCoureurs, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCoureur())); }
IHMManifestation::chargerListeCourses | ( | QString | idManifestation | ) | [private] |
Charge la liste des courses pour une manifestation.
idManifestation | QString l'identifiant de la manisfestation |
Références bd, COURSE_DISTANCE, COURSE_HEUREDEPART, COURSE_NOM, listeCourses, ONGLET_MANIFESTATION, BaseDeDonnees::recuperer(), selectionnerCourse(), selectionnerCourseResultats(), et ui.
Référencé par creerCourse(), modifierCourse(), selectionnerManifestation(), selectionnerManifestationResultats(), et supprimerCourse().
{ qDebug() << Q_FUNC_INFO; QString requete; QStringList course; bool retour; // Réinitialise la liste disconnect(ui->listeCreationCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourse())); disconnect(ui->listeCreationCoursesResultats, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourseResultats())); listeCourses.clear(); ui->listeCreationCourses->clear(); ui->listeCreationCourses->addItem(""); // index 0 ui->listeCreationCoursesResultats->clear(); ui->listeCreationCoursesResultats->addItem(""); // index 0 // Récupère la liste des courses d'une manifestation dans un QVector de QStringList requete = "SELECT * FROM Course WHERE idManifestation = '" + idManifestation + "' ORDER BY HeureDepart ASC;"; qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeCourses); if(retour != false) { for(int i=0; i < listeCourses.size(); i++) { course = listeCourses.at(i); qDebug() << Q_FUNC_INFO << QString::fromUtf8("Course : ") << course; QTime heureDepart = QTime::fromString(course.at(COURSE_HEUREDEPART), "hh:mm:ss"); ui->listeCreationCourses->addItem(course.at(COURSE_NOM) + " - " + course.at(COURSE_DISTANCE) + "m - " + heureDepart.toString("hh'h'mm")); ui->listeCreationCoursesResultats->addItem(course.at(COURSE_NOM) + " - " + course.at(COURSE_DISTANCE) + "m - " + heureDepart.toString("hh'h'mm")); } } // Sélectionne par défaut if(ui->onglets->currentIndex() == ONGLET_MANIFESTATION) selectionnerCourse(); connect(ui->listeCreationCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourse())); connect(ui->listeCreationCoursesResultats, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourseResultats())); }
IHMManifestation::chargerListeInscriptionCourses | ( | ) | [private, slot] |
Charge la liste des inscrits a une course.
Références bd, COURSE_NOM, listeCourses, BaseDeDonnees::recuperer(), et ui.
Référencé par selectionnerOnglet().
{ qDebug() << Q_FUNC_INFO; QString requete; QStringList course; bool retour; // Réinitialise la liste //disconnect(ui->listeInscriptionCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourse())); listeCourses.clear(); ui->listeInscriptionCourses->clear(); ui->listeInscriptionCourses->addItem(""); // index 0 // Récupère la liste des courses d'une manifestation dans un QVector de QStringList requete = "SELECT * FROM Course"; qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeCourses); if(retour != false) { for(int i=0; i < listeCourses.size(); i++) { course = listeCourses.at(i); qDebug() << Q_FUNC_INFO << QString::fromUtf8("Course : ") << course; ui->listeInscriptionCourses->addItem(course.at(COURSE_NOM)); } } }
IHMManifestation::chargerListeManifestations | ( | ) | [private] |
Charge la liste des manifestations.
Références bd, listeManifestations, manifestation, ONGLET_MANIFESTATION, BaseDeDonnees::recuperer(), selectionnerManifestation(), selectionnerManifestationResultats(), et ui.
Référencé par creerManifestation(), IHMManifestation(), modifierManifestation(), et supprimerManifestation().
{ QString requete; QStringList manifestation; bool retour; // Réinitialise la liste disconnect(ui->listeCreationManifestations, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerManifestation())); disconnect(ui->listeCreationManifestationsResultats, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerManifestationResultats())); listeManifestations.clear(); ui->listeCreationManifestations->clear(); ui->listeCreationManifestations->addItem(""); // index 0 ui->listeCreationManifestationsResultats->clear(); ui->listeCreationManifestationsResultats->addItem(""); // index 0 // Récupère dans la liste des manifestations dans un QVector de QStringList requete = "SELECT * FROM Manifestation ORDER BY Date ASC;"; qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, listeManifestations); if(retour != false) { for(int i=0; i < listeManifestations.size(); i++) { manifestation = listeManifestations.at(i); qDebug() << Q_FUNC_INFO << QString::fromUtf8("Manifestation : ") << manifestation; ui->listeCreationManifestations->addItem(manifestation.at(1)); ui->listeCreationManifestationsResultats->addItem(manifestation.at(1)); } } // Sélectionne par défaut if(ui->onglets->currentIndex() == ONGLET_MANIFESTATION) selectionnerManifestation(); connect(ui->listeCreationManifestations, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerManifestation())); connect(ui->listeCreationManifestationsResultats, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerManifestationResultats())); }
IHMManifestation::choisirInscriptionCourse | ( | ) | [private, slot] |
Référencé par IHMManifestation().
{ QMessageBox::critical(0, QString::fromUtf8("Chrono-Cross"), QString::fromUtf8("TODO Sélectionner l'onglet Inscription !")); // Le bouton Inscrire amène directement à l'onglet Résultats en attendant la correction des erreurs de la page Insciption //ui->onglets->setCurrentIndex(ONGLET_INSCRIPTION); //ui->lineEditNomCoureur->setFocus(); }
IHMManifestation::configurerTableResultats | ( | ) | [private] |
Références ui.
Référencé par IHMManifestation().
{ QStringList nomColonnes; // nom des colonnes nomColonnes << QString::fromUtf8("Classement") << QString::fromUtf8("Numéro de dossard") << QString::fromUtf8("Nom") << QString::fromUtf8("Prénom") << QString::fromUtf8("Classe") << QString::fromUtf8("Temps"); // ... // On fixe le nombre de colonnes ui->tableWidgetResultats->setColumnCount(nomColonnes.size()); // On applique les noms des colonnes ui->tableWidgetResultats->setHorizontalHeaderLabels(nomColonnes); // on cache les numéros de ligne ui->tableWidgetResultats->verticalHeader()->setHidden(true); QHeaderView * headerView = ui->tableWidgetResultats->horizontalHeader(); // on redimensionne automatiquement la colonne pour occuper l'espace disponible #if QT_VERSION >= 0x050000 headerView->setSectionResizeMode(QHeaderView::Stretch); #else headerView->setResizeMode(QHeaderView::Stretch); #endif }
IHMManifestation::creerCoureur | ( | ) | [private, slot] |
Crée un coureur.
Références bd, chargerListeCoureurs(), BaseDeDonnees::executer(), getIdCategorie(), getIdClasse(), et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Vérifications /*if(!verifierInformationsCoureur()) { ui->statusBar->showMessage(QString::fromUtf8("Les informations sur le coureur sont invalides ou manquantes"), 2000); return; }*/ QString requete = "INSERT INTO Coureur(idCategorie,idClasse,INE,Nom,Prenom,DateNaissance,Sexe) VALUES('" + getIdCategorie() + "','" + getIdClasse() + "','" + ui->lineEditNumeroINEEleve->text() +"','" + ui->lineEditNomCoureur->text() + "','" + ui->lineEditPrenomCoureur->text() + "','" + ui->dateEditDateNaissanceCoureur->date().toString("yyyy-MM-dd") + "','" + ui->listeInscriptionSexe->currentText() + "')"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Création du coureur %1 réussie").arg(ui->lineEditNomCoureur->text()), 2000); chargerListeCoureurs(); } else { ui->statusBar->showMessage(QString::fromUtf8("Impossible de créer le coureur %1 !").arg(ui->lineEditNomCoureur->text()), 2000); } }
IHMManifestation::creerCourse | ( | ) | [private, slot] |
Références bd, chargerListeCourses(), BaseDeDonnees::executer(), listeManifestations, TEMPO_STATUS, et ui.
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Vérifications if(ui->lineEditNomCourse->text().isEmpty()) { QMessageBox::critical(0, QString::fromUtf8("Chrono-Cross"), QString::fromUtf8("Il faut indiquer un nom et la longeur de la course !")); ui->statusBar->showMessage(QString::fromUtf8("Il faut indiquer un nom et la longeur de la course"), TEMPO_STATUS); return; } QString idManifestation = listeManifestations.at(ui->listeCreationManifestations->currentIndex()-1).at(0); QString requete = "INSERT INTO Course(idManifestation,Nom,HeureDepart,Distance) VALUES('" + idManifestation + "','" + ui->lineEditNomCourse->text() + "','" + ui->timeEditHeureDebutCourse->time().toString("hh:mm:ss") + "','" + ui->lineEditLongueurCourse->text() + "')"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Création de la course %1 réussie").arg(ui->lineEditNomCourse->text()), TEMPO_STATUS); chargerListeCourses(idManifestation); } }
IHMManifestation::creerManifestation | ( | ) | [private, slot] |
Références bd, chargerListeManifestations(), BaseDeDonnees::executer(), et ui.
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Vérifications if(ui->lineEditNomManifestation->text().isEmpty()) { QMessageBox::critical(0, QString::fromUtf8("Chrono-Cross"), QString::fromUtf8("Il faut indiquer un nom de manifestation !")); ui->statusBar->showMessage(QString::fromUtf8("Il faut indiquer un nom de manifestation"), 2000); return; } QString requete = "INSERT INTO Manifestation(Nom,Date) VALUES('" + ui->lineEditNomManifestation->text() + "','" + ui->dateEditEditionManifestation->date().toString("yyyy-MM-dd") + "')"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Création de la manifestation %1 réussie").arg(ui->lineEditNomManifestation->text()), 2000); chargerListeManifestations(); } }
IHMManifestation::demarrerInscriptionCoureur | ( | ) | [private, slot] |
Démarre l'inscription d'un coureur.
Références editionDossard.
Référencé par IHMManifestation().
{ // début de l'édition editionDossard = true; }
IHMManifestation::effacerResultats | ( | ) | [private] |
Références ui.
Référencé par afficherResultats(), et selectionnerCourseResultats().
QString IHMManifestation::getIdCategorie | ( | ) | [private] |
Références listeCategories, et ui.
Référencé par creerCoureur(), et modifierCoureur().
{ qDebug() << Q_FUNC_INFO; return listeCategories.at(ui->listeInscriptionsCategories->currentIndex()).at(0); }
IHMManifestation::getIdClasse | ( | ) | [private] |
Obtiens l'idClasses.
Références listeClasses, et ui.
Référencé par creerCoureur(), et modifierCoureur().
{ return listeClasses.at(ui->listeInscriptionsClasses->currentIndex()).at(0); }
IHMManifestation::getIdCoureur | ( | QString | nom | ) | [private] |
Obtiens l'idCoureur.
Références listeIdCoureurs, et listeNomsCoureurs.
Référencé par inscrireCoureur().
{ for(int i = 0; i < listeNomsCoureurs.size(); i++) { if(listeNomsCoureurs.at(i) == nom) return listeIdCoureurs.at(i); } return QString(""); }
IHMManifestation::getNumeroDossard | ( | QString | idCoureur, |
QString | idCourse | ||
) | [private] |
Obtiens les numéros de dossard.
idCoureur | QString l'identifiant du coureur |
idCourse | QString l'identifiant de la course |
Références bd, et BaseDeDonnees::recuperer().
Référencé par selectionnerListeCoureursCourse().
{ QString numeroDossard; QString requete; bool retour; if(idCoureur.isEmpty()) return QString(""); if(idCourse.isEmpty()) return QString(""); // Récupère le numéro de dossard dans un QString requete = "SELECT NumeroDossard FROM Inscrit WHERE idCoureur = '" + idCoureur + "' AND idCourse = '" + idCourse + "'"; //qDebug() << Q_FUNC_INFO << requete; retour = bd->recuperer(requete, numeroDossard); if(retour != false) { return numeroDossard; } return QString(""); }
void IHMManifestation::imprimerResultats | ( | ) | [private, slot] |
Références manifestation, MANIFESTATION_DATE, MANIFESTATION_NOM, et ui.
Référencé par IHMManifestation().
{ QPrinter printer; printer.setOrientation(QPrinter::Landscape); QPrintDialog *dialog = new QPrintDialog(&printer, this); dialog->setWindowTitle(tr("Imprimer")); if (dialog->exec() == QDialog::Accepted) { QPainter painter; painter.begin(&printer); painter.save(); QString datestring = manifestation.at(MANIFESTATION_DATE); QDate date = QDate::fromString(datestring,"yyyy-MM-dd"); // Les informations sur la manifestation et la course à imprimer painter.drawText(40, 80, QString::fromUtf8("Manifestation : ") + manifestation.at(MANIFESTATION_NOM).toUtf8() + " - " + QString::fromUtf8("Date : ") + date.toString("dd-MM-yyyy")); painter.drawText(40, 120, QString::fromUtf8("Course : ") + ui->label_ChargerNomCourseResultats->text().toUtf8() + " - " + QString::fromUtf8("Heure de départ : ") + ui->label_ChargerHeureDepartCourseResultats->text().toUtf8() + " - " + QString::fromUtf8("Longueur de la course : ") + ui->label_ChargerLongueurCourseResultats->text().toUtf8() + QString::fromUtf8(" m")); painter.restore(); // Les résultats painter.translate(40, 160); ui->tableWidgetResultats->render(&painter); } }
IHMManifestation::inscrireCoureur | ( | ) | [private, slot] |
Inscrit un coureur.
Références coureurs, editionDossard, getIdCoureur(), idCoureur, listeNomsCoureurs, selectionnerCoureurListe(), selectionnerListeCoureursCourse(), et ui.
Référencé par IHMManifestation().
{ QString requete; // édition en cours ? if(editionDossard == true) { //qDebug() << Q_FUNC_INFO << ui->lineEditNomInscrit->text() << ui->lineEditNumeroDossard->text(); //qDebug() << Q_FUNC_INFO << "DOSSARD nouveau : " << ui->lineEditNumeroDossard->text(); //qDebug() << Q_FUNC_INFO << "DOSSARD ancien : "; //qDebug() << Q_FUNC_INFO << "Id Course : " << listeCourses.at(ui->listeInscriptionCourses->currentIndex()-1).at((0)); QString idCoureur = getIdCoureur(ui->lineEditNomInscrit->text()); QString idCourse; qDebug() << Q_FUNC_INFO << "Id Coureur : " << idCoureur; qDebug() << Q_FUNC_INFO << "Id Course : " << idCourse; //requete = "INSERT Inscrit.NumeroDossard FROM Coureur WHERE idCoureur = '" + idCoureur + "' AND idCourse = '" + idCourse + "'"; selectionnerListeCoureursCourse(); } // fin de l'édition editionDossard = false; // on passe au suivant (Amélioration Thierry Vaira) for(int i = 0; i < listeNomsCoureurs.size(); i++) { if(listeNomsCoureurs.at(i) == ui->lineEditNomInscrit->text()) { QModelIndex index = coureurs->index(++i%coureurs->rowCount(), 0); ui->listViewDossards->setCurrentIndex(index); ui->listViewCoureurs->setCurrentIndex(index); selectionnerCoureurListe(index); break; } } }
IHMManifestation::modifierCoureur | ( | ) | [private, slot] |
Références bd, chargerListeCoureurs(), COUREUR_ID, BaseDeDonnees::executer(), getIdCategorie(), getIdClasse(), listeCoureurs, TEMPO_STATUS, et ui.
Référencé par IHMManifestation().
{ if(ui->listeCoureurs->currentIndex() == 0) return; qDebug() << Q_FUNC_INFO; bool retour = false; QString requete = "UPDATE Coureur SET INE = '" + ui->lineEditNumeroINEEleve->text() + "', Nom = '" + ui->lineEditNomCoureur->text() + "', Prenom = '" + ui->lineEditPrenomCoureur->text() + "', DateNaissance = '" + ui->dateEditDateNaissanceCoureur->date().toString("yyyy-MM-dd") + "', Sexe = '"+ ui->listeInscriptionSexe->currentText() + "', idCategorie = '" + getIdCategorie() + "', idClasse = '" + getIdClasse() + "' WHERE idCoureur = '" + listeCoureurs.at(ui->listeCoureurs->currentIndex()-1).at(COUREUR_ID) + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Modification du coureur %1 réussie").arg(ui->lineEditNomCoureur->text()), TEMPO_STATUS); chargerListeCoureurs(); } else { ui->statusBar->showMessage(QString::fromUtf8("Impossible de modifier le coureur %1 !").arg(ui->lineEditNomCoureur->text()), TEMPO_STATUS); } }
IHMManifestation::modifierCourse | ( | ) | [private, slot] |
Références bd, chargerListeCourses(), BaseDeDonnees::executer(), listeCourses, listeManifestations, TEMPO_STATUS, et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Vérifications if(ui->lineEditNomCourse->text().isEmpty()) { QMessageBox::critical(0, QString::fromUtf8("Chrono-Cross"), QString::fromUtf8("Il faut indiquer un nom de course !")); ui->statusBar->showMessage(QString::fromUtf8("Il faut indiquer un nom de course"), TEMPO_STATUS); return; } // Récupére l'identifiant de la course QString idCourse = listeCourses.at(ui->listeCreationCourses->currentIndex()-1).at(0); QString requete = "UPDATE Course SET Nom = '" + ui->lineEditNomCourse->text() + "', HeureDepart = '" + ui->timeEditHeureDebutCourse->time().toString("hh:mm:ss") + "', Distance = '" + ui->lineEditLongueurCourse->text() + "' WHERE idCourse = '" + idCourse + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Modification de la course %1 réussie").arg(ui->lineEditNomCourse->text()), TEMPO_STATUS); chargerListeCourses(listeManifestations.at(ui->listeCreationManifestations->currentIndex()-1).at(0)); } }
IHMManifestation::modifierManifestation | ( | ) | [private, slot] |
Références bd, chargerListeManifestations(), BaseDeDonnees::executer(), listeManifestations, et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Vérifications if(ui->lineEditNomManifestation->text().isEmpty()) { ui->statusBar->showMessage(QString::fromUtf8("Il faut indiquer un nom de manifestation"), 2000); return; } // Récupére l'identifiant de la manifestation QString idManifestation = listeManifestations.at(ui->listeCreationManifestations->currentIndex()-1).at(0); QString requete = "UPDATE Manifestation SET Nom = '" + ui->lineEditNomManifestation->text() + "', Date = '" + ui->dateEditEditionManifestation->date().toString("yyyy-MM-dd") + "' WHERE idManifestation = '" + idManifestation + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Modification de la manifestation %1 réussie").arg(ui->lineEditNomManifestation->text()), 2000); chargerListeManifestations(); } }
IHMManifestation::quitter | ( | ) | [private, slot] |
IHMManifestation::selectionnerCoureur | ( | ) | [private, slot] |
Selectionne un coureur.
Références COUREUR_DATENAISSANCE, COUREUR_NOM, COUREUR_NOM_CATEGORIE, COUREUR_NOM_CLASSE, COUREUR_NUMERO_CLASSE, COUREUR_NUMERO_INE, COUREUR_PRENOM, COUREUR_SEXE, COUREUR_SEXE_CATEGORIE, listeCoureurs, et ui.
Référencé par chargerListeCoureurs(), et IHMManifestation().
{ QDate DateNaissance; QStringList coureur; int position; int index = ui->listeCoureurs->currentIndex(); qDebug() << Q_FUNC_INFO << index; switch(index) { case 0: ui->lineEditNomCoureur->setText(""); ui->lineEditPrenomCoureur->setText(""); DateNaissance = QDate::fromString("2000-01-01", "yyyy-MM-dd"); ui->dateEditDateNaissanceCoureur->setDate(DateNaissance); ui->listeInscriptionSexe->setCurrentIndex(0); ui->lineEditNumeroINEEleve->setText(""); ui->listeInscriptionsClasses->setCurrentIndex(0); ui->listeInscriptionsCategories->setCurrentIndex(0); ui->boutonCreationCoureur->setEnabled(true); ui->boutonModificationCoureur->setEnabled(false); ui->boutonSuppressionCoureur->setEnabled(false); break; default: if(index > 0) { coureur = listeCoureurs.at(index-1); qDebug() << Q_FUNC_INFO << coureur; ui->lineEditNomCoureur->setText(coureur.at(COUREUR_NOM)); ui->lineEditPrenomCoureur->setText(coureur.at(COUREUR_PRENOM)); DateNaissance = QDate::fromString(coureur.at(COUREUR_DATENAISSANCE), "yyyy-MM-dd"); ui->dateEditDateNaissanceCoureur->setDate(DateNaissance); position = ui->listeInscriptionSexe->findText(coureur.at(COUREUR_SEXE)); if(position != -1) ui->listeInscriptionSexe->setCurrentIndex(position); ui->lineEditNumeroINEEleve->setText(coureur.at(COUREUR_NUMERO_INE)); position = ui->listeInscriptionsClasses->findText(coureur.at(COUREUR_NOM_CLASSE) + " " + coureur.at(COUREUR_NUMERO_CLASSE)); if(position != -1) ui->listeInscriptionsClasses->setCurrentIndex(position); position = ui->listeInscriptionsCategories->findText(coureur.at(COUREUR_NOM_CATEGORIE) + " " + coureur.at(COUREUR_SEXE_CATEGORIE)+ " "); if(position != -1) ui->listeInscriptionsCategories->setCurrentIndex(position); ui->boutonCreationCoureur->setEnabled(false); ui->boutonModificationCoureur->setEnabled(true); ui->boutonSuppressionCoureur->setEnabled(true); } break; } }
IHMManifestation::selectionnerCoureurListe | ( | const QModelIndex & | index | ) | [private, slot] |
Références dossards, listeCoureurs, listeNumerosDossardCoureurs, et ui.
Référencé par IHMManifestation(), et inscrireCoureur().
{ qDebug() << Q_FUNC_INFO << index.data() << index.row(); if(listeCoureurs.count() > 0) { QModelIndex indexDossard = dossards->index(index.row(), 0); ui->listViewDossards->scrollTo(indexDossard); ui->lineEditNomInscrit->setText(index.data().toString()); ui->lineEditNumeroDossard->setText(listeNumerosDossardCoureurs.at(index.row())); ui->lineEditNumeroDossard->setFocus(); } }
IHMManifestation::selectionnerCourse | ( | ) | [private, slot] |
Sélectionne une course à éditer.
Références COURSE_DISTANCE, COURSE_HEUREDEPART, COURSE_NOM, listeCourses, et ui.
Référencé par chargerListeCourses(), et selectionnerManifestation().
{ QTime heureDebutCourse(8, 0); QStringList course; int index = ui->listeCreationCourses->currentIndex(); switch(index) { case 0: ui->timeEditHeureDebutCourse->setTime(heureDebutCourse); ui->lineEditNomCourse->setText(""); ui->lineEditLongueurCourse->setText(""); if(ui->listeCreationManifestations->currentIndex() > 0) { ui->boutonCreationCourse->setEnabled(true); } else { disconnect(ui->listeCreationCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourse())); listeCourses.clear(); ui->listeCreationCourses->clear(); ui->listeCreationCourses->addItem(""); // index 0 ui->listeInscriptionCourses->clear(); ui->boutonCreationCourse->setEnabled(false); connect(ui->listeCreationCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerCourse())); } ui->boutonModificationCourse->setEnabled(false); ui->boutonSuppressionCourse->setEnabled(false); ui->boutonInscrireCourse->setEnabled(false); break; default: if(index > 0) { course = listeCourses.at(index-1); QTime heureCourse = QTime::fromString(course.at(COURSE_HEUREDEPART), "hh:mm:ss"); ui->timeEditHeureDebutCourse->setTime(heureCourse); ui->lineEditNomCourse->setText(course.at(COURSE_NOM)); ui->lineEditLongueurCourse->setText(course.at(COURSE_DISTANCE)); ui->boutonCreationCourse->setEnabled(false); ui->boutonModificationCourse->setEnabled(true); ui->boutonSuppressionCourse->setEnabled(true); ui->listeInscriptionCourses->setCurrentIndex(index-1); ui->boutonInscrireCourse->setEnabled(true); } break; } }
IHMManifestation::selectionnerCourseResultats | ( | ) | [private, slot] |
Références afficherResultats(), COURSE_DISTANCE, COURSE_HEUREDEPART, COURSE_NOM, effacerResultats(), listeCourses, et ui.
Référencé par chargerListeCourses(), et selectionnerManifestationResultats().
{ QStringList course; int index = ui->listeCreationCoursesResultats->currentIndex(); ui->label_ChargerNomCourseResultats->clear(); ui->label_ChargerHeureDepartCourseResultats->clear(); ui->label_ChargerLongueurCourseResultats->clear(); switch(index) { case 0: effacerResultats(); break; default: if(index > 0) { course = listeCourses.at(index-1); QTime heureCourse = QTime::fromString(course.at(COURSE_HEUREDEPART), "hh:mm:ss"); ui->label_ChargerNomCourseResultats->setText(course.at(COURSE_NOM)); ui->label_ChargerHeureDepartCourseResultats->setText(heureCourse.toString("hh'h'mm")); ui->label_ChargerLongueurCourseResultats->setText(course.at(COURSE_DISTANCE)); afficherResultats(course.at(0)); } break; } }
IHMManifestation::selectionnerDossardListe | ( | const QModelIndex & | index | ) | [private, slot] |
Références coureurs, listeCoureurs, listeNumerosDossardCoureurs, et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO << index.data() << index.row(); if(listeCoureurs.count() > 0) { qDebug() << Q_FUNC_INFO; QModelIndex indexCoureur = coureurs->index(index.row(), 0); ui->listViewCoureurs->scrollTo(indexCoureur); ui->lineEditNomInscrit->setText(indexCoureur.data().toString()); ui->lineEditNumeroDossard->setText(listeNumerosDossardCoureurs.at(index.row())); ui->lineEditNumeroDossard->setFocus(); } }
IHMManifestation::selectionnerListeCoureursCourse | ( | ) | [private, slot] |
Selectionne la liste des coureurs dans une course.
Références afficherListeCoureurs(), coureurs, dossards, getNumeroDossard(), listeCoureurs, listeCourses, listeIdCoureurs, listeNomsCoureurs, listeNumerosDossardCoureurs, et ui.
Référencé par chargerListeCoureurs(), IHMManifestation(), et inscrireCoureur().
{ // aucune course sélectionnée ? if(ui->listeInscriptionCourses->currentIndex() == 0) { // Efface les QListView listeNomsCoureurs.clear(); listeNumerosDossardCoureurs.clear(); coureurs->setStringList(listeNomsCoureurs); ui->listViewCoureurs->setModel(coureurs); dossards->setStringList(listeNumerosDossardCoureurs); ui->listViewDossards->setModel(dossards); return; } // aucune course ? if(listeCourses.size() == 0) return; // Récupére la course sélectionnée QStringList course = listeCourses.at(ui->listeInscriptionCourses->currentIndex()-1); qDebug() << Q_FUNC_INFO << course; // Réinitialise la liste disconnect(ui->listeInscriptionCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerListeCoureursCourse())); listeNomsCoureurs.clear(); listeNumerosDossardCoureurs.clear(); listeIdCoureurs.clear(); for(int i=0; i < listeCoureurs.size(); i++) { listeNomsCoureurs.push_back(QString(listeCoureurs.at(i).at(4) + QString(" ") + listeCoureurs.at(i).at(5))); listeIdCoureurs.push_back(listeCoureurs.at(i).at(0)); if(listeCoureurs.count() > 0 && listeCourses.count() > 0) { if(ui->listeInscriptionCourses->currentIndex() > 0) { QString numeroDossard = getNumeroDossard(listeCoureurs.at(i).at(0), listeCourses.at(ui->listeInscriptionCourses->currentIndex()-1).at(0)); //qDebug() << Q_FUNC_INFO << QString::fromUtf8("Coureur : ") << listeCoureurs.at(i) << numeroDossard; listeNumerosDossardCoureurs.push_back(numeroDossard); } } } connect(ui->listeInscriptionCourses, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerListeCoureursCourse())); afficherListeCoureurs(); }
IHMManifestation::selectionnerManifestation | ( | ) | [private, slot] |
Sélectionne une manifestation à éditer.
Références chargerListeCourses(), listeManifestations, manifestation, ONGLET_MANIFESTATION, selectionnerCourse(), et ui.
Référencé par chargerListeManifestations().
{ QDate maintenant = QDate::currentDate(); QStringList manifestation; int index = ui->listeCreationManifestations->currentIndex(); switch(index) { case 0: ui->dateEditEditionManifestation->setDate(maintenant); ui->lineEditNomManifestation->setText(""); ui->boutonCreationManifestation->setEnabled(true); ui->boutonModificationManifestation->setEnabled(false); ui->boutonSuppressionManifestation->setEnabled(false); ui->boutonCreationCourse->setEnabled(false); ui->listeCreationCourses->setCurrentIndex(0); if(ui->onglets->currentIndex() == ONGLET_MANIFESTATION) selectionnerCourse(); break; default: if(index > 0) { manifestation = listeManifestations.at(index-1); QDate dateManifestation = QDate::fromString(manifestation.at(2), "yyyy-MM-dd"); ui->dateEditEditionManifestation->setDate(dateManifestation); ui->lineEditNomManifestation->setText(manifestation.at(1)); ui->boutonCreationManifestation->setEnabled(false); ui->boutonModificationManifestation->setEnabled(true); ui->boutonSuppressionManifestation->setEnabled(true); ui->boutonCreationCourse->setEnabled(true); chargerListeCourses(manifestation.at(0)); } break; } }
IHMManifestation::selectionnerManifestationResultats | ( | ) | [private, slot] |
Références chargerListeCourses(), listeManifestations, manifestation, selectionnerCourseResultats(), et ui.
Référencé par chargerListeManifestations().
{ int index = ui->listeCreationManifestationsResultats->currentIndex(); switch(index) { case 0: ui->listeCreationCoursesResultats->setCurrentIndex(0); selectionnerCourseResultats(); break; default: if(index > 0) { manifestation = listeManifestations.at(index-1); chargerListeCourses(manifestation.at(0)); } break; } }
IHMManifestation::selectionnerOnglet | ( | int | index | ) | [private, slot] |
index | int l'onglet sélectionné |
Références afficherListeCoureurs(), chargerListeCategories(), chargerListeClasses(), chargerListeCoureurs(), chargerListeInscriptionCourses(), et editionDossard.
Référencé par IHMManifestation().
{ switch(index) { case 0 : // Manifestation //chargerListeManifestations(); break; case 1 : // Inscription editionDossard = false; chargerListeClasses(); chargerListeCategories(); chargerListeCoureurs(); chargerListeInscriptionCourses(); afficherListeCoureurs(); break; case 2 : // Résultats break; } }
IHMManifestation::supprimerCoureur | ( | ) | [private, slot] |
Références bd, chargerListeCoureurs(), BaseDeDonnees::executer(), ui, et verifierInformationsSuppressionCoureur().
Référencé par IHMManifestation().
{ if(ui->listeCoureurs->currentIndex() == 0) return; qDebug() << Q_FUNC_INFO ; bool retour = false; // Vérifications if(!verifierInformationsSuppressionCoureur()) { ui->statusBar->showMessage(QString::fromUtf8("Les informations sur le coureur sont invalides ou manquantes"), 2000); return; } // Récupére le nom et le prenom du Coureur QString Nom = ui->lineEditNomCoureur->text(); QString Prenom = ui->lineEditPrenomCoureur->text(); QString requete = "DELETE FROM Coureur WHERE Nom = '" + Nom + "' AND Prenom = '" + Prenom + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Suppression du coureur %1 réussie").arg(ui->lineEditNomCoureur->text()), 2000); chargerListeCoureurs(); } }
IHMManifestation::supprimerCourse | ( | ) | [private, slot] |
Références bd, chargerListeCourses(), BaseDeDonnees::executer(), listeCourses, listeManifestations, TEMPO_STATUS, et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Récupére l'identifiant de la course QString idCourse = listeCourses.at(ui->listeCreationCourses->currentIndex()-1).at(0); QString requete = "DELETE FROM Course WHERE idCourse = '" + idCourse + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Suppression de la course %1 réussie").arg(ui->lineEditNomCourse->text()), TEMPO_STATUS); chargerListeCourses(listeManifestations.at(ui->listeCreationManifestations->currentIndex()-1).at(0)); } }
IHMManifestation::supprimerManifestation | ( | ) | [private, slot] |
Références bd, chargerListeManifestations(), BaseDeDonnees::executer(), listeManifestations, et ui.
Référencé par IHMManifestation().
{ qDebug() << Q_FUNC_INFO; bool retour = false; // Récupére l'identifiant de la manifestation QString idManifestation = listeManifestations.at(ui->listeCreationManifestations->currentIndex()-1).at(0); QString requete = "DELETE FROM Manifestation WHERE idManifestation = '" + idManifestation + "'"; qDebug() << Q_FUNC_INFO << requete; retour = bd->executer(requete); if(retour) { ui->statusBar->showMessage(QString::fromUtf8("Suppression de la manifestation %1 réussie").arg(ui->lineEditNomManifestation->text()), 2000); chargerListeManifestations(); } }
IHMManifestation::verifierInformationsCoureur | ( | ) | [private] |
Vérifie les informations du coureur.
Références ui.
{ if(ui->lineEditNomCoureur->text().isEmpty()) { return false; } if(ui->lineEditPrenomCoureur->text().isEmpty()) { return false; } //Verifier numéro INE /*if(ui->lineEditNumeroINEEleve->text().isEmpty() || ui->lineEditNumeroINEEleve->text().length() != 11)*/ if(ui->lineEditNumeroINEEleve->text().contains(QRegExp("[0-9]{9}[A-Z]{2}"))) { return true; } return false; }
IHMManifestation::verifierInformationsSuppressionCoureur | ( | ) | [private] |
Vérifie que les informations du coureur sont supprimées.
Références ui.
Référencé par supprimerCoureur().
BaseDeDonnees* IHMManifestation::bd [private] |
Référencé par afficherResultats(), chargerListeCategories(), chargerListeClasses(), chargerListeCoureurs(), chargerListeCourses(), chargerListeInscriptionCourses(), chargerListeManifestations(), creerCoureur(), creerCourse(), creerManifestation(), getNumeroDossard(), IHMManifestation(), modifierCoureur(), modifierCourse(), modifierManifestation(), supprimerCoureur(), supprimerCourse(), supprimerManifestation(), et ~IHMManifestation().
QStringListModel* IHMManifestation::coureurs [private] |
QStringListModel* IHMManifestation::dossards [private] |
bool IHMManifestation::editionDossard [private] |
Référencé par demarrerInscriptionCoureur(), inscrireCoureur(), et selectionnerOnglet().
IHMManifestation::idCoureur [private] |
Référencé par inscrireCoureur().
QVector<QStringList> IHMManifestation::listeCategories [private] |
Référencé par chargerListeCategories(), et getIdCategorie().
QVector<QStringList> IHMManifestation::listeClasses [private] |
Référencé par chargerListeClasses(), et getIdClasse().
QVector<QStringList> IHMManifestation::listeCoureurs [private] |
QVector<QStringList> IHMManifestation::listeCourses [private] |
QVector<QStringList> IHMManifestation::listeCoursesResultats [private] |
QStringList IHMManifestation::listeIdCoureurs [private] |
Référencé par getIdCoureur(), et selectionnerListeCoureursCourse().
QVector<QStringList> IHMManifestation::listeManifestations [private] |
QVector<QStringList> IHMManifestation::listeManifestationsResultats [private] |
QStringList IHMManifestation::listeNomsCoureurs [private] |
Référencé par afficherListeCoureurs(), getIdCoureur(), inscrireCoureur(), et selectionnerListeCoureursCourse().
QStringList IHMManifestation::listeNumerosDossardCoureurs [private] |
QStringList IHMManifestation::manifestation [private] |
Ui::IHMManifestation* IHMManifestation::ui [private] |
Référencé par activerImpression(), afficherConfigurationManifestation(), afficherInscriptionCoureurs(), afficherListeCoureurs(), afficherPublicationResultats(), ajouterResultat(), chargerListeCategories(), chargerListeClasses(), chargerListeCoureurs(), chargerListeCourses(), chargerListeInscriptionCourses(), chargerListeManifestations(), configurerTableResultats(), creerCoureur(), creerCourse(), creerManifestation(), effacerResultats(), getIdCategorie(), getIdClasse(), IHMManifestation(), imprimerResultats(), inscrireCoureur(), modifierCoureur(), modifierCourse(), modifierManifestation(), selectionnerCoureur(), selectionnerCoureurListe(), selectionnerCourse(), selectionnerCourseResultats(), selectionnerDossardListe(), selectionnerListeCoureursCourse(), selectionnerManifestation(), selectionnerManifestationResultats(), supprimerCoureur(), supprimerCourse(), supprimerManifestation(), verifierInformationsCoureur(), verifierInformationsSuppressionCoureur(), et ~IHMManifestation().