Projet e-stok  0.2
BTS SNIR LaSalle Avignon 2020
Référence de la classe Ihm

Déclaration de la classe Ihm. Plus de détails...

#include <Ihm.h>

Graphe de collaboration de Ihm:
Collaboration graph

Signaux

void articleSelectionne (QString)
 
void badgeDetecte (QString)
 
void boutonAjouter (bool)
 
void boutonPrendre (bool)
 
void codeBarreObjetScanner (QString)
 
void envoyerQuantite (int)
 
void identifiantDetecte (QString identifiant, QString motDePasse)
 
void rechercheArticle (QString)
 

Fonctions membres publiques

void changerDeFenetre (int fenetre)
 Définition de la méthode changerDeFenetre. Plus de détails...
 
 Ihm (QWidget *parent=nullptr)
 Constructeur de la classe Ihm. Plus de détails...
 
void placerCasier (Casier *casier)
 Définition de la méthode placerCasier. Plus de détails...
 
void placerCasiers (const QVector< Casier *> &casiers, int fenetre)
 
 ~Ihm ()
 Destructeur de la classe Ihm. Plus de détails...
 

Connecteurs privés

void activerRecherche ()
 Définition de la méthode traiterDemandeDeConnexion. Plus de détails...
 
void afficherDemandeQuantite (int)
 définition de la méthode afficherDemandeQuantite Plus de détails...
 
void afficherDonneesArticleSelectionne (QStringList donneesArticle)
 Définition de la méthode afficherDonneesArticleSelectionne. Plus de détails...
 
void afficherDonneesArticleSelectionne (QVector< QStringList > donneesArticle)
 Définition de la méthode afficherDonneesArticleSelectionne. Plus de détails...
 
void afficherErreurArticleInsuffisants ()
 définition de la méthode afficherErreurArticleInsuffisants Plus de détails...
 
void afficherErreurAucunCasierOuvert ()
 définition de la méthode afficherErreurAucunCasierOuvert Plus de détails...
 
void afficherErreurBadge (QString message)
 Définition de la méthode afficherErreurBadge. Plus de détails...
 
void afficherErreurDepassementQuantite ()
 Définition de la méthode afficherErreurDepassementQuantite. Plus de détails...
 
void afficherErreurPasArticleAvecCodeBarre ()
 définition de la méthode afficherErreurPasArticleAvecCodeBarre Plus de détails...
 
void afficherInformationsArmoire (QStringList informationsArmoire)
 Définition de la méthode afficherInformationsArmoire. Plus de détails...
 
void allerFenetreBadge ()
 Définition de la méthode allerFenetreBadge. Plus de détails...
 
void allerFenetreIdentifiant ()
 Définition de la méthode allerFenetreIdentifiant. Plus de détails...
 
void allerFenetreMenu ()
 Définition de la méthode allerFenetreMenu. Plus de détails...
 
void allerFenetreScannerObjet ()
 Définition de la méthode allerFenetreScannerObjet. Plus de détails...
 
void appuyerBoutonAjouter ()
 Définition de la méthode appuyerBoutonAjouter. Plus de détails...
 
void appuyerBoutonPrendre ()
 Définition de la méthode appuyerBoutonPrendre. Plus de détails...
 
void authentifierParBadge ()
 Définition de la méthode authentifierParBadge. Plus de détails...
 
void authentifierParIdentifiant ()
 Définition de la méthode authentifierParIdentifiant. Plus de détails...
 
void changerTexteAjouter ()
 définition de la méthode changerTexteAjouter Plus de détails...
 
void changerTextePrendre ()
 définition de la méthode changerTextePrendre Plus de détails...
 
void connecterClavier1 ()
 définition de la méthode connecterClavier1 Plus de détails...
 
void connecterClavier2 ()
 définition de la méthode connecterClavier2 Plus de détails...
 
void deconnecterUtilisateur ()
 Définition de la méthode deconnecterUtilisateur. Plus de détails...
 
void effacerRechercheArticle ()
 Définition de la méthode effacerRechercheArticle. Plus de détails...
 
void gererPageScanObjet (int numeroCasier, bool etat)
 Définition de la méthode gererPageScanObjet. Plus de détails...
 
void mettreAJourListeArticles (QVector< QStringList > articlesTrouves)
 Définition de la méthode mettreAJourListeArticles. Plus de détails...
 
void rechercherArticle ()
 Définition de la méthode rechercherArticle. Plus de détails...
 
void scannerObjet ()
 Définition de la méthode objetScanner. Plus de détails...
 
void selectionnerArticle (int index)
 Définition de la méthode selectionnerArticle. Plus de détails...
 
void traiterDemandeDeConnexion (bool reponse, QString message)
 Définition de la méthode traiterDemandeDeConnexion. Plus de détails...
 

Fonctions membres privées

void connecterSignauxEtSlots ()
 Définition de la méthode connecterSignauxEtSlots. Plus de détails...
 
void creerListeArticles (const QVector< QStringList > &articlesTrouves)
 Définition de la méthode creerListeArticles. Plus de détails...
 

Attributs privés

Keyboardkeyboard
 association vers le clavier virtuel Plus de détails...
 
Supervisionsupervision
 association vers supervision Plus de détails...
 
Ui::Ihm * ui
 contenu de l'interface utilisateur Plus de détails...
 

Description détaillée

Déclaration de la classe Ihm.

Auteur
Legger Pierre-Antoine
Tranchat Joffrey
Version
1.0
Date
Vendredi 12 Février 2020

Définition à la ligne 68 du fichier Ihm.h.

Documentation des constructeurs et destructeur

◆ Ihm()

Ihm::Ihm ( QWidget parent = nullptr)
explicit

Constructeur de la classe Ihm.

Initialise un objet Ihm

Paramètres
parent

Définition à la ligne 31 du fichier Ihm.cpp.

Références allerFenetreBadge(), connecterSignauxEtSlots(), Supervision::creerCasiers(), Supervision::getInformationsArmoire(), Keyboard::getInstance(), keyboard, supervision, et ui.

31  : QMainWindow(parent), ui(new Ui::Ihm), supervision(new Supervision(this))
32 {
33  ui->setupUi(this);
34  // Suppression des parties inutile du QMainWindow
35  delete ui->menuBar;
36  delete ui->mainToolBar;
37  delete ui->statusBar;
38 
39  // Récupère le clavier virtuelle
40  keyboard = Keyboard::getInstance(nullptr, this);
41 
42  // Affiche la fenêtre par défaut en plein écran
44 
45  // Met la fenêtre en plein écran fenêtrer
46  setWindowFlags(Qt::WindowStaysOnTopHint);
47  setWindowFlags(Qt::FramelessWindowHint);
48  // Pour la Raspberry Pi
49  //showMaximized();
50 
52 
55 }
void creerCasiers()
Définition de la méthode creerCasiers.
Definition: Supervision.cpp:83
void connecterSignauxEtSlots()
Définition de la méthode connecterSignauxEtSlots.
Definition: Ihm.cpp:70
Keyboard * keyboard
association vers le clavier virtuel
Definition: Ihm.h:125
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
static Keyboard * getInstance(QWidget *parent=Q_NULLPTR)
La classe Supervision permet de superviser l&#39;ensemble de l&#39;application.
Definition: Supervision.h:52
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void allerFenetreBadge()
Définition de la méthode allerFenetreBadge.
Definition: Ihm.cpp:239
QStringList getInformationsArmoire()
Définition de la méthode getInformationsArmoire.

◆ ~Ihm()

Ihm::~Ihm ( )

Destructeur de la classe Ihm.

Détruit un objet Ihm

Définition à la ligne 61 du fichier Ihm.cpp.

Références ui.

62 {
63  delete ui;
64 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

Documentation des fonctions membres

◆ activerRecherche

void Ihm::activerRecherche ( )
privateslot

Définition de la méthode traiterDemandeDeConnexion.

traite la demande de connexion

Définition à la ligne 332 du fichier Ihm.cpp.

Références ui.

Référencé par connecterSignauxEtSlots().

333 {
334  if(!ui->lineRecherche->text().isEmpty())
335  ui->pushRecherche->setEnabled(true);
336  else
337  ui->pushRecherche->setEnabled(false);
338 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ afficherDemandeQuantite

void Ihm::afficherDemandeQuantite ( int  quantite)
privateslot

définition de la méthode afficherDemandeQuantite

methode permettant d'effectuer la saisie de la quantité

Paramètres
quantite

Définition à la ligne 533 du fichier Ihm.cpp.

Références envoyerQuantite(), et ui.

Référencé par connecterSignauxEtSlots().

534 {
535  emit envoyerQuantite(quantite);
536  ui->lineEditScanner->setFocus();
537 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void envoyerQuantite(int)

◆ afficherDonneesArticleSelectionne [1/2]

void Ihm::afficherDonneesArticleSelectionne ( QStringList  donneesArticle)
privateslot

Définition de la méthode afficherDonneesArticleSelectionne.

Affiche les données de l'article sélectionnée

Paramètres
donneesArticle

Définition à la ligne 393 du fichier Ihm.cpp.

Références ARTICLE_DISPONIBLE, ARTICLE_QUANTITE, NUMERO_CASIERS, et ui.

394 {
395  ui->labelCasier->setText("Casier :");
396  ui->labelQuantiteNombre->setText(donneesArticle.at(ARTICLE_QUANTITE));
397  ui->labelDisponibleNombre->setText(donneesArticle.at(ARTICLE_DISPONIBLE));
398  ui->labelCasierNombre->setText(donneesArticle.at(NUMERO_CASIERS));
399 }
#define ARTICLE_QUANTITE
Definition: Ihm.h:41
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
#define NUMERO_CASIERS
Definition: Ihm.h:43
#define ARTICLE_DISPONIBLE
Definition: Ihm.h:42

◆ afficherDonneesArticleSelectionne [2/2]

void Ihm::afficherDonneesArticleSelectionne ( QVector< QStringList >  donneesArticle)
privateslot

Définition de la méthode afficherDonneesArticleSelectionne.

Affiche les données des articles sélectionnés

Paramètres
donneesArticle

Définition à la ligne 406 du fichier Ihm.cpp.

Références ARTICLE_DISPONIBLE, ARTICLE_QUANTITE, NUMERO_CASIERS, et ui.

407 {
408  if(donneesArticle.size() <= 0)
409  return;
410  unsigned int articleQuantite = 0;
411  unsigned int articleDisponible = 0;
412  QString casiersQuantite;
413  QString casiersDisponible;
414  QString casiers;
415  int nombreCasiers = donneesArticle.size();
416 
417  for(int i = 0; i < nombreCasiers; i++)
418  {
419  #ifdef DEBUG_IHM
420  qDebug() << Q_FUNC_INFO << "disponible" << (donneesArticle[i].at(ARTICLE_DISPONIBLE)).toUInt();
421  qDebug() << Q_FUNC_INFO << "articleDisponible" << articleDisponible;
422  qDebug() << Q_FUNC_INFO << "quantite" << (donneesArticle[i].at(ARTICLE_QUANTITE)).toUInt();
423  qDebug() << Q_FUNC_INFO << "articleQuantite" << articleQuantite;
424  #endif
425  articleDisponible += (donneesArticle[i].at(ARTICLE_DISPONIBLE)).toUInt();
426  articleQuantite += (donneesArticle[i].at(ARTICLE_QUANTITE)).toUInt();
427 
428  if(i == 0)
429  {
430  casiers = donneesArticle[i].at(NUMERO_CASIERS);
431  casiersDisponible = QString(" (") + donneesArticle[i].at(ARTICLE_DISPONIBLE);
432  casiersQuantite = QString(" (") + donneesArticle[i].at(ARTICLE_QUANTITE);
433  }
434  else
435  {
436  casiers += " et " + donneesArticle[i].at(NUMERO_CASIERS);
437  casiersDisponible += QString(" et ") + donneesArticle[i].at(ARTICLE_DISPONIBLE);
438  casiersQuantite += QString(" et ") + donneesArticle[i].at(ARTICLE_QUANTITE);
439  }
440  }
441  casiersDisponible += QString(")");
442  casiersQuantite += QString(")");
443 
444  ui->labelCasier->setText("Casiers :");
445  ui->labelQuantiteNombre->setText(QString::number(articleQuantite) + casiersQuantite);
446  ui->labelDisponibleNombre->setText(QString::number(articleDisponible) + casiersDisponible);
447  ui->labelCasierNombre->setText(casiers);
448 }
#define ARTICLE_QUANTITE
Definition: Ihm.h:41
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
#define NUMERO_CASIERS
Definition: Ihm.h:43
#define ARTICLE_DISPONIBLE
Definition: Ihm.h:42

◆ afficherErreurArticleInsuffisants

void Ihm::afficherErreurArticleInsuffisants ( )
privateslot

définition de la méthode afficherErreurArticleInsuffisants

methode permettant d'afficher que le nombre d'article est insuffisant

Définition à la ligne 543 du fichier Ihm.cpp.

Références APPLICATION, et MESSAGE_ERREUR_QUANTITE_INSUFFISANTE.

544 {
545  QMessageBox::critical(nullptr, APPLICATION, QString::fromUtf8(MESSAGE_ERREUR_QUANTITE_INSUFFISANTE));
546 }
#define APPLICATION
Definition: Ihm.h:32
#define MESSAGE_ERREUR_QUANTITE_INSUFFISANTE
Definition: Ihm.h:38

◆ afficherErreurAucunCasierOuvert

void Ihm::afficherErreurAucunCasierOuvert ( )
privateslot

définition de la méthode afficherErreurAucunCasierOuvert

methode permettant d'afficher que aucun casier n'est ouvert

Définition à la ligne 552 du fichier Ihm.cpp.

Références APPLICATION, et MESSAGE_ERREUR_AUCUN_CASIER_OUVERT.

553 {
554  QMessageBox::critical(nullptr, APPLICATION, QString::fromUtf8(MESSAGE_ERREUR_AUCUN_CASIER_OUVERT));
555 }
#define MESSAGE_ERREUR_AUCUN_CASIER_OUVERT
Definition: Ihm.h:39
#define APPLICATION
Definition: Ihm.h:32

◆ afficherErreurBadge

void Ihm::afficherErreurBadge ( QString  message)
privateslot

Définition de la méthode afficherErreurBadge.

Affiche ErreurBadge

Paramètres
message

Définition à la ligne 296 du fichier Ihm.cpp.

Références ui.

297 {
298  ui->labelErreurBadge->setText(message);
299 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ afficherErreurDepassementQuantite

void Ihm::afficherErreurDepassementQuantite ( )
privateslot

Définition de la méthode afficherErreurDepassementQuantite.

Affiche que la quantite est dépasser

Définition à la ligne 305 du fichier Ihm.cpp.

Références APPLICATION, et MESSAGE_ERREUR_DEPASSEMENT_QUANTITE.

306 {
307  QMessageBox::critical(nullptr, APPLICATION, QString::fromUtf8(MESSAGE_ERREUR_DEPASSEMENT_QUANTITE));
308 }
#define MESSAGE_ERREUR_DEPASSEMENT_QUANTITE
Definition: Ihm.h:35
#define APPLICATION
Definition: Ihm.h:32

◆ afficherErreurPasArticleAvecCodeBarre

void Ihm::afficherErreurPasArticleAvecCodeBarre ( )
privateslot

définition de la méthode afficherErreurPasArticleAvecCodeBarre

methode permettant d'afficher que aucun article de correspond à ce code-barres

Définition à la ligne 561 du fichier Ihm.cpp.

Références APPLICATION, et MESSAGE_ERREUR_AUCUN_ARTICLE_CODE_BARRE.

562 {
563  QMessageBox::critical(nullptr, APPLICATION, QString::fromUtf8(MESSAGE_ERREUR_AUCUN_ARTICLE_CODE_BARRE));
564 }
#define APPLICATION
Definition: Ihm.h:32
#define MESSAGE_ERREUR_AUCUN_ARTICLE_CODE_BARRE
Definition: Ihm.h:36

◆ afficherInformationsArmoire

void Ihm::afficherInformationsArmoire ( QStringList  informationsArmoire)
privateslot

Définition de la méthode afficherInformationsArmoire.

Affiche les informations de l'armoire

Paramètres
informationsArmoire

Définition à la ligne 176 du fichier Ihm.cpp.

Références TABLE_ARMOIRE_DESCRIPTION, TABLE_ARMOIRE_NB_CASIERS, TABLE_ARMOIRE_NOM, et ui.

177 {
178  #ifdef DEBUG_IHM
179  qDebug() << Q_FUNC_INFO << "informationsArmoire" << informationsArmoire;
180  #endif
181  ui->labelNomArmoire->setText(informationsArmoire.at(TABLE_ARMOIRE_NOM) + " " + informationsArmoire.at(TABLE_ARMOIRE_DESCRIPTION) + " (" + informationsArmoire.at(TABLE_ARMOIRE_NB_CASIERS+1) + ")");
182  ui->labelNbCasiers->setText(informationsArmoire.at(TABLE_ARMOIRE_NB_CASIERS));
183 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ allerFenetreBadge

void Ihm::allerFenetreBadge ( )
privateslot

Définition de la méthode allerFenetreBadge.

Permet de se rendre à la fenêtre badge

Définition à la ligne 239 du fichier Ihm.cpp.

Références changerDeFenetre(), FENETRE_BADGE, et ui.

Référencé par connecterSignauxEtSlots(), et Ihm().

240 {
242  ui->lineBadge->setFocus();
243 }
Fenêtre d&#39;authentifiaction par badge.
Definition: Ihm.h:26
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void changerDeFenetre(int fenetre)
Définition de la méthode changerDeFenetre.
Definition: Ihm.cpp:106

◆ allerFenetreIdentifiant

void Ihm::allerFenetreIdentifiant ( )
privateslot

Définition de la méthode allerFenetreIdentifiant.

Permet de se rendre à la fenêtre identifiant

Définition à la ligne 250 du fichier Ihm.cpp.

Références changerDeFenetre(), FENETRE_IDENTIFIANT, keyboard, Keyboard::setLineEdit(), et ui.

Référencé par connecterSignauxEtSlots().

251 {
252  ui->lineMotDePasse->setEchoMode(QLineEdit::Password);
253  keyboard->setLineEdit(ui->lineIdentifiant);
255  ui->lineIdentifiant->setFocus();
256 }
Keyboard * keyboard
association vers le clavier virtuel
Definition: Ihm.h:125
void setLineEdit(QLineEdit *lineEdit)
Definition: Keyboard.cpp:123
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void changerDeFenetre(int fenetre)
Définition de la méthode changerDeFenetre.
Definition: Ihm.cpp:106
Fenêtre d&#39;authentifiaction par identifiant.
Definition: Ihm.h:27

◆ allerFenetreMenu

void Ihm::allerFenetreMenu ( )
privateslot

Définition de la méthode allerFenetreMenu.

Permet de se rendre à la fenêtre menu

Définition à la ligne 262 du fichier Ihm.cpp.

Références changerDeFenetre(), FENETRE_MENU, Supervision::getCasiers(), keyboard, placerCasiers(), rechercheArticle(), Keyboard::setLineEdit(), supervision, et ui.

Référencé par connecterSignauxEtSlots(), et traiterDemandeDeConnexion().

263 {
265  // Initialisation widgets
267  keyboard->setLineEdit(ui->lineRecherche);
268  ui->pushRecherche->setFocus();
269  ui->comboBoxArticle->clear();
270  ui->comboBoxArticle->addItem("Sélectionner un article");
271  ui->pushRecherche->setEnabled(false);
272  ui->lineRecherche->setFocus();
273  // Lance une recherche de tous les articles
274  emit rechercheArticle("");
275 }
void rechercheArticle(QString)
Keyboard * keyboard
association vers le clavier virtuel
Definition: Ihm.h:125
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
void setLineEdit(QLineEdit *lineEdit)
Definition: Keyboard.cpp:123
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void placerCasiers(const QVector< Casier *> &casiers, int fenetre)
Definition: Ihm.cpp:132
Fenêtre ???
Definition: Ihm.h:28
void changerDeFenetre(int fenetre)
Définition de la méthode changerDeFenetre.
Definition: Ihm.cpp:106
QVector< Casier * > getCasiers()
Définition de la méthode getCasiers.

◆ allerFenetreScannerObjet

void Ihm::allerFenetreScannerObjet ( )
privateslot

Définition de la méthode allerFenetreScannerObjet.

Permet de se rendre à la fenêtre scannerObjet

Définition à la ligne 281 du fichier Ihm.cpp.

Références changerDeFenetre(), FENETRE_SCANNER_OBJET, Supervision::getCasiers(), placerCasiers(), supervision, et ui.

Référencé par connecterSignauxEtSlots().

282 {
284  ui->pushScannerPrendre->setEnabled(false);
285  ui->pushScannerAjouter->setEnabled(false);
286  ui->spinBoxQuantiteScan->setValue(0);
287  ui->spinBoxQuantiteScan->setEnabled(false);
289 }
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void placerCasiers(const QVector< Casier *> &casiers, int fenetre)
Definition: Ihm.cpp:132
Fenêtre pour scan d&#39;un objet.
Definition: Ihm.h:29
void changerDeFenetre(int fenetre)
Définition de la méthode changerDeFenetre.
Definition: Ihm.cpp:106
QVector< Casier * > getCasiers()
Définition de la méthode getCasiers.

◆ appuyerBoutonAjouter

void Ihm::appuyerBoutonAjouter ( )
privateslot

Définition de la méthode appuyerBoutonAjouter.

slot pour quand l'on appuie sur le bouton ajouter

Définition à la ligne 486 du fichier Ihm.cpp.

Références boutonAjouter(), et ui.

Référencé par connecterSignauxEtSlots().

487 {
488  ui->labelScannerObjet->setText("Vous pouvez indiquer une quantité");
489  ui->lineEditScanner->setFocus();
490  emit boutonAjouter(true);
491 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void boutonAjouter(bool)

◆ appuyerBoutonPrendre

void Ihm::appuyerBoutonPrendre ( )
privateslot

Définition de la méthode appuyerBoutonPrendre.

slot pour quand l'on appuie sur le bouton prendre

Définition à la ligne 475 du fichier Ihm.cpp.

Références boutonPrendre(), et ui.

Référencé par connecterSignauxEtSlots().

476 {
477  ui->labelScannerObjet->setText("Vous pouvez indiquer une quantité");
478  ui->lineEditScanner->setFocus();
479  emit boutonPrendre(false);
480 }
void boutonPrendre(bool)
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ articleSelectionne

void Ihm::articleSelectionne ( QString  )
signal

◆ authentifierParBadge

void Ihm::authentifierParBadge ( )
privateslot

Définition de la méthode authentifierParBadge.

Récupère le badge et l'envoie à la méthode permettant de traiter le badge

Définition à la ligne 189 du fichier Ihm.cpp.

Références badgeDetecte(), et ui.

Référencé par connecterSignauxEtSlots().

190 {
191  ui->labelErreurBadge->clear();
192 
193  if(ui->lineBadge->text() != "")
194  {
195  #ifdef DEBUG_IHM
196  qDebug() << Q_FUNC_INFO << "Contenu brut badge" << ui->lineBadge->text();
197  #endif
198 
199  QString trameBadge = ui->lineBadge->text();
200  ui->lineBadge->clear();
201  emit badgeDetecte(trameBadge);
202  }
203 }
void badgeDetecte(QString)
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ authentifierParIdentifiant

void Ihm::authentifierParIdentifiant ( )
privateslot

Définition de la méthode authentifierParIdentifiant.

Récupère les identifiants et l'envoie à la méthode permettant de s'authentifier par identifiant

Définition à la ligne 209 du fichier Ihm.cpp.

Références identifiantDetecte(), et ui.

Référencé par connecterSignauxEtSlots().

210 {
211  if(ui->lineIdentifiant->text() != "")
212  {
213  #ifdef DEBUG_IHM
214  qDebug() << Q_FUNC_INFO << "Identifiant" << ui->lineIdentifiant->text() << "MotDePasse" << ui->lineMotDePasse->text();
215  #endif
216 
217  QString identifiant = ui->lineIdentifiant->text();
218  QString motDePasse = ui->lineMotDePasse->text();
219  ui->lineIdentifiant->clear();
220  ui->lineMotDePasse->clear();
221  emit identifiantDetecte(identifiant, motDePasse);
222  }
223 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void identifiantDetecte(QString identifiant, QString motDePasse)

◆ badgeDetecte

void Ihm::badgeDetecte ( QString  )
signal

Référencé par authentifierParBadge().

◆ boutonAjouter

void Ihm::boutonAjouter ( bool  )
signal

Référencé par appuyerBoutonAjouter().

◆ boutonPrendre

void Ihm::boutonPrendre ( bool  )
signal

Référencé par appuyerBoutonPrendre().

◆ changerDeFenetre()

void Ihm::changerDeFenetre ( int  fenetre)

Définition de la méthode changerDeFenetre.

Permet de changer de fenêtre sur l'ihm

Paramètres
fenetre

Définition à la ligne 106 du fichier Ihm.cpp.

Références ui.

Référencé par allerFenetreBadge(), allerFenetreIdentifiant(), allerFenetreMenu(), allerFenetreScannerObjet(), et deconnecterUtilisateur().

107 {
108  ui->stackedWidget->setCurrentIndex(fenetre);
109 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ changerTexteAjouter

void Ihm::changerTexteAjouter ( )
privateslot

définition de la méthode changerTexteAjouter

slot pour changer le texte afficher quand on appuie sur le bouton ajouter

Définition à la ligne 506 du fichier Ihm.cpp.

Références ui.

Référencé par connecterSignauxEtSlots().

507 {
508  ui->labelScannerObjet->setText("Veuillez scanner l'objet à ajouter");
509 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ changerTextePrendre

void Ihm::changerTextePrendre ( )
privateslot

définition de la méthode changerTextePrendre

slot pour changer le texte afficher quand on appuie sur le bouton prendre

Définition à la ligne 497 du fichier Ihm.cpp.

Références ui.

Référencé par connecterSignauxEtSlots().

498 {
499  ui->labelScannerObjet->setText("Veuillez scanner l'objet à prendre");
500 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ codeBarreObjetScanner

void Ihm::codeBarreObjetScanner ( QString  )
signal

Référencé par scannerObjet().

◆ connecterClavier1

void Ihm::connecterClavier1 ( )
privateslot

définition de la méthode connecterClavier1

methode permettant de connecter le clavier

Définition à la ligne 599 du fichier Ihm.cpp.

Références keyboard, Keyboard::setLineEdit(), et ui.

Référencé par connecterSignauxEtSlots().

600 {
601  keyboard->setLineEdit(ui->lineMotDePasse);
602 }
Keyboard * keyboard
association vers le clavier virtuel
Definition: Ihm.h:125
void setLineEdit(QLineEdit *lineEdit)
Definition: Keyboard.cpp:123
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ connecterClavier2

void Ihm::connecterClavier2 ( )
privateslot

définition de la méthode connecterClavier2

methode permettant de connecter le clavier

Définition à la ligne 608 du fichier Ihm.cpp.

Références keyboard, Keyboard::setLineEdit(), et ui.

Référencé par connecterSignauxEtSlots().

609 {
610  keyboard->setLineEdit(ui->lineIdentifiant);
611 }
Keyboard * keyboard
association vers le clavier virtuel
Definition: Ihm.h:125
void setLineEdit(QLineEdit *lineEdit)
Definition: Keyboard.cpp:123
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ connecterSignauxEtSlots()

void Ihm::connecterSignauxEtSlots ( )
private

Définition de la méthode connecterSignauxEtSlots.

Etablie la connexion entre les diffrents signaux et slots

Définition à la ligne 70 du fichier Ihm.cpp.

Références activerRecherche(), afficherDemandeQuantite(), allerFenetreBadge(), allerFenetreIdentifiant(), allerFenetreMenu(), allerFenetreScannerObjet(), appuyerBoutonAjouter(), appuyerBoutonPrendre(), authentifierParBadge(), authentifierParIdentifiant(), changerTexteAjouter(), changerTextePrendre(), connecterClavier1(), connecterClavier2(), deconnecterUtilisateur(), rechercherArticle(), scannerObjet(), et ui.

Référencé par Ihm().

71 {
72  // Les deux types d'authentifiaction
73  connect(ui->lineBadge, SIGNAL(editingFinished()), this, SLOT(authentifierParBadge()));
74  connect(ui->pushSeConnecter, SIGNAL(clicked()), this, SLOT(authentifierParIdentifiant()));
75  connect(ui->pushSeDeconnecter, SIGNAL(clicked()), this, SLOT(deconnecterUtilisateur()));
76  connect(ui->lineIdentifiant, SIGNAL(editingFinished()), this, SLOT(connecterClavier1()));
77  connect(ui->lineMotDePasse, SIGNAL(editingFinished()), this, SLOT(connecterClavier2()));
78 
79  //fenêtre scanner un objet
80  connect(ui->pushScannerObjet, SIGNAL(clicked()), this, SLOT(allerFenetreScannerObjet()));
81  connect(ui->pushScannerSeDeconnecter, SIGNAL(clicked()), this, SLOT(deconnecterUtilisateur()));
82  connect(ui->pushScannerPageStock, SIGNAL(clicked()), this, SLOT(allerFenetreMenu()));
83 
84  // Les deux fenêtres d'authentifiaction
85  connect(ui->pushParIdentifiant, SIGNAL(clicked()), this, SLOT(allerFenetreIdentifiant()));
86  connect(ui->pushParBadge, SIGNAL(clicked()), this, SLOT(allerFenetreBadge()));
87 
88  // Article
89  connect(ui->lineRecherche, SIGNAL(textChanged(QString)), this, SLOT(activerRecherche()));
90  connect(ui->pushRecherche, SIGNAL(clicked(bool)), this, SLOT(rechercherArticle()));
91 
92  // CodeBarre
93  connect(ui->pushScannerPrendre, SIGNAL(clicked()), this, SLOT(appuyerBoutonPrendre()));
94  connect(ui->pushScannerPrendre, SIGNAL(clicked()), this, SLOT(changerTextePrendre()));
95  connect(ui->pushScannerAjouter, SIGNAL(clicked()), this, SLOT(appuyerBoutonAjouter()));
96  connect(ui->pushScannerAjouter, SIGNAL(clicked()), this, SLOT(changerTexteAjouter()));
97  connect(ui->spinBoxQuantiteScan, SIGNAL(valueChanged(int)), this, SLOT(afficherDemandeQuantite(int)));
98  connect(ui->lineEditScanner, SIGNAL(editingFinished()), this, SLOT(scannerObjet()));
99 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void rechercherArticle()
Définition de la méthode rechercherArticle.
Definition: Ihm.cpp:344
void activerRecherche()
Définition de la méthode traiterDemandeDeConnexion.
Definition: Ihm.cpp:332
void allerFenetreScannerObjet()
Définition de la méthode allerFenetreScannerObjet.
Definition: Ihm.cpp:281
void appuyerBoutonPrendre()
Définition de la méthode appuyerBoutonPrendre.
Definition: Ihm.cpp:475
void appuyerBoutonAjouter()
Définition de la méthode appuyerBoutonAjouter.
Definition: Ihm.cpp:486
void connecterClavier1()
définition de la méthode connecterClavier1
Definition: Ihm.cpp:599
void afficherDemandeQuantite(int)
définition de la méthode afficherDemandeQuantite
Definition: Ihm.cpp:533
void changerTextePrendre()
définition de la méthode changerTextePrendre
Definition: Ihm.cpp:497
void authentifierParBadge()
Définition de la méthode authentifierParBadge.
Definition: Ihm.cpp:189
void allerFenetreBadge()
Définition de la méthode allerFenetreBadge.
Definition: Ihm.cpp:239
void scannerObjet()
Définition de la méthode objetScanner.
Definition: Ihm.cpp:515
void authentifierParIdentifiant()
Définition de la méthode authentifierParIdentifiant.
Definition: Ihm.cpp:209
void allerFenetreMenu()
Définition de la méthode allerFenetreMenu.
Definition: Ihm.cpp:262
void connecterClavier2()
définition de la méthode connecterClavier2
Definition: Ihm.cpp:608
void allerFenetreIdentifiant()
Définition de la méthode allerFenetreIdentifiant.
Definition: Ihm.cpp:250
void deconnecterUtilisateur()
Définition de la méthode deconnecterUtilisateur.
Definition: Ihm.cpp:229
void changerTexteAjouter()
définition de la méthode changerTexteAjouter
Definition: Ihm.cpp:506

◆ creerListeArticles()

void Ihm::creerListeArticles ( const QVector< QStringList > &  articlesTrouves)
private

Définition de la méthode creerListeArticles.

Crée la liste déroulante contenant les articles issus d'une recherche

Paramètres
articlesTrouves

Définition à la ligne 455 du fichier Ihm.cpp.

Références selectionnerArticle(), et ui.

Référencé par mettreAJourListeArticles().

456 {
457  disconnect(ui->comboBoxArticle, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerArticle(int)));
458  ui->comboBoxArticle->clear();
459 
460  ui->comboBoxArticle->addItem("Sélectionner un article");
461  for(int i = 0 ; i < articlesTrouves.size() ; i++)
462  {
463  if(ui->comboBoxArticle->findText(articlesTrouves[i].at(2)) == -1)
464  {
465  ui->comboBoxArticle->addItem(articlesTrouves[i].at(2));
466  }
467  }
468  connect(ui->comboBoxArticle, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionnerArticle(int)));
469 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void selectionnerArticle(int index)
Définition de la méthode selectionnerArticle.
Definition: Ihm.cpp:379

◆ deconnecterUtilisateur

void Ihm::deconnecterUtilisateur ( )
privateslot

Définition de la méthode deconnecterUtilisateur.

Permet de déconnecter l'utilisateur

Définition à la ligne 229 du fichier Ihm.cpp.

Références changerDeFenetre(), Supervision::deconnecterUtilisateur(), FENETRE_BADGE, et supervision.

Référencé par connecterSignauxEtSlots().

230 {
233 }
Fenêtre d&#39;authentifiaction par badge.
Definition: Ihm.h:26
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
void changerDeFenetre(int fenetre)
Définition de la méthode changerDeFenetre.
Definition: Ihm.cpp:106
void deconnecterUtilisateur()
Méthode qui permet la déconnexion de l&#39;utilisateur.
Definition: Supervision.cpp:69

◆ effacerRechercheArticle

void Ihm::effacerRechercheArticle ( )
privateslot

Définition de la méthode effacerRechercheArticle.

efface la recherche de l'article

Définition à la ligne 354 du fichier Ihm.cpp.

Références ui.

Référencé par mettreAJourListeArticles().

355 {
356  ui->lineRecherche->setText("");
357 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ envoyerQuantite

void Ihm::envoyerQuantite ( int  )
signal

Référencé par afficherDemandeQuantite().

◆ gererPageScanObjet

void Ihm::gererPageScanObjet ( int  numeroCasier,
bool  etat 
)
privateslot

Définition de la méthode gererPageScanObjet.

méthode qui permet de gérer la possibilité de scanner un objet

Paramètres
numeroCasier
etat

Définition à la ligne 572 du fichier Ihm.cpp.

Références ui.

573 {
574  if(etat)
575  {
576  ui->labelScannerObjet->setText("Veuillez prendre ou ajouter un objet");
577  ui->pushScannerPrendre->setEnabled(true);
578  ui->pushScannerAjouter->setEnabled(true);
579  ui->spinBoxQuantiteScan->setEnabled(true);
580  ui->spinBoxQuantiteScan->setValue(1); // par défaut
581  ui->lineEditScanner->setEnabled(true);
582  ui->lineEditScanner->setFocus();
583  }
584  else
585  {
586  ui->labelScannerObjet->setText("Veuillez ouvrir un casier");
587  ui->pushScannerPrendre->setEnabled(false);
588  ui->pushScannerAjouter->setEnabled(false);
589  ui->spinBoxQuantiteScan->setValue(0);
590  ui->spinBoxQuantiteScan->setEnabled(false);
591  ui->lineEditScanner->setEnabled(false);
592  }
593 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123

◆ identifiantDetecte

void Ihm::identifiantDetecte ( QString  identifiant,
QString  motDePasse 
)
signal

Référencé par authentifierParIdentifiant().

◆ mettreAJourListeArticles

void Ihm::mettreAJourListeArticles ( QVector< QStringList >  articlesTrouves)
privateslot

Définition de la méthode mettreAJourListeArticles.

Mets à jour la liste des articles

Paramètres
articlesTrouves

Définition à la ligne 364 du fichier Ihm.cpp.

Références creerListeArticles(), et effacerRechercheArticle().

365 {
366  #ifdef DEBUG_IHM
367  qDebug() << Q_FUNC_INFO << "articlesTrouves" << articlesTrouves.size() << articlesTrouves;
368  #endif
369  creerListeArticles(articlesTrouves);
370 
372 }
void effacerRechercheArticle()
Définition de la méthode effacerRechercheArticle.
Definition: Ihm.cpp:354
void creerListeArticles(const QVector< QStringList > &articlesTrouves)
Définition de la méthode creerListeArticles.
Definition: Ihm.cpp:455

◆ placerCasier()

void Ihm::placerCasier ( Casier casier)

Définition de la méthode placerCasier.

gère l'affichage des casiers en fonction du nombre de ces derniers

Paramètres
casier

Définition à la ligne 116 du fichier Ihm.cpp.

Références Casier::getNumero(), et ui.

117 {
118  // pair/impair -> droite/gauche ?
119  int numero = casier->getNumero() - 1;
120  if((numero+1)%2)
121  {
122  ui->gridLayoutCasiers->addWidget(casier, numero/2, 0, 1, 1);
123  ui->gridLayoutCasiersScan->addWidget(casier, numero/2, 0, 1, 1);
124  }
125  else
126  {
127  ui->gridLayoutCasiers->addWidget(casier, numero/2, 1, 1, 1);
128  ui->gridLayoutCasiersScan->addWidget(casier, numero/2, 1, 1, 1);
129  }
130 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
int getNumero() const
Définition de la méthode getNumero.
Definition: Casier.cpp:59

◆ placerCasiers()

void Ihm::placerCasiers ( const QVector< Casier *> &  casiers,
int  fenetre 
)

Définition à la ligne 132 du fichier Ihm.cpp.

Références FENETRE_MENU, FENETRE_SCANNER_OBJET, Casier::getNumero(), et ui.

Référencé par allerFenetreMenu(), allerFenetreScannerObjet(), et Supervision::creerCasiers().

133 {
134  for(int i=0; i < casiers.size(); i++)
135  {
136  Casier* casier = casiers[i];
137 
138  // pair/impair -> droite/gauche ?
139  int numero = casier->getNumero() - 1;
140  if((numero+1)%2)
141  {
142  switch (fenetre)
143  {
144  case FENETRE_MENU:
145  ui->gridLayoutCasiers->addWidget(casier, numero/2, 0, 1, 1);
146  break;
148  ui->gridLayoutCasiersScan->addWidget(casier, numero/2, 0, 1, 1);
149  break;
150  default:
151  break;
152  }
153  }
154  else
155  {
156  switch (fenetre)
157  {
158  case FENETRE_MENU:
159  ui->gridLayoutCasiers->addWidget(casier, numero/2, 1, 1, 1);
160  break;
162  ui->gridLayoutCasiersScan->addWidget(casier, numero/2, 1, 1, 1);
163  break;
164  default:
165  break;
166  }
167  }
168  }
169 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
int getNumero() const
Définition de la méthode getNumero.
Definition: Casier.cpp:59
La classe Casier gère le casier contenant des articles.
Definition: Casier.h:34
Fenêtre pour scan d&#39;un objet.
Definition: Ihm.h:29
Fenêtre ???
Definition: Ihm.h:28

◆ rechercheArticle

void Ihm::rechercheArticle ( QString  )
signal

Référencé par allerFenetreMenu().

◆ rechercherArticle

void Ihm::rechercherArticle ( )
privateslot

Définition de la méthode rechercherArticle.

récupère l'article à rechercher et l'envoie à la méthode qui effectue la recherche

Définition à la ligne 344 du fichier Ihm.cpp.

Références Supervision::rechercherArticle(), supervision, et ui.

Référencé par connecterSignauxEtSlots().

345 {
346  if(!ui->lineRecherche->text().isEmpty())
347  supervision->rechercherArticle(ui->lineRecherche->text());
348 }
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void rechercherArticle(QString recherche)
Définition de la méthode rechercherArticle.

◆ scannerObjet

void Ihm::scannerObjet ( )
privateslot

Définition de la méthode objetScanner.

slot pour quand un code barre a était scanné

Définition à la ligne 515 du fichier Ihm.cpp.

Références codeBarreObjetScanner(), et ui.

Référencé par connecterSignauxEtSlots().

516 {
517  QString codeBarreObjet = ui->lineEditScanner->text();
518  qDebug() << Q_FUNC_INFO << "codeBarreObjet" << codeBarreObjet;
519 
520  if(!ui->lineEditScanner->text().isEmpty())
521  {
522  emit codeBarreObjetScanner(codeBarreObjet);
523  }
524 
525  ui->lineEditScanner->setText("");
526 }
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void codeBarreObjetScanner(QString)

◆ selectionnerArticle

void Ihm::selectionnerArticle ( int  index)
privateslot

Définition de la méthode selectionnerArticle.

selectionne un Article

Paramètres
index

Définition à la ligne 379 du fichier Ihm.cpp.

Références Supervision::selectionnerArticle(), supervision, et ui.

Référencé par creerListeArticles().

380 {
381  #ifdef DEBUG_IHM
382  qDebug() << Q_FUNC_INFO << "index" << index << ui->comboBoxArticle->currentText();
383  #endif
384 
385  supervision->selectionnerArticle(ui->comboBoxArticle->currentText());
386 }
Supervision * supervision
association vers supervision
Definition: Ihm.h:124
Ui::Ihm * ui
contenu de l&#39;interface utilisateur
Definition: Ihm.h:123
void selectionnerArticle(QString nomArticle)
Définition de la méthode selectionnerArticle.

◆ traiterDemandeDeConnexion

void Ihm::traiterDemandeDeConnexion ( bool  reponse,
QString  message 
)
privateslot

Définition de la méthode traiterDemandeDeConnexion.

traite la demande de connexion

Paramètres
reponse
message

Définition à la ligne 316 du fichier Ihm.cpp.

Références allerFenetreMenu(), et APPLICATION.

317 {
318  if(reponse)
319  {
321  }
322  else
323  {
324  QMessageBox::critical(nullptr, APPLICATION, message);
325  }
326 }
#define APPLICATION
Definition: Ihm.h:32
void allerFenetreMenu()
Définition de la méthode allerFenetreMenu.
Definition: Ihm.cpp:262

Documentation des données membres

◆ keyboard

Keyboard* Ihm::keyboard
private

association vers le clavier virtuel

Définition à la ligne 125 du fichier Ihm.h.

Référencé par allerFenetreIdentifiant(), allerFenetreMenu(), connecterClavier1(), connecterClavier2(), et Ihm().

◆ supervision

Supervision* Ihm::supervision
private

association vers supervision

Définition à la ligne 124 du fichier Ihm.h.

Référencé par allerFenetreMenu(), allerFenetreScannerObjet(), deconnecterUtilisateur(), Ihm(), rechercherArticle(), et selectionnerArticle().

◆ ui


La documentation de cette classe a été générée à partir des fichiers suivants :