Afficheur-AREA  1.1
BTS SNIR LaSalle Avignon 2021
IHMAfficheur.h
Aller à la documentation de ce fichier.
1 #ifndef IHMAFFICHEUR_H
2 #define IHMAFFICHEUR_H
3 
13 #include <QtWidgets>
14 #include <QThread>
15 
20 //#define TEST_SANS_BLUETOOTH
21 
22 #define GAUCHE 1
23 #define DROITE 2
24 
25 #define DEMARRER 0
26 #define TERMINER 1
27 
28 #define COULEUR_EQUIPE1 "*{color:#fdff37;}"
29 #define COULEUR_EQUIPE2 "*{color:#fdff8b;}"
30 
31 class Rencontre;
32 class Communication;
33 class Partie;
34 class Joueur;
35 
36 namespace Ui
37 {
38  class IHMAfficheur;
39 }
40 
46 class IHMAfficheur : public QMainWindow
47 {
48  Q_OBJECT
49 
50 private:
51  Ui::IHMAfficheur *ui;
54  QVector<int> disponibiliteAffichages;
59  QElapsedTimer *chronometrePartieGauche;
60  QElapsedTimer *chronometrePartieDroite;
61  QTime *horodatage;
62  QTimer *timerHorodatage;
63  QWidget *fenetreAcceuil;
64  QLabel *labelHorodatage;
65 
66  void initialiserIHM();
67  void initialiserCommunication();
68  void afficherRencontre();
69  void demarrerPartie(int i, QVector<Joueur> joueurs, QVector<Partie> parties);
70  void terminerPartie(int i,QVector<Joueur> joueurs, QVector<Partie> parties);
71  void afficherManchesGauche(int nbManchesJoueurB, int nbManchesJoueurA, QString nomJoueur3);
72  void afficherManchesDroite(int nbManchesJoueurB, int nbManchesJoueurA, QString nomJoueur3);
73 
74  void initialiserCouleurs();
75 
76 public:
77  explicit IHMAfficheur(QWidget *parent = 0);
78  ~IHMAfficheur();
79 
80  void initialiserFenetreAcceuil();
81 
82 public slots:
83  void actualiserTimerGauche();
84  void actualiserTimerDroite();
85  void actualiserHorodatage();
86  void commencerRencontre(QString club1, QString club2);
87  void afficherEtatConnecte();
88  void afficherEtatDeconnecte();
89  void actualiserScore(int idPartie, int scoreA, int scoreB, int nbManchesJoueurA, int nbManchesJoueurB);
90  void changerEtatPartie(int idPartie, QString EtatPartie);
91  void afficherNET(int idPartie);
92  void cacherNETPartieGauche();
93  void cacherNETPartieDroite();
94 };
95 
96 #endif // IHMAFFICHEUR_H
QTime * tempsPartieGauche
Definition: IHMAfficheur.h:55
QTime * tempsPartieDroite
Definition: IHMAfficheur.h:56
QWidget * fenetreAcceuil
Definition: IHMAfficheur.h:63
Déclaration de la classe Partie.
Definition: Partie.h:32
QElapsedTimer * chronometrePartieDroite
Definition: IHMAfficheur.h:60
Déclaration de la classe Joueur.
Definition: Joueur.h:20
Déclaration de la classe Rencontre.
Definition: Rencontre.h:31
QVector< int > disponibiliteAffichages
Vecteur contenant la disponibilité des affichages (partie gauche et partie droite de l&#39;ecran) ...
Definition: IHMAfficheur.h:54
Communication * communication
Pointeur pour la relation avec la classe Communication.
Definition: IHMAfficheur.h:53
Déclaration de la classe IHMAfficheur.
Definition: IHMAfficheur.h:46
QTime * horodatage
Definition: IHMAfficheur.h:61
Ui::IHMAfficheur * ui
Association vers l&#39;interface utilisateur réalisé avec Qt Designer.
Definition: IHMAfficheur.h:51
Rencontre * rencontre
Pointeur pour la relation avec la classe Rencontre.
Definition: IHMAfficheur.h:52
Déclaration de la classe Communication.
Definition: Communication.h:61
QTimer * timerPartieDroite
Definition: IHMAfficheur.h:58
QTimer * timerPartieGauche
Definition: IHMAfficheur.h:57
QLabel * labelHorodatage
Definition: IHMAfficheur.h:64
QElapsedTimer * chronometrePartieGauche
Definition: IHMAfficheur.h:59
QTimer * timerHorodatage
Definition: IHMAfficheur.h:62