Groom  1.1
BTS SNIR LaSalle Avignon 2021
IHMGroom.h
Aller à la documentation de ce fichier.
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3 
13 #include <QtWidgets>
14 #include <QVector>
15 #include <QNetworkAccessManager>
16 #include <QNetworkRequest>
17 #include <QNetworkReply>
18 #include <QSettings>
19 #include <QDir>
20 #include <QFileDialog>
21 #include <QInputDialog>
22 #include <QMenu>
23 #include <QMenuBar>
24 #include <QStatusBar>
25 #include <QStringList>
26 #include "CommunicationGroom.h"
27 #include "Occupant.h"
28 #include "Calendrier.h"
29 #include "Evenement.h"
30 
35 //#define TEST_NOTIFICATION
36 
37 namespace Ui
38 {
39  class IHMGroom;
40 }
41 
47 class IHMGroom : public QMainWindow
48 {
49  Q_OBJECT
50 
51 public:
52  IHMGroom(QWidget *parent = nullptr);
53  ~IHMGroom();
54 
55 protected:
62  void closeEvent(QCloseEvent *event);
63 
64 public slots:
69  void afficherNotification(QString titre, QString message, QSystemTrayIcon::MessageIcon icone, int duree = 1000);
74  void acquitterNotification();
75 
76  #ifdef TEST_NOTIFICATION
77 
81  void testerNotification();
82  #endif
84  void traiterRequete();
85  void selectionnerOccupant(int index);
86  void ajouterOccupant();
87  void modifierOccupant();
88  void supprimerOccupant();
89  void detecterGroom(QString nomPeripherique, QString adressePeripherique);
90  void connecterGroom();
91  void deconnecterGroom();
92  void afficherConnexionGroom(QString nomPeripherique, QString adressePeripherique);
93  void afficherDeconnexionGroom(QString nomPeripherique, QString adressePeripherique);
95  void envoyerEtatLibre();
96  void envoyerEtatAbsent();
97  void envoyerEtatOccupe();
98  void envoyerEtatEntrer();
99  void envoyerEtatSonnette();
100  void envoyerEtatPresence();
101  void envoyerMessageOccupant();
102  void rechercherGroom();
103  void arreterRechercheGroom();
104  void actualiserIndicateurs(int Groom, int Sonnette, int Presence, int ModeSonnette, int ModePresence);
105  void viderFormulaire();
106  void ouvrirFichier();
107  void ouvrirURL();
108  void afficherEtat(QString message);
109  void afficherEtat(QString message, int duree);
110  void effacerEtat();
111  void effacer();
112  void effacerEvenement();
113  void selectionnerDate(QDate date);
114 
115 private:
116  Ui::IHMGroom *uiIHMGroom;
117  QVector<Occupant> occupants;
123  QPixmap sonnetteOff;
124  QPixmap sonnetteOn;
125 
126  QSystemTrayIcon *iconeSysteme;
128  QAction *actionMinimiser;
129  QAction *actionMaximiser;
130  QAction *actionRestaurer;
131  QAction *actionQuitter;
133  QNetworkAccessManager networkManager;
134  QNetworkRequest requete;
135  QNetworkReply* networkReply;
136  QStatusBar *barreEtat;
138 
148  void chargerParametres();
153  void sauvegarderParametres();
158  void initialiserIHM();
164 };
165 
166 #endif // MAINWINDOW_H
IHMGroom::actionMaximiser
QAction * actionMaximiser
L'action maximiser l'application.
Definition: IHMGroom.h:129
Presence
@ Presence
Definition: CommunicationGroom.h:89
Sonnette
@ Sonnette
Definition: CommunicationGroom.h:88
IHMGroom::recupererRequeteCalendrier
void recupererRequeteCalendrier()
Méthode qui permet de sélectionner une date.
Definition: IHMGroom.cpp:238
IHMGroom::etatInitialIconeSysteme
bool etatInitialIconeSysteme
Booléen indiquant si c'est la première demande Quitter.
Definition: IHMGroom.h:132
EtatSonnette
EtatSonnette
Définit les différents états du mode Sonnette.
Definition: CommunicationGroom.h:63
IHMGroom::envoyerAffichageOccupant
void envoyerAffichageOccupant()
Méthode qui permet d'envoyer l'affichage de l'occupant vers le système groom.
Definition: IHMGroom.cpp:544
IHMGroom
Déclaration de la classe IHMGroom.
Definition: IHMGroom.h:47
IHMGroom::afficherEtat
void afficherEtat(QString message)
Méthode qui permet l'affichage d'un état (Calendrier)
Definition: IHMGroom.cpp:1032
IHMGroom::closeEvent
void closeEvent(QCloseEvent *event)
Méthode redéfinie qui est appelée automatiquement lors d'une demande de fermeture.
Definition: IHMGroom.cpp:58
IHMGroom::initialiserIconeSysteme
void initialiserIconeSysteme()
Méthode qui permet à l'application de s'installer dans la barre système.
Definition: IHMGroom.cpp:77
IHMGroom::initialiserIHM
void initialiserIHM()
Initialise l'IHM GROOM.
Definition: IHMGroom.cpp:173
IHMGroom::rechercherGroom
void rechercherGroom()
Méthode qui permet de rechercher le périphérique groom voulu.
Definition: IHMGroom.cpp:843
Calendrier
Déclaration de la classe Calendrier.
Definition: Calendrier.h:38
QMainWindow
IHMGroom::afficherDeconnexionGroom
void afficherDeconnexionGroom(QString nomPeripherique, QString adressePeripherique)
Méthode qui permet d'afficher l'état "déconnecté".
Definition: IHMGroom.cpp:504
IHMGroom::barreEtat
QStatusBar * barreEtat
Pointeur vers la classe QStatusBar.
Definition: IHMGroom.h:136
IHMGroom::rechargerListeOccupants
void rechargerListeOccupants()
Recharge la liste d'occupants.
Definition: IHMGroom.cpp:875
IHMGroom::iconeSysteme
QSystemTrayIcon * iconeSysteme
L'icône de l'application pour la barre système.
Definition: IHMGroom.h:126
IHMGroom::ouvrirFichier
void ouvrirFichier()
Méthode qui permet l'ouverture d'un fichier de type .ics.
Definition: IHMGroom.cpp:992
IHMGroom::actionQuitter
QAction * actionQuitter
L'action quitter l'application.
Definition: IHMGroom.h:131
IHMGroom::envoyerEtatAbsent
void envoyerEtatAbsent()
Méthode qui permet d'envoyer l'état absent vers le système groom.
Definition: IHMGroom.cpp:587
IHMGroom::acquitterNotification
void acquitterNotification()
Acquitter les notifications.
Definition: IHMGroom.cpp:151
IHMGroom::IHMGroom
IHMGroom(QWidget *parent=nullptr)
Constructeur de la classe IHMGroom.
Definition: IHMGroom.cpp:19
IHMGroom::detecterGroom
void detecterGroom(QString nomPeripherique, QString adressePeripherique)
Méthode déclenchée lorsque le module Bluetooth GROOM est détectée.
Definition: IHMGroom.cpp:410
IHMGroom::envoyerEtatPresence
void envoyerEtatPresence()
Méthode qui permet d'envoyer l'état du capteur de présence vers le système groom (le mode)
Definition: IHMGroom.cpp:734
IHMGroom::menuIconeSysteme
QMenu * menuIconeSysteme
Le menu de l'application.
Definition: IHMGroom.h:127
IHMGroom::chargerParametres
void chargerParametres()
Charge les paramètres dans le fichier .ini de l'application Groom.
Definition: IHMGroom.cpp:783
IHMGroom::envoyerEtatOccupe
void envoyerEtatOccupe()
Méthode qui permet d'envoyer l'état occupé vers le système groom.
Definition: IHMGroom.cpp:629
CommunicationGroom
Definition: CommunicationGroom.h:94
IHMGroom::envoyerEtatEntrer
void envoyerEtatEntrer()
Méthode qui permet d'envoyer l'état entrer vers le système groom.
Definition: IHMGroom.cpp:671
IHMGroom::networkManager
QNetworkAccessManager networkManager
Objet pour la classe QNetworkAccessManager.
Definition: IHMGroom.h:133
IHMGroom::communicationGroom
CommunicationGroom * communicationGroom
Pointeur vers l'objet communicationGroom de la classe CommunicationGroom.
Definition: IHMGroom.h:119
IHMGroom::indexOccupant
int indexOccupant
Index de l'occupant courant.
Definition: IHMGroom.h:118
IHMGroom::actualiserIndicateurs
void actualiserIndicateurs(int Groom, int Sonnette, int Presence, int ModeSonnette, int ModePresence)
Méthode qui permet d'actualiser les indicateurs d'états dans l'IHM (labels)
Definition: IHMGroom.cpp:896
IHMGroom::selectionnerOccupant
void selectionnerOccupant(int index)
Méthode qui permet de sélectionner un occupant.
Definition: IHMGroom.cpp:301
IHMGroom::networkReply
QNetworkReply * networkReply
Pointeur vers la classe QNetworkReply.
Definition: IHMGroom.h:135
IHMGroom::sauvegarderParametres
void sauvegarderParametres()
Sauvegarde les paramètres dans le fichier .ini de l'application Groom.
Definition: IHMGroom.cpp:817
IHMGroom::supprimerOccupant
void supprimerOccupant()
Méthode qui permet de supprimer un occupant.
Definition: IHMGroom.cpp:389
IHMGroom::effacerEvenement
void effacerEvenement()
Méthode qui permet d'effacer les événements affichés.
Definition: IHMGroom.cpp:1073
IHMGroom::sonnetteOn
QPixmap sonnetteOn
Icône sonnette en mode onn.
Definition: IHMGroom.h:124
IHMGroom::connecterGroom
void connecterGroom()
Méthode qui permet de se connecter au périphérique voulu.
Definition: IHMGroom.cpp:428
ModePresence
@ ModePresence
Definition: CommunicationGroom.h:91
IHMGroom::sonnetteOff
QPixmap sonnetteOff
Icône sonnette en mode off.
Definition: IHMGroom.h:123
IHMGroom::ouvrirURL
void ouvrirURL()
Méthode qui permet l'ouverture d'un URL de type .ics.
Definition: IHMGroom.cpp:1013
EtatGroom
EtatGroom
Définit les différents états du groom.
Definition: CommunicationGroom.h:31
IHMGroom::effacer
void effacer()
Méthode qui appelle les méthodes d'effacement.
Definition: IHMGroom.cpp:1062
IHMGroom::actionMinimiser
QAction * actionMinimiser
L'action minimiser l'application.
Definition: IHMGroom.h:128
IHMGroom::afficherNotification
void afficherNotification(QString titre, QString message, QSystemTrayIcon::MessageIcon icone, int duree=1000)
Méthode qui permet d'afficher une notification système.
Definition: IHMGroom.cpp:134
IHMGroom::calendrier
Calendrier * calendrier
Pointeur vers la classe Calendrier.
Definition: IHMGroom.h:137
ModeSonnette
@ ModeSonnette
Definition: CommunicationGroom.h:90
IHMGroom::deconnecterGroom
void deconnecterGroom()
Méthode qui permet de se déconnecter du périphérique voulu.
Definition: IHMGroom.cpp:439
IHMGroom::selectionnerDate
void selectionnerDate(QDate date)
Méthode qui permet d'accéder et d'afficher les événements (Calendrier)
Definition: IHMGroom.cpp:1083
Ui
Definition: IHMGroom.h:37
Occupant.h
Déclaration de la structure Occupant.
EtatPresence
EtatPresence
Définit les différents états du mode Détecteur de présence.
Definition: CommunicationGroom.h:73
IHMGroom::envoyerEtatLibre
void envoyerEtatLibre()
Méthode qui permet d'envoyer l'état libre vers le système groom.
Definition: IHMGroom.cpp:561
Calendrier.h
Déclaration de la classe Calendrier.
IHMGroom::uiIHMGroom
Ui::IHMGroom * uiIHMGroom
Association vers l'interface utilisateur.
Definition: IHMGroom.h:116
IHMGroom::traiterRequete
void traiterRequete()
Definition: IHMGroom.cpp:262
IHMGroom::effacerEtat
void effacerEtat()
Méthode qui permet d'effacer un état (barre d'état)
Definition: IHMGroom.cpp:1052
IHMGroom::etatSonnette
EtatSonnette etatSonnette
Stockage état sonnette.
Definition: IHMGroom.h:121
IHMGroom::actionRestaurer
QAction * actionRestaurer
L'action restaurer l'application.
Definition: IHMGroom.h:130
IHMGroom::~IHMGroom
~IHMGroom()
Destructeur de la classe IHMGroom.
Definition: IHMGroom.cpp:44
IHMGroom::afficherConnexionGroom
void afficherConnexionGroom(QString nomPeripherique, QString adressePeripherique)
Méthode qui permet d'afficher l'état "connecté".
Definition: IHMGroom.cpp:458
IHMGroom::etatPresence
EtatPresence etatPresence
Stockage état présence.
Definition: IHMGroom.h:122
IHMGroom::envoyerEtatSonnette
void envoyerEtatSonnette()
Méthode qui permet d'envoyer l'état de la sonnette vers le système groom (le mode)
Definition: IHMGroom.cpp:712
IHMGroom::occupants
QVector< Occupant > occupants
Conteneur pour les objets Occupant.
Definition: IHMGroom.h:117
IHMGroom::etatGroom
EtatGroom etatGroom
Stockage état groom.
Definition: IHMGroom.h:120
IHMGroom::envoyerMessageOccupant
void envoyerMessageOccupant()
Méthode qui permet d'envoyer un message de la part de l'occupant vers le système groom.
Definition: IHMGroom.cpp:754
IHMGroom::modifierOccupant
void modifierOccupant()
Méthode qui permet d'ajouter un occupant.
Definition: IHMGroom.cpp:357
CommunicationGroom.h
Déclaration de la classe CommunicationGroom.
IHMGroom::arreterRechercheGroom
void arreterRechercheGroom()
Méthode qui permet d'arrêter la recherche du module groom.
Definition: IHMGroom.cpp:860
IHMGroom::viderFormulaire
void viderFormulaire()
Méthode qui permet de vider le formulaire (Occupant)
Definition: IHMGroom.cpp:980
IHMGroom::requete
QNetworkRequest requete
Objet pour la classe QNetworkRequest.
Definition: IHMGroom.h:134
Evenement.h
Déclaration de la classe Evenement.
IHMGroom::ajouterOccupant
void ajouterOccupant()
Definition: IHMGroom.cpp:320