Ekawa  1.0
BTS SNIR LaSalle Avignon 2021
Référence de la classe com.example.ekawa.Ihm

Déclaration de l'activité principale de l'application Ekawa. Plus de détails...

Graphe de collaboration de com.example.ekawa.Ihm:
Collaboration graph

Classes

class  AdaptateurProgrammer
 Déclaration de l'adapteur des programmations. Plus de détails...
 
class  AdaptateurSelection
 Déclaration de l'adaptateur de liste de capsules et boissons. Plus de détails...
 

Fonctions membres publiques

void actualiserIndicateurs ()
 Méthode qui permet de mettre à jour les indicateurs (bluetooth, tasse, bac, eau) Plus de détails...
 
void actualiserPageInformations ()
 Méthode qui permet d'actualiser la page "Informations". Plus de détails...
 
void actualiserPageParametres ()
 Méthode qui permet d'actualiser la page "Parametres". Plus de détails...
 
void actualiserPageProgrammer ()
 Méthode qui permet d'actualiser la page "Programmer". Plus de détails...
 
void actualiserSelection ()
 Méthode qui permet de mettre à jour la liste des sélections des capsules. Plus de détails...
 
void afficherMessage (String texte)
 Méthode qui permet d'afficher des messages. Plus de détails...
 
void afficherMessageAvecRetard (String texte, int temps)
 Méthode qui permet d'afficher des messages apres un retard. Plus de détails...
 
void envoyerNotification (Programmation programmation)
 Méthode qui permet d'envoyer une notification. Plus de détails...
 
void onRequestPermissionsResult (int requestCode, String permissions[], int[] grantResults)
 Méthode qui permet de gérer la réponse à la demande de permission location. Plus de détails...
 

Fonctions membres protégées

void onCreate (Bundle savedInstanceState)
 Méthode appelée à la création de l'activité Plus de détails...
 
void onDestroy ()
 Méthode appelée à la destruction de l'application (après onStop() et détruite par le système Android) Plus de détails...
 
void onPause ()
 Méthode appelée après qu'une boîte de dialogue s'est affichée (on reprend sur un onResume()) ou avant onStop() (activité plus visible) Plus de détails...
 
void onResume ()
 Méthode appelée après onStart() ou après onPause() Plus de détails...
 
void onStart ()
 Méthode appelée au démarrage après le onCreate() ou un restart après un onStop() Plus de détails...
 
void onStop ()
 Méthode appelée lorsque l'activité n'est plus visible. Plus de détails...
 

Fonctions membres privées

void demanderPermissions ()
 Méthode qui permet de demander le droit de permission location. Plus de détails...
 
void initialiserBoutonLancerCafe ()
 Méthode qui permet d'initialiser le bouton principal de l'application (pour lancer le café) Plus de détails...
 
void initialiserBoutonsIndicateurs ()
 Méthode qui permet d'initialiser les indicateurs (bluetooth, tasse, bac, eau) Plus de détails...
 
void initialiserFenetreAProposParametres ()
 Méthode qui permet d'initialiser la fenêtre "A propos". Plus de détails...
 
void initialiserFenetreProgrammer ()
 Méthode qui permet d'initialiser la fenêtre volante "Programmer". Plus de détails...
 
void initialiserFenetreReinitialiserParametres ()
 Méthode qui permet d'initialiser la fenêtre "Réinitialiser paramètres". Plus de détails...
 
void initialiserMenu ()
 Méthode qui permet d'initialiser le menu (page "informations", page "programmer", page "paramètres") Plus de détails...
 
void initialiserNotifications ()
 Méthode qui permet d'initialiser la fenetre "A propos". Plus de détails...
 
void initialiserPageInformations ()
 Méthode qui permet d'initialiser la page "Informations". Plus de détails...
 
void initialiserPageParametres ()
 Méthode qui permet d'initialiser la page "Parametres". Plus de détails...
 
void initialiserPageProgrammer ()
 Méthode qui permet d'initialiser la page "Programmer". Plus de détails...
 
void initialiserSelectionBoisson ()
 Méthode qui permet d'initialiser la liste de sélection des boissons. Plus de détails...
 
void initialiserSelectionCapsule ()
 Méthode qui permet d'initialiser la liste de sélection des capsules. Plus de détails...
 
void reinitialiserListe (ListView liste)
 Méthode qui permet de réinitialiser une liste. Plus de détails...
 

Attributs privés

View apparenceFenetreProgrammer
 L'apparence de la fenêtre Programmer. Plus de détails...
 
View apparenceFenetreReinitialiserParametres
 L'apparence de la fenêtre réinitialiser informations des paramètres. Plus de détails...
 
ProgressBar barNiveauEau
 Indicateur du niveau d'eau (bar de progression) Plus de détails...
 
ProgressBar barNiveauEauFond
 Indicateur du niveau d'eau en fond. Plus de détails...
 
int boissonProgrammation = 0
 La boisson de la programmation. Plus de détails...
 
Button boutonAPropos
 Bouton A propos. Plus de détails...
 
ImageButton boutonBac
 Bouton indicateur du bac. Plus de détails...
 
ImageButton boutonBluetooth
 Bouton indicateur du Bluetooth. Plus de détails...
 
FrameLayout boutonLancerCafe
 Bouton central : lancer un café Plus de détails...
 
LinearLayout boutonPageInformations
 Bouton pour ouvrir/fermer la page Informations. Plus de détails...
 
LinearLayout boutonPageParametres
 Bouton pour ouvrir/fermer la page Parametres. Plus de détails...
 
LinearLayout boutonPageProgrammer
 Bouton pour ouvrir/fermer la page Programmer. Plus de détails...
 
Button boutonReinitialiserInformations
 Bouton de réinitialisation des données de la cafetière. Plus de détails...
 
FrameLayout boutonSelectionBoisson
 Bouton pour ouvrir/fermer la sélection des boissons. Plus de détails...
 
FrameLayout boutonSelectionCapsule
 Bouton pour ouvrir/fermer la sélection des capsules. Plus de détails...
 
ImageButton boutonTasse
 Bouton indicateur de la tasse. Plus de détails...
 
int capsuleProgrammation = 0
 La capsule de la programmation. Plus de détails...
 
EditText dureteEau
 Bouton réinitialiser la dureté de l'eau. Plus de détails...
 
AlertDialog fenetreAProposParametres
 La fenêtre a propos des parametres. Plus de détails...
 
AlertDialog fenetreInformations
 La fenêtre Informations. Plus de détails...
 
AlertDialog fenetreProgrammer
 La fenêtre Programmer. Plus de détails...
 
AlertDialog fenetreReinitialiserParametres
 La fenêtre réinitialiser informations des paramètres. Plus de détails...
 
NotificationManager gestionnaireNotification
 Le gestionnaire de notification. Plus de détails...
 
TimePicker heureProgrammer
 La sélection de l'heure. Plus de détails...
 
Integer [] identifiantsImagesBoisson
 Les images des boissons. Plus de détails...
 
Integer [] identifiantsImagesCapsules
 Les images des capsules. Plus de détails...
 
ImageView imageBoissonActuelle
 Indicateur de la boisson actuellement sélectionnée. Plus de détails...
 
ImageView imageCapsuleActuelle
 Indicateur de la capsule actuellement sélectionnée. Plus de détails...
 
ListView listeBoissonProgrammer
 La liste des boissons de la fenêtre Programmer. Plus de détails...
 
ListView listeCapsuleInformations
 La liste des capsules de la page Informations. Plus de détails...
 
ListView listeCapsuleProgrammer
 La liste des capsules de la fenêtre Programmer. Plus de détails...
 
ListView listeProgrammer
 La liste des programmations. Plus de détails...
 
ListView listeSelectionBoisson
 La liste des boissons sélectionnables. Plus de détails...
 
ListView listeSelectionCapsule
 La liste des capsules sélectionnables. Plus de détails...
 
boolean modeProgrammer
 Le mode de la fenêtre Programmer. Plus de détails...
 
Switch nombreBacVide
 Bouton réinitialiser le nombre de bac vidé au total. Plus de détails...
 
Switch nombreCafe
 Bouton réinitialiser le nombre de cafés effectués au total par la machine de la fenêtre Parametres. Plus de détails...
 
Switch nombreEauRemplie
 Bouton réinitialiser le nombre de réservoir d'eau remplie. Plus de détails...
 
String [] nomsBoisson
 Les noms des boissons. Plus de détails...
 
String [] nomsCapsules
 Les noms des capsules. Plus de détails...
 
LinearLayout pageInformations
 La page Informations. Plus de détails...
 
LinearLayout pageParametres
 La page Parametres. Plus de détails...
 
LinearLayout pageProgrammer
 La page Programmer. Plus de détails...
 
AlertDialog.Builder parametresFenetreAProposParametres
 Les paramètres de la fenêtre a propos des paramètres. Plus de détails...
 
AlertDialog.Builder parametresFenetreInformations
 Les paramètres de la fenêtre Informations. Plus de détails...
 
AlertDialog.Builder parametresFenetreProgrammer
 Les paramètres de la fenêtre Programmer. Plus de détails...
 
AlertDialog.Builder parametresFenetreReinitialiserParametres
 Les paramètres de la fenêtre réinitialiser informations des paramètres. Plus de détails...
 
Notification.Builder parametresNotification
 Le créateur de notification. Plus de détails...
 
int positionProgrammer
 la position de la programmation Plus de détails...
 
Switch programmations
 Bouton réinitialiser les programmations. Plus de détails...
 
EditText qualiteEau
 Bouton réinitialiser la qualité de l'eau. Plus de détails...
 
Switch simulateur
 Bouton réinitialiser le réservoir d'eau, le bac et le magasin. Plus de détails...
 
Spinner spinnerFrequenceProgrammer
 La sélection de la fréquence. Plus de détails...
 
Spinner spinnerJourProgrammer
 La sélection du jour de la semaine. Plus de détails...
 
TextView texteBoissonActuelle
 Le nom de la boisson actuellement sélectionnée. Plus de détails...
 
TextView texteCapsuleActuelle
 Le nom de la capsule actuellement sélectionnée. Plus de détails...
 
TextView texteDureteEau
 Le texte affichant la dureté de l'eau. Plus de détails...
 
TextView texteNbBac
 Le texte affichant le nombre de bac vidé au total. Plus de détails...
 
TextView texteNbCafe
 Le texte affichant le nombre de cafés éffectués au total par la machine. Plus de détails...
 
TextView texteNbCafeJour
 Le texte affichant le nombre de cafés effectués par l'utilisateur du jour. Plus de détails...
 
TextView texteNbEau
 Le texte affichant le nombre de réservoir d'eau remplie. Plus de détails...
 
TextView texteNiveauEau
 Indicateur du niveau d'eau (texte) Plus de détails...
 
TextView texteNomCafetiere
 Le texte affichant le nom de la cafetière connectée. Plus de détails...
 
TextView texteQualiteEau
 Le texte affichant la qualité de l'eau. Plus de détails...
 
boolean visibiliteListeSelectionBoisson = false
 La visibilité de la liste de boisson. Plus de détails...
 
boolean visibiliteListeSelectionCapsule = false
 La visibilité de la liste de capsule. Plus de détails...
 
boolean visibilitePageInformations = false
 La visibilité de la page Informations. Plus de détails...
 
boolean visibilitePageParametres = false
 La visibilité de la page Parametres. Plus de détails...
 
boolean visibilitePageProgrammer = false
 La visibilité de la page Programmer. Plus de détails...
 

Attributs privés statiques

static final String TAG = "_Ihm"
 TAG pour les logs. Plus de détails...
 

Description détaillée

Déclaration de l'activité principale de l'application Ekawa.

Version
1.0

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

Documentation des fonctions membres

◆ actualiserIndicateurs()

com.example.ekawa.Ihm.actualiserIndicateurs ( )

Méthode qui permet de mettre à jour les indicateurs (bluetooth, tasse, bac, eau)

Définition à la ligne 1044 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.AUCUNE_CAPSULE, com.example.ekawa.Cafetiere.informerCapsuleActuelle(), com.example.ekawa.Cafetiere.informerConnexionBluetooth(), com.example.ekawa.Cafetiere.informerEtatBac(), com.example.ekawa.Cafetiere.informerEtatBluetooth(), com.example.ekawa.Cafetiere.informerEtatCafetiere(), com.example.ekawa.Cafetiere.informerEtatTasse(), et com.example.ekawa.Cafetiere.informerNiveauEau().

Référencé par com.example.ekawa.Cafetiere.actualiserCafetiere(), com.example.ekawa.Cafetiere.actualiserIHM(), com.example.ekawa.Cafetiere.changerCapsuleActuelle(), com.example.ekawa.Cafetiere.lancerPreparationCafe(), com.example.ekawa.Ihm.onCreate(), com.example.ekawa.Ihm.onResume(), et com.example.ekawa.Cafetiere.remettreAZero().

1045  {
1046  Log.d(TAG, "actualiserIndicateurs()");
1047  if (cafetiere.informerEtatBluetooth() && cafetiere.informerConnexionBluetooth())
1048  boutonBluetooth.setBackgroundResource(R.drawable.style_bouton_valide);
1049  else if (cafetiere.informerEtatBluetooth() && !cafetiere.informerConnexionBluetooth())
1050  boutonBluetooth.setBackgroundResource(R.drawable.style_bouton_semi_valide);
1051  else
1052  boutonBluetooth.setBackgroundResource(R.drawable.style_bouton_invalide);
1053 
1054  if (cafetiere.informerEtatTasse())
1055  boutonTasse.setBackgroundResource(R.drawable.style_bouton_valide);
1056  else
1057  boutonTasse.setBackgroundResource(R.drawable.style_bouton_invalide);
1058 
1059  if (cafetiere.informerEtatBac())
1060  boutonBac.setBackgroundResource(R.drawable.style_bouton_valide);
1061  else
1062  boutonBac.setBackgroundResource(R.drawable.style_bouton_invalide);
1063 
1064  if (cafetiere.informerEtatBluetooth() && cafetiere.informerConnexionBluetooth() && cafetiere.informerCapsuleActuelle() != Cafetiere.AUCUNE_CAPSULE && cafetiere.informerEtatCafetiere() && cafetiere.informerEtatTasse() && cafetiere.informerEtatBac() && cafetiere.informerNiveauEau() != 0)
1065  {
1066  boutonLancerCafe.setBackgroundResource(R.drawable.style_bouton_valide);
1067  }
1068  else
1069  {
1070  boutonLancerCafe.setBackgroundResource(R.drawable.style_bouton_invalide);
1071  }
1072 
1073  barNiveauEauFond.setProgress(cafetiere.informerNiveauEau());
1074  barNiveauEau.setProgress(cafetiere.informerNiveauEau());
1075  texteNiveauEau.setText(cafetiere.informerNiveauEau() + "%");
1076  }
boolean informerEtatBac()
Méthode qui renvoie si le bac est plein ou non.
Definition: Cafetiere.java:322
ImageButton boutonTasse
Bouton indicateur de la tasse.
Definition: Ihm.java:84
boolean informerEtatBluetooth()
Méthode qui renvoie si le bluetooth est activé ou non.
Definition: Cafetiere.java:289
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
boolean informerEtatCafetiere()
Méthode qui renvoie si la cafetière est utilisable ou non.
Definition: Cafetiere.java:278
ProgressBar barNiveauEauFond
Indicateur du niveau d'eau en fond.
Definition: Ihm.java:86
boolean informerConnexionBluetooth()
Méthode qui renvoie si le bluetooth est connecté ou non.
Definition: Cafetiere.java:300
int informerCapsuleActuelle()
Méthode qui renvoie la capsule actuelle.
Definition: Cafetiere.java:256
ImageButton boutonBluetooth
Bouton indicateur du Bluetooth.
Definition: Ihm.java:83
ProgressBar barNiveauEau
Indicateur du niveau d'eau (bar de progression)
Definition: Ihm.java:87
ImageButton boutonBac
Bouton indicateur du bac.
Definition: Ihm.java:85
int informerNiveauEau()
Méthode qui renvoie le niveau d'eau.
Definition: Cafetiere.java:333
boolean informerEtatTasse()
Méthode qui renvoie si la tasse est bien placée ou non.
Definition: Cafetiere.java:311
FrameLayout boutonLancerCafe
Bouton central : lancer un café
Definition: Ihm.java:109
TextView texteNiveauEau
Indicateur du niveau d'eau (texte)
Definition: Ihm.java:88

◆ actualiserPageInformations()

com.example.ekawa.Ihm.actualiserPageInformations ( )

Méthode qui permet d'actualiser la page "Informations".

Définition à la ligne 1110 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.informerDureteeEau(), com.example.ekawa.Cafetiere.informerNombreBacVide(), com.example.ekawa.Cafetiere.informerNombreCafeDuJour(), com.example.ekawa.Cafetiere.informerNombreCafeTotal(), com.example.ekawa.Cafetiere.informerNombreEauRemplie(), com.example.ekawa.Cafetiere.informerNomCafetiere(), com.example.ekawa.Cafetiere.informerQualiteEau(), et com.example.ekawa.Cafetiere.NB_MAX_CAFE_CONSEILLEE.

Référencé par com.example.ekawa.Cafetiere.actualiserInformationsComplementaires(), com.example.ekawa.Ihm.initialiserMenu(), et com.example.ekawa.Cafetiere.lancerPreparationCafe().

1111  {
1112  Log.d(TAG, "actualiserPageInformations()");
1113  texteNbCafeJour.setText(String.valueOf(cafetiere.informerNombreCafeDuJour()));
1114  if(cafetiere.informerNombreCafeDuJour() >= Cafetiere.NB_MAX_CAFE_CONSEILLEE)
1115  texteNbCafeJour.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.red));
1116  else
1117  texteNbCafeJour.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.black));
1118  texteNomCafetiere.setText(cafetiere.informerNomCafetiere());
1119  texteNbCafe.setText(String.valueOf(cafetiere.informerNombreCafeTotal()));
1120  texteNbBac.setText(String.valueOf(cafetiere.informerNombreBacVide()));
1121  texteNbEau.setText(String.valueOf(cafetiere.informerNombreEauRemplie()));
1122  texteDureteEau.setText(String.valueOf(cafetiere.informerDureteeEau()));
1123  texteQualiteEau.setText(String.valueOf(cafetiere.informerQualiteEau()));
1124  }
TextView texteNbEau
Le texte affichant le nombre de réservoir d'eau remplie.
Definition: Ihm.java:127
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
TextView texteNomCafetiere
Le texte affichant le nom de la cafetière connectée.
Definition: Ihm.java:124
TextView texteNbBac
Le texte affichant le nombre de bac vidé au total.
Definition: Ihm.java:126
int informerNombreBacVide()
Méthode qui renvoie le nombre de bac vidée.
Definition: Cafetiere.java:391
int informerDureteeEau()
Méthode qui renvoie la duretee de l'eau.
Definition: Cafetiere.java:413
int informerNombreEauRemplie()
Méthode qui renvoie le nombre d'eau remplie.
Definition: Cafetiere.java:402
int informerNombreCafeTotal()
Méthode qui renvoie le nombre de café total.
Definition: Cafetiere.java:380
int informerNombreCafeDuJour()
Méthode qui renvoie le nombre de cafe du jour.
Definition: Cafetiere.java:356
TextView texteQualiteEau
Le texte affichant la qualité de l'eau.
Definition: Ihm.java:129
TextView texteDureteEau
Le texte affichant la dureté de l'eau.
Definition: Ihm.java:128
int informerQualiteEau()
Méthode qui renvoie la qualité de l'eau.
Definition: Cafetiere.java:424
TextView texteNbCafeJour
Le texte affichant le nombre de cafés effectués par l'utilisateur du jour.
Definition: Ihm.java:123
String informerNomCafetiere()
Méthode qui renvoie le nom de la cafetière connectée.
Definition: Cafetiere.java:367
TextView texteNbCafe
Le texte affichant le nombre de cafés éffectués au total par la machine.
Definition: Ihm.java:125

◆ actualiserPageParametres()

com.example.ekawa.Ihm.actualiserPageParametres ( )

Méthode qui permet d'actualiser la page "Parametres".

Définition à la ligne 1145 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.informerVersionCafetiere(), et com.example.ekawa.Ihm.parametresFenetreAProposParametres.

Référencé par com.example.ekawa.Ihm.initialiserPageParametres().

1146  {
1147  Log.d(TAG, "actualiserPageParametres()");
1148  parametresFenetreAProposParametres.setMessage("Nom de l'application : " + getString(R.string.nom_app) + "\n" +
1149  "Version de l'application : " + getString(R.string.version_app) + "\n" +
1150  "Version de la cafetière : " + cafetiere.informerVersionCafetiere() + "\n" +
1151  "Nom du dévelopeur : " + getString(R.string.nom_developeur) + "\n" +
1152  "Contact : " + getString(R.string.mail));
1154  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
AlertDialog fenetreAProposParametres
La fenêtre a propos des parametres.
Definition: Ihm.java:163
String informerVersionCafetiere()
Méthode qui renvoie la version de la cafetière.
Definition: Cafetiere.java:446
AlertDialog.Builder parametresFenetreAProposParametres
Les paramètres de la fenêtre a propos des paramètres.
Definition: Ihm.java:162

◆ actualiserPageProgrammer()

com.example.ekawa.Ihm.actualiserPageProgrammer ( )

Méthode qui permet d'actualiser la page "Programmer".

Définition à la ligne 1130 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.listerProgrammations(), com.example.ekawa.Programmation.Jours.LUNDI, et com.example.ekawa.Programmation.Frequences.UNE_SEULE_FOIS.

Référencé par com.example.ekawa.Cafetiere.creerUneProgrammation(), com.example.ekawa.Ihm.initialiserFenetreProgrammer(), com.example.ekawa.Ihm.initialiserPageProgrammer(), com.example.ekawa.Cafetiere.modifierUneProgrammation(), com.example.ekawa.Cafetiere.supprimerLesProgrammations(), et com.example.ekawa.Cafetiere.supprimerUneProgrammation().

1131  {
1132  Log.d(TAG, "actualiserPageProgrammer()");
1133  ArrayList<Programmation> programmations = new ArrayList<Programmation>();
1134  programmations.add(new Programmation(0,0, Programmation.Jours.LUNDI,"", Programmation.Frequences.UNE_SEULE_FOIS));
1135  if(cafetiere.listerProgrammations() != null)
1136  programmations.addAll(cafetiere.listerProgrammations());
1137  AdaptateurProgrammer adaptateurProgrammer = new AdaptateurProgrammer(this, programmations);
1138  listeProgrammer.setAdapter(adaptateurProgrammer);
1139  }
Switch programmations
Bouton réinitialiser les programmations.
Definition: Ihm.java:170
ListView listeProgrammer
La liste des programmations.
Definition: Ihm.java:142
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
ArrayList< Programmation > listerProgrammations()
Méthode qui renvoie tous les programmations.

◆ actualiserSelection()

com.example.ekawa.Ihm.actualiserSelection ( )

Méthode qui permet de mettre à jour la liste des sélections des capsules.

Définition à la ligne 1082 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.AUCUNE_CAPSULE, com.example.ekawa.Cafetiere.informerBoissonActuelle(), com.example.ekawa.Cafetiere.informerCapsuleActuelle(), com.example.ekawa.Cafetiere.informerPresenceCapsule(), et com.example.ekawa.Cafetiere.NOMBRE_CAPSULE_MAX.

Référencé par com.example.ekawa.Cafetiere.actualiserMagasin(), et com.example.ekawa.Cafetiere.remettreAZero().

1083  {
1084  Log.d(TAG, "actualiserSelection()");
1085  if(cafetiere.informerCapsuleActuelle() == Cafetiere.AUCUNE_CAPSULE)
1086  {
1087  texteCapsuleActuelle.setText("Aucune");
1088  imageCapsuleActuelle.setImageResource(R.drawable.ic_capsule);
1089  }
1090  else
1091  {
1094  }
1095  for (int i = 0; i < Cafetiere.NOMBRE_CAPSULE_MAX; ++i)
1096  {
1097  if(cafetiere.informerPresenceCapsule(i))
1098  listeSelectionCapsule.getChildAt(i).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
1099  else
1100  listeSelectionCapsule.getChildAt(i).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.grey));
1101  }
1104  }
String [] nomsBoisson
Les noms des boissons.
Definition: Ihm.java:105
Integer [] identifiantsImagesCapsules
Les images des capsules.
Definition: Ihm.java:97
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
ImageView imageCapsuleActuelle
Indicateur de la capsule actuellement sélectionnée.
Definition: Ihm.java:92
Integer [] identifiantsImagesBoisson
Les images des boissons.
Definition: Ihm.java:106
boolean informerPresenceCapsule(int position)
Méthode qui renvoie le niveau d&#39;eau.
Definition: Cafetiere.java:345
String [] nomsCapsules
Les noms des capsules.
Definition: Ihm.java:96
int informerCapsuleActuelle()
Méthode qui renvoie la capsule actuelle.
Definition: Cafetiere.java:256
TextView texteBoissonActuelle
Le nom de la boisson actuellement sélectionnée.
Definition: Ihm.java:102
ImageView imageBoissonActuelle
Indicateur de la boisson actuellement sélectionnée.
Definition: Ihm.java:101
TextView texteCapsuleActuelle
Le nom de la capsule actuellement sélectionnée.
Definition: Ihm.java:93
ListView listeSelectionCapsule
La liste des capsules sélectionnables.
Definition: Ihm.java:94
int informerBoissonActuelle()
Méthode qui renvoie la boisson actuelle.
Definition: Cafetiere.java:267

◆ afficherMessage()

◆ afficherMessageAvecRetard()

com.example.ekawa.Ihm.afficherMessageAvecRetard ( String  texte,
int  temps 
)

Méthode qui permet d'afficher des messages apres un retard.

Paramètres
textetexte à afficher
tempstemps du retard (en millisecondes)

Définition à la ligne 1173 du fichier Ihm.java.

Référencé par com.example.ekawa.Cafetiere.lancerPreparationCafe().

1174  {
1175  Log.d(TAG, "afficherMessageAvecRetard()");
1176  new Thread()
1177  {
1178  @Override public void run()
1179  {
1180  try
1181  {
1182  sleep(temps);
1183  runOnUiThread(new Runnable()
1184  {
1185  @Override
1186  public void run()
1187  {
1188  Toast.makeText(getApplicationContext(), texte, Toast.LENGTH_LONG).show();
1189  }
1190  });
1191  }
1192  catch (InterruptedException e)
1193  {
1194  e.printStackTrace();
1195  }
1196  }
1197  }.start();
1198  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ demanderPermissions()

com.example.ekawa.Ihm.demanderPermissions ( )
private

Méthode qui permet de demander le droit de permission location.

Définition à la ligne 395 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.onCreate().

396  {
397  Log.d(TAG, "demanderPermissions()");
398  if (ActivityCompat.checkSelfPermission(getApplicationContext(), PERMISSION_LOCATION) != PackageManager.PERMISSION_GRANTED)
399  {
400  ActivityCompat.requestPermissions(this, new String[]{PERMISSION_LOCATION}, CODE_REQUETE_PERMISSION);
401  }
402  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ envoyerNotification()

com.example.ekawa.Ihm.envoyerNotification ( Programmation  programmation)

Méthode qui permet d'envoyer une notification.

Paramètres
programmationla programmation

Définition à la ligne 1219 du fichier Ihm.java.

Références com.example.ekawa.Programmation.obtenirBoisson(), com.example.ekawa.Programmation.obtenirCapsule(), com.example.ekawa.Programmation.obtenirHeure(), et com.example.ekawa.Ihm.parametresNotification.

Référencé par com.example.ekawa.Cafetiere.verifierProgrammation().

1220  {
1221  Log.d(TAG, "envoyerNotification()");
1222  parametresNotification.setContentTitle("Votre programmation de " + programmation.obtenirHeure() + " est en cour de préparation.");
1223  parametresNotification.setContentText(nomsCapsules[programmation.obtenirCapsule()] + " - " + nomsBoisson[programmation.obtenirBoisson()]);
1225  }
String [] nomsBoisson
Les noms des boissons.
Definition: Ihm.java:105
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
String [] nomsCapsules
Les noms des capsules.
Definition: Ihm.java:96
Notification.Builder parametresNotification
Le créateur de notification.
Definition: Ihm.java:173
NotificationManager gestionnaireNotification
Le gestionnaire de notification.
Definition: Ihm.java:174

◆ initialiserBoutonLancerCafe()

com.example.ekawa.Ihm.initialiserBoutonLancerCafe ( )
private

Méthode qui permet d'initialiser le bouton principal de l'application (pour lancer le café)

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

Références com.example.ekawa.Cafetiere.actualiserDonnees(), com.example.ekawa.Cafetiere.demanderPreparationCafe(), com.example.ekawa.Cafetiere.estPrete(), com.example.ekawa.Cafetiere.informerCapsuleActuelle(), et com.example.ekawa.Cafetiere.informerPresenceCapsule().

Référencé par com.example.ekawa.Ihm.onCreate().

600  {
601  Log.d(TAG, "initialiserBoutonLancerCafe()");
602  boutonLancerCafe = (FrameLayout) findViewById(R.id.bouton_lancer_cafe);
603  boutonLancerCafe.setOnClickListener(new View.OnClickListener()
604  {
605  @Override
606  public void onClick(View v)
607  {
608  if (cafetiere.estPrete())
609  {
610  if(cafetiere.informerPresenceCapsule(cafetiere.informerCapsuleActuelle()))
611  cafetiere.demanderPreparationCafe();
612  }
613  else
614  {
615  cafetiere.actualiserDonnees();
616  }
617  }
618  });
619  }
boolean estPrete()
Méthode qui renvoie si la cafetière est prête à l&#39;emploie.
Definition: Cafetiere.java:457
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
boolean informerPresenceCapsule(int position)
Méthode qui renvoie le niveau d&#39;eau.
Definition: Cafetiere.java:345
int informerCapsuleActuelle()
Méthode qui renvoie la capsule actuelle.
Definition: Cafetiere.java:256
void actualiserDonnees()
Méthode qui permet d&#39;envoyer les trames d&#39;actualisations à la cafetière.
Definition: Cafetiere.java:561
void demanderPreparationCafe()
Méthode qui permet de lancer la préparation d&#39;un café
Definition: Cafetiere.java:576
FrameLayout boutonLancerCafe
Bouton central : lancer un café
Definition: Ihm.java:109

◆ initialiserBoutonsIndicateurs()

com.example.ekawa.Ihm.initialiserBoutonsIndicateurs ( )
private

Méthode qui permet d'initialiser les indicateurs (bluetooth, tasse, bac, eau)

Définition à la ligne 429 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.actualiserDonnees(), com.example.ekawa.Cafetiere.allumer(), com.example.ekawa.Cafetiere.connecter(), com.example.ekawa.Cafetiere.eteindre(), com.example.ekawa.Cafetiere.informerConnexionBluetooth(), et com.example.ekawa.Cafetiere.informerEtatBluetooth().

Référencé par com.example.ekawa.Ihm.onCreate().

430  {
431  Log.d(TAG, "initialiserBoutonsIndicateurs()");
432  boutonBluetooth = (ImageButton) findViewById(R.id.bouton_bluetooth);
433  boutonBluetooth.setOnClickListener(new View.OnClickListener()
434  {
435  @Override
436  public void onClick(View v)
437  {
438  Log.d(TAG, "[boutonBluetooth] onClick : EtatBluetooth = " + cafetiere.informerEtatBluetooth() + " - Connexion = " + cafetiere.informerConnexionBluetooth());
439  if(cafetiere.informerEtatBluetooth() && cafetiere.informerConnexionBluetooth())
440  cafetiere.eteindre();
441  else if(cafetiere.informerEtatBluetooth() && !cafetiere.informerConnexionBluetooth())
442  cafetiere.connecter();
443  else
444  cafetiere.allumer();
445  cafetiere.actualiserDonnees();
446  }
447  });
448 
449  boutonTasse = (ImageButton) findViewById(R.id.bouton_tasse);
450  boutonTasse.setOnClickListener(new View.OnClickListener()
451  {
452  @Override
453  public void onClick(View v)
454  {
455  cafetiere.actualiserDonnees();
456  }
457  });
458 
459  boutonBac = (ImageButton) findViewById(R.id.bouton_bac);
460  boutonBac.setOnClickListener(new View.OnClickListener()
461  {
462  @Override
463  public void onClick(View v)
464  {
465  cafetiere.actualiserDonnees();
466  }
467  });
468 
469  barNiveauEauFond = (ProgressBar) findViewById(R.id.fond_niveau_eau);
470  barNiveauEau = (ProgressBar) findViewById(R.id.bar_niveau_eau);
471  texteNiveauEau = (TextView) findViewById(R.id.texte_niveau_eau);
472  texteNiveauEau.setOnClickListener(new View.OnClickListener()
473  {
474  @Override
475  public void onClick(View v)
476  {
477  cafetiere.actualiserDonnees();
478  }
479  });
480  }
void eteindre()
Méthode qui permet d&#39;éteindre le bluetooth.
Definition: Cafetiere.java:480
ImageButton boutonTasse
Bouton indicateur de la tasse.
Definition: Ihm.java:84
boolean informerEtatBluetooth()
Méthode qui renvoie si le bluetooth est activé ou non.
Definition: Cafetiere.java:289
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
void connecter()
Méthode qui permet de connecter le bluetooth à la cafetière.
Definition: Cafetiere.java:495
void allumer()
Méthode qui permet d&#39;allumer le bluetooth.
Definition: Cafetiere.java:469
ProgressBar barNiveauEauFond
Indicateur du niveau d&#39;eau en fond.
Definition: Ihm.java:86
boolean informerConnexionBluetooth()
Méthode qui renvoie si le bluetooth est connecté ou non.
Definition: Cafetiere.java:300
ImageButton boutonBluetooth
Bouton indicateur du Bluetooth.
Definition: Ihm.java:83
void actualiserDonnees()
Méthode qui permet d&#39;envoyer les trames d&#39;actualisations à la cafetière.
Definition: Cafetiere.java:561
ProgressBar barNiveauEau
Indicateur du niveau d&#39;eau (bar de progression)
Definition: Ihm.java:87
ImageButton boutonBac
Bouton indicateur du bac.
Definition: Ihm.java:85
TextView texteNiveauEau
Indicateur du niveau d&#39;eau (texte)
Definition: Ihm.java:88

◆ initialiserFenetreAProposParametres()

com.example.ekawa.Ihm.initialiserFenetreAProposParametres ( )
private

Méthode qui permet d'initialiser la fenêtre "A propos".

Définition à la ligne 1017 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.informerVersionCafetiere(), et com.example.ekawa.Ihm.parametresFenetreAProposParametres.

Référencé par com.example.ekawa.Ihm.initialiserPageParametres().

1018  {
1019  parametresFenetreAProposParametres = new AlertDialog.Builder(this);
1020  parametresFenetreAProposParametres.setTitle("À propos");
1021  parametresFenetreAProposParametres.setMessage("Nom de l'application : " + getString(R.string.nom_app) + "\n" +
1022  "Version de l'application : " + getString(R.string.version_app) + "\n" +
1023  "Version de la cafetière : " + cafetiere.informerVersionCafetiere() + "\n" +
1024  "Nom du développeur : " + getString(R.string.nom_developeur) + "\n" +
1025  "Contact : " + getString(R.string.mail));
1027  }
AlertDialog fenetreAProposParametres
La fenêtre a propos des parametres.
Definition: Ihm.java:163
String informerVersionCafetiere()
Méthode qui renvoie la version de la cafetière.
Definition: Cafetiere.java:446
AlertDialog.Builder parametresFenetreAProposParametres
Les paramètres de la fenêtre a propos des paramètres.
Definition: Ihm.java:162

◆ initialiserFenetreProgrammer()

com.example.ekawa.Ihm.initialiserFenetreProgrammer ( )
private

Méthode qui permet d'initialiser la fenêtre volante "Programmer".

Définition à la ligne 807 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserPageProgrammer(), com.example.ekawa.Ihm.AdaptateurSelection.AdaptateurSelection(), com.example.ekawa.Cafetiere.demanderCreationUneProgrammation(), com.example.ekawa.Cafetiere.demanderModificationUneProgrammation(), com.example.ekawa.Cafetiere.demanderSuppressionUneProgrammation(), com.example.ekawa.Programmation.Frequences.FREQUENCES, com.example.ekawa.Cafetiere.informerBoissonActuelle(), com.example.ekawa.Cafetiere.informerCapsuleActuelle(), com.example.ekawa.Programmation.Jours.JOURS, com.example.ekawa.Programmation.MODE_CREATION, com.example.ekawa.Programmation.MODE_MODIFICATION, com.example.ekawa.Ihm.parametresFenetreProgrammer, et com.example.ekawa.Ihm.reinitialiserListe().

Référencé par com.example.ekawa.Ihm.initialiserPageProgrammer().

808  {
809  Log.d(TAG, "initialiserFenetreProgrammer()");
810  parametresFenetreProgrammer.setTitle("Créer ou modifier une programmation");
811 
814  Log.d(TAG, "initialiserFenetreProgrammer() capsuleProgrammation = " + capsuleProgrammation);
815  Log.d(TAG, "initialiserFenetreProgrammer() boissonProgrammation = " + boissonProgrammation);
816 
817  listeCapsuleProgrammer = (ListView) apparenceFenetreProgrammer.findViewById(R.id.liste_capsule_programmer);
818  listeBoissonProgrammer = (ListView) apparenceFenetreProgrammer.findViewById(R.id.liste_boisson_programmer);
819  spinnerJourProgrammer = (Spinner) apparenceFenetreProgrammer.findViewById(R.id.liste_jour_programmer);
820  heureProgrammer = (TimePicker) apparenceFenetreProgrammer.findViewById(R.id.temps_programmer);
821  spinnerFrequenceProgrammer = (Spinner) apparenceFenetreProgrammer.findViewById(R.id.liste_frequence_programmer);
822 
823  listeCapsuleProgrammer.setAdapter(new AdaptateurSelection(this, nomsCapsules, identifiantsImagesCapsules));
824  listeCapsuleProgrammer.setOnItemClickListener(new AdapterView.OnItemClickListener()
825  {
826  @Override
827  public void onItemClick(AdapterView<?> parent, View view, int position, long id)
828  {
830  listeCapsuleProgrammer.getChildAt(position).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.grey));
831  capsuleProgrammation = position;
832  }
833  });
834 
835  listeBoissonProgrammer.setAdapter(new AdaptateurSelection(this, nomsBoisson, identifiantsImagesBoisson));
836  listeBoissonProgrammer.setOnItemClickListener(new AdapterView.OnItemClickListener()
837  {
838  @Override
839  public void onItemClick(AdapterView<?> parent, View view, int position, long id)
840  {
842  listeBoissonProgrammer.getChildAt(position).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.grey));
843  boissonProgrammation = position;
844  }
845  });
846 
847  spinnerJourProgrammer.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, Programmation.Jours.JOURS));
848  heureProgrammer.setIs24HourView(true);
849  spinnerFrequenceProgrammer.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, Programmation.Frequences.FREQUENCES));
850 
851  parametresFenetreProgrammer.setPositiveButton("OK", new DialogInterface.OnClickListener() {
852  @RequiresApi(api = Build.VERSION_CODES.M)
853  @Override
854  public void onClick(DialogInterface dialog, int which)
855  {
856  if(modeProgrammer == Programmation.MODE_CREATION)
857  {
861  spinnerJourProgrammer.getSelectedItemPosition(),
862  heureProgrammer.getHour() + "h" + heureProgrammer.getMinute(),
863  spinnerFrequenceProgrammer.getSelectedItemPosition()
864  );
865  }
866  if(modeProgrammer == Programmation.MODE_MODIFICATION)
867  {
872  spinnerJourProgrammer.getSelectedItemPosition(),
873  heureProgrammer.getHour() + "h" + heureProgrammer.getMinute(),
874  spinnerFrequenceProgrammer.getSelectedItemPosition()
875  );
876  }
878  }
879  });
880 
881  parametresFenetreProgrammer.setNegativeButton("Annuler", new DialogInterface.OnClickListener() {
882  @Override
883  public void onClick(DialogInterface dialog, int which)
884  {
885 
886  }
887  });
888 
889  parametresFenetreProgrammer.setNeutralButton("Supprimer", new DialogInterface.OnClickListener() {
890  @Override
891  public void onClick(DialogInterface dialog, int which)
892  {
893  if(modeProgrammer == Programmation.MODE_MODIFICATION)
894  {
897  }
898  }
899  });
900 
902  fenetreProgrammer.setOnShowListener(new DialogInterface.OnShowListener(){
903  @Override
904  public void onShow(DialogInterface dialogInterface){
905  Log.d(TAG, "fenetreProgrammer.onShow()");
908  }
909  });
910  }
AlertDialog fenetreProgrammer
La fenêtre Programmer.
Definition: Ihm.java:145
String [] nomsBoisson
Les noms des boissons.
Definition: Ihm.java:105
ListView listeCapsuleProgrammer
La liste des capsules de la fenêtre Programmer.
Definition: Ihm.java:148
Integer [] identifiantsImagesCapsules
Les images des capsules.
Definition: Ihm.java:97
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
ListView listeBoissonProgrammer
La liste des boissons de la fenêtre Programmer.
Definition: Ihm.java:149
void demanderCreationUneProgrammation(int capsule, int boisson, int jour, String heure, int frequence)
Méthode qui permet de demander la création d&#39;une programmation.
Definition: Cafetiere.java:844
void demanderModificationUneProgrammation(int position, int capsule, int boisson, int jour, String heure, int frequence)
Méthode qui permet de demander la modification une programmation.
Definition: Cafetiere.java:911
Integer [] identifiantsImagesBoisson
Les images des boissons.
Definition: Ihm.java:106
String [] nomsCapsules
Les noms des capsules.
Definition: Ihm.java:96
int informerCapsuleActuelle()
Méthode qui renvoie la capsule actuelle.
Definition: Cafetiere.java:256
void actualiserPageProgrammer()
Méthode qui permet d&#39;actualiser la page "Programmer".
Definition: Ihm.java:1130
int positionProgrammer
la position de la programmation
Definition: Ihm.java:137
int capsuleProgrammation
La capsule de la programmation.
Definition: Ihm.java:139
AlertDialog.Builder parametresFenetreProgrammer
Les paramètres de la fenêtre Programmer.
Definition: Ihm.java:144
void demanderSuppressionUneProgrammation(int position)
Méthode qui permet de demander la suppression d&#39;une programmation.
Definition: Cafetiere.java:963
boolean modeProgrammer
Le mode de la fenêtre Programmer.
Definition: Ihm.java:136
Spinner spinnerFrequenceProgrammer
La sélection de la fréquence.
Definition: Ihm.java:152
View apparenceFenetreProgrammer
L&#39;apparence de la fenêtre Programmer.
Definition: Ihm.java:146
int boissonProgrammation
La boisson de la programmation.
Definition: Ihm.java:140
void reinitialiserListe(ListView liste)
Méthode qui permet de réinitialiser une liste.
Definition: Ihm.java:1205
Spinner spinnerJourProgrammer
La sélection du jour de la semaine.
Definition: Ihm.java:150
TimePicker heureProgrammer
La sélection de l&#39;heure.
Definition: Ihm.java:151
int informerBoissonActuelle()
Méthode qui renvoie la boisson actuelle.
Definition: Cafetiere.java:267

◆ initialiserFenetreReinitialiserParametres()

com.example.ekawa.Ihm.initialiserFenetreReinitialiserParametres ( )
private

Méthode qui permet d'initialiser la fenêtre "Réinitialiser paramètres".

Définition à la ligne 947 du fichier Ihm.java.

Références com.example.ekawa.Ihm.afficherMessage(), com.example.ekawa.Cafetiere.modifierInformationsComplementaires(), et com.example.ekawa.Ihm.parametresFenetreReinitialiserParametres.

Référencé par com.example.ekawa.Ihm.initialiserPageParametres().

948  {
949  Log.d(TAG, "initialiserFenetreReinitialiserParametres()");
950 
951  parametresFenetreReinitialiserParametres = new AlertDialog.Builder(this);
952  apparenceFenetreReinitialiserParametres = getLayoutInflater().inflate(R.layout.page_reinisialiser_parametre, null);
954 
955  nombreCafe = (Switch) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_nombre_cafe);
956  nombreBacVide = (Switch) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_nombre_bac_vide);
957  nombreEauRemplie = (Switch) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_nombre_eau_remplie);
958  dureteEau = (EditText) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_duretee_eau);
959  qualiteEau = (EditText) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_qualite_eau);
960  programmations = (Switch) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_programmations);
961  simulateur = (Switch) apparenceFenetreReinitialiserParametres.findViewById(R.id.reinitialiser_simulateur);
962 
963  parametresFenetreReinitialiserParametres.setTitle("Réinitialiser valeurs informations complémentaires");
964  parametresFenetreReinitialiserParametres.setPositiveButton("Ok", new DialogInterface.OnClickListener()
965  {
966  @Override
967  public void onClick(DialogInterface dialog, int which)
968  {
969  try
970  {
971  if(dureteEau.getText().toString().equals(""))
972  dureteEau.setText("-1");
973  Integer.valueOf(dureteEau.getText().toString());
974  }
975  catch (Exception e)
976  {
977  afficherMessage("Dureté de l'eau incorrecte");
978  return;
979  }
980  try
981  {
982  if(qualiteEau.getText().toString().equals(""))
983  qualiteEau.setText("-1");
984  Integer.valueOf(qualiteEau.getText().toString());
985  }
986  catch (Exception e)
987  {
988  afficherMessage("Qualité de l'eau incorrecte");
989  return;
990  }
992  nombreCafe.isChecked(),
993  nombreBacVide.isChecked(),
994  nombreEauRemplie.isChecked(),
995  Integer.valueOf(dureteEau.getText().toString()),
996  Integer.valueOf(qualiteEau.getText().toString()),
997  programmations.isChecked(),
998  simulateur.isChecked()
999  );
1000  }
1001  });
1002  parametresFenetreReinitialiserParametres.setNegativeButton("Annuler", new DialogInterface.OnClickListener()
1003  {
1004  @Override
1005  public void onClick(DialogInterface dialog, int which)
1006  {
1007 
1008  }
1009  });
1011  }
Switch nombreBacVide
Bouton réinitialiser le nombre de bac vidé au total.
Definition: Ihm.java:166
EditText qualiteEau
Bouton réinitialiser la qualité de l&#39;eau.
Definition: Ihm.java:169
AlertDialog.Builder parametresFenetreReinitialiserParametres
Les paramètres de la fenêtre réinitialiser informations des paramètres.
Definition: Ihm.java:158
Switch nombreEauRemplie
Bouton réinitialiser le nombre de réservoir d&#39;eau remplie.
Definition: Ihm.java:167
Switch programmations
Bouton réinitialiser les programmations.
Definition: Ihm.java:170
Switch simulateur
Bouton réinitialiser le réservoir d&#39;eau, le bac et le magasin.
Definition: Ihm.java:171
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
AlertDialog fenetreReinitialiserParametres
La fenêtre réinitialiser informations des paramètres.
Definition: Ihm.java:159
void afficherMessage(String texte)
Méthode qui permet d&#39;afficher des messages.
Definition: Ihm.java:1161
void modifierInformationsComplementaires(boolean nbCafe, boolean nbBacVide, boolean nbEauRemplie, int dureteeEau, int qualiteEau, boolean programmations, boolean simulateur)
Méthode qui permet de réinitialiser les informations complémentaires.
Definition: Cafetiere.java:796
Switch nombreCafe
Bouton réinitialiser le nombre de cafés effectués au total par la machine de la fenêtre Parametres...
Definition: Ihm.java:165
View apparenceFenetreReinitialiserParametres
L&#39;apparence de la fenêtre réinitialiser informations des paramètres.
Definition: Ihm.java:160
EditText dureteEau
Bouton réinitialiser la dureté de l&#39;eau.
Definition: Ihm.java:168

◆ initialiserMenu()

com.example.ekawa.Ihm.initialiserMenu ( )
private

Méthode qui permet d'initialiser le menu (page "informations", page "programmer", page "paramètres")

Définition à la ligne 625 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserPageInformations(), com.example.ekawa.Ihm.afficherMessage(), et com.example.ekawa.Cafetiere.informerNTP().

Référencé par com.example.ekawa.Ihm.onCreate().

626  {
627  Log.d(TAG, "initialiserMenu()");
628  boutonPageInformations = (LinearLayout) findViewById(R.id.bouton_page_informations);
629  boutonPageProgrammer = (LinearLayout) findViewById(R.id.bouton_page_programmer);
630  boutonPageParametres = (LinearLayout) findViewById(R.id.bouton_page_parametres);
631  pageInformations = (LinearLayout) findViewById(R.id.page_informations);
632  pageProgrammer = (LinearLayout) findViewById(R.id.page_programmer);
633  pageParametres = (LinearLayout) findViewById(R.id.page_parametres);
634 
635  boutonPageInformations.setOnClickListener(new View.OnClickListener()
636  {
637  @Override
638  public void onClick(View v)
639  {
641  {
642  pageInformations.setVisibility(View.VISIBLE);
643  pageProgrammer.setVisibility(View.INVISIBLE);
644  pageParametres.setVisibility(View.INVISIBLE);
646  visibilitePageProgrammer = false;
647  visibilitePageParametres = false;
648  boutonLancerCafe.setEnabled(false);
649  }
650  else
651  {
652  pageInformations.setVisibility(View.INVISIBLE);
654  boutonLancerCafe.setEnabled(true);
655  }
657  }
658  });
659 
660  boutonPageProgrammer.setOnClickListener(new View.OnClickListener()
661  {
662  @Override
663  public void onClick(View v)
664  {
666  {
667  pageInformations.setVisibility(View.INVISIBLE);
668  if(cafetiere.informerNTP())
669  pageProgrammer.setVisibility(View.VISIBLE);
670  else
671  afficherMessage("Votre cafetière n'est pas connectée au NTP");
672  pageParametres.setVisibility(View.INVISIBLE);
675  visibilitePageParametres = false;
676  boutonLancerCafe.setEnabled(false);
677  }
678  else
679  {
680  pageProgrammer.setVisibility(View.INVISIBLE);
681  visibilitePageProgrammer = false;
682  boutonLancerCafe.setEnabled(true);
683  }
684  }
685  });
686 
687  boutonPageParametres.setOnClickListener(new View.OnClickListener()
688  {
689  @Override
690  public void onClick(View v)
691  {
693  {
694  pageInformations.setVisibility(View.INVISIBLE);
695  pageProgrammer.setVisibility(View.INVISIBLE);
696  pageParametres.setVisibility(View.VISIBLE);
698  visibilitePageProgrammer = false;
700  boutonLancerCafe.setEnabled(false);
701  }
702  else
703  {
704  pageParametres.setVisibility(View.INVISIBLE);
705  visibilitePageParametres = false;
706  boutonLancerCafe.setEnabled(true);
707  }
708  }
709  });
710  }
LinearLayout pageParametres
La page Parametres.
Definition: Ihm.java:119
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
boolean visibilitePageParametres
La visibilité de la page Parametres.
Definition: Ihm.java:120
LinearLayout pageInformations
La page Informations.
Definition: Ihm.java:115
boolean visibilitePageProgrammer
La visibilité de la page Programmer.
Definition: Ihm.java:118
void afficherMessage(String texte)
Méthode qui permet d&#39;afficher des messages.
Definition: Ihm.java:1161
void actualiserPageInformations()
Méthode qui permet d&#39;actualiser la page "Informations".
Definition: Ihm.java:1110
LinearLayout boutonPageInformations
Bouton pour ouvrir/fermer la page Informations.
Definition: Ihm.java:112
LinearLayout boutonPageParametres
Bouton pour ouvrir/fermer la page Parametres.
Definition: Ihm.java:114
LinearLayout pageProgrammer
La page Programmer.
Definition: Ihm.java:117
LinearLayout boutonPageProgrammer
Bouton pour ouvrir/fermer la page Programmer.
Definition: Ihm.java:113
boolean informerNTP()
Méthode qui renvoie l&#39;état du NTP.
Definition: Cafetiere.java:435
FrameLayout boutonLancerCafe
Bouton central : lancer un café
Definition: Ihm.java:109
boolean visibilitePageInformations
La visibilité de la page Informations.
Definition: Ihm.java:116

◆ initialiserNotifications()

com.example.ekawa.Ihm.initialiserNotifications ( )
private

Méthode qui permet d'initialiser la fenetre "A propos".

Définition à la ligne 1033 du fichier Ihm.java.

Références com.example.ekawa.Ihm.parametresNotification.

Référencé par com.example.ekawa.Ihm.onCreate().

1034  {
1035  parametresNotification = new Notification.Builder(this);
1036  parametresNotification.setSmallIcon(R.mipmap.ic_ekawa);
1037  gestionnaireNotification = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
1038  }
Notification.Builder parametresNotification
Le créateur de notification.
Definition: Ihm.java:173
NotificationManager gestionnaireNotification
Le gestionnaire de notification.
Definition: Ihm.java:174

◆ initialiserPageInformations()

com.example.ekawa.Ihm.initialiserPageInformations ( )
private

Méthode qui permet d'initialiser la page "Informations".

Définition à la ligne 716 du fichier Ihm.java.

Références com.example.ekawa.Ihm.AdaptateurSelection.AdaptateurSelection(), com.example.ekawa.Cafetiere.obtenirDescriptionCapsule(), et com.example.ekawa.Ihm.parametresFenetreInformations.

Référencé par com.example.ekawa.Ihm.onCreate().

717  {
718  Log.d(TAG, "initialiserPageInformations()");
719  texteNbCafeJour = (TextView) findViewById(R.id.nb_cafe_jour);
720  texteNomCafetiere = (TextView) findViewById(R.id.nom_cafetiere);
721  texteNbCafe = (TextView) findViewById(R.id.nb_cafe);
722  texteNbBac = (TextView) findViewById(R.id.nb_bac);
723  texteNbEau = (TextView) findViewById(R.id.nb_eau);
724  texteDureteEau = (TextView) findViewById(R.id.duretee_eau);
725  texteQualiteEau = (TextView) findViewById(R.id.qualite_eau);
726  listeCapsuleInformations = (ListView) findViewById(R.id.liste_capsule_informations);
727  listeCapsuleInformations.setAdapter(new AdaptateurSelection(this, nomsCapsules, identifiantsImagesCapsules));
728  parametresFenetreInformations = new AlertDialog.Builder(this);
729  listeCapsuleInformations.setOnItemClickListener(new AdapterView.OnItemClickListener()
730  {
731  @Override
732  public void onItemClick(AdapterView<?> parent, View view, int position, long id)
733  {
735  .setTitle(nomsCapsules[position])
736  .setMessage("Position : " + position + "\n" + getString(cafetiere.obtenirDescriptionCapsule(position)));
738  fenetreInformations.show();
739  }
740  });
741  }
TextView texteNbEau
Le texte affichant le nombre de réservoir d&#39;eau remplie.
Definition: Ihm.java:127
Integer [] identifiantsImagesCapsules
Les images des capsules.
Definition: Ihm.java:97
AlertDialog fenetreInformations
La fenêtre Informations.
Definition: Ihm.java:133
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
TextView texteNomCafetiere
Le texte affichant le nom de la cafetière connectée.
Definition: Ihm.java:124
TextView texteNbBac
Le texte affichant le nombre de bac vidé au total.
Definition: Ihm.java:126
String [] nomsCapsules
Les noms des capsules.
Definition: Ihm.java:96
AlertDialog.Builder parametresFenetreInformations
Les paramètres de la fenêtre Informations.
Definition: Ihm.java:132
Integer obtenirDescriptionCapsule(int position)
Méthode qui renvoie la description d&#39;une capsule.
Definition: Cafetiere.java:220
TextView texteQualiteEau
Le texte affichant la qualité de l&#39;eau.
Definition: Ihm.java:129
ListView listeCapsuleInformations
La liste des capsules de la page Informations.
Definition: Ihm.java:130
TextView texteDureteEau
Le texte affichant la dureté de l&#39;eau.
Definition: Ihm.java:128
TextView texteNbCafeJour
Le texte affichant le nombre de cafés effectués par l&#39;utilisateur du jour.
Definition: Ihm.java:123
TextView texteNbCafe
Le texte affichant le nombre de cafés éffectués au total par la machine.
Definition: Ihm.java:125

◆ initialiserPageParametres()

com.example.ekawa.Ihm.initialiserPageParametres ( )
private

Méthode qui permet d'initialiser la page "Parametres".

Définition à la ligne 916 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserPageParametres(), com.example.ekawa.Ihm.initialiserFenetreAProposParametres(), et com.example.ekawa.Ihm.initialiserFenetreReinitialiserParametres().

Référencé par com.example.ekawa.Ihm.onCreate().

917  {
918  Log.d(TAG, "initialiserPageParametres()");
920  boutonReinitialiserInformations = (Button) findViewById(R.id.bouton_reinitialiser_valeurs);
921  boutonReinitialiserInformations.setOnClickListener(new View.OnClickListener()
922  {
923  @Override
924  public void onClick(View v)
925  {
927  }
928  });
929 
931  boutonAPropos = (Button) findViewById(R.id.bouton_a_propos);
932  boutonAPropos.setOnClickListener(new View.OnClickListener()
933  {
934  @Override
935  public void onClick(View v)
936  {
939  }
940  });
941  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
AlertDialog fenetreAProposParametres
La fenêtre a propos des parametres.
Definition: Ihm.java:163
AlertDialog fenetreReinitialiserParametres
La fenêtre réinitialiser informations des paramètres.
Definition: Ihm.java:159
void initialiserFenetreReinitialiserParametres()
Méthode qui permet d&#39;initialiser la fenêtre "Réinitialiser paramètres".
Definition: Ihm.java:947
void actualiserPageParametres()
Méthode qui permet d&#39;actualiser la page "Parametres".
Definition: Ihm.java:1145
void initialiserFenetreAProposParametres()
Méthode qui permet d&#39;initialiser la fenêtre "A propos".
Definition: Ihm.java:1017
Button boutonReinitialiserInformations
Bouton de réinitialisation des données de la cafetière.
Definition: Ihm.java:155
Button boutonAPropos
Bouton A propos.
Definition: Ihm.java:156

◆ initialiserPageProgrammer()

com.example.ekawa.Ihm.initialiserPageProgrammer ( )
private

Méthode qui permet d'initialiser la page "Programmer".

Définition à la ligne 747 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserPageProgrammer(), com.example.ekawa.Cafetiere.informerBoissonActuelle(), com.example.ekawa.Cafetiere.informerCapsuleActuelle(), com.example.ekawa.Ihm.initialiserFenetreProgrammer(), com.example.ekawa.Programmation.MODE_CREATION, com.example.ekawa.Programmation.MODE_MODIFICATION, com.example.ekawa.Programmation.obtenirBoisson(), com.example.ekawa.Programmation.obtenirCapsule(), com.example.ekawa.Programmation.obtenirFrequence(), com.example.ekawa.Programmation.obtenirHeure(), com.example.ekawa.Programmation.obtenirJour(), com.example.ekawa.Cafetiere.obtenirProgrammation(), com.example.ekawa.Ihm.parametresFenetreProgrammer, et com.example.ekawa.Ihm.reinitialiserListe().

Référencé par com.example.ekawa.Ihm.onCreate().

748  {
749  Log.d(TAG, "initialiserPageProgrammer()");
750  listeProgrammer = (ListView) findViewById(R.id.liste_programmer);
752  parametresFenetreProgrammer = new AlertDialog.Builder(this);
753  apparenceFenetreProgrammer = getLayoutInflater().inflate(R.layout.page_programmer, null);
755 
757 
758  listeProgrammer.setOnItemClickListener(new AdapterView.OnItemClickListener()
759  {
760  @RequiresApi(api = Build.VERSION_CODES.M)
761  @Override
762  public void onItemClick(AdapterView<?> a, View v, int position, long id)
763  {
764  Log.d(TAG, "initialiserPageProgrammer() onItemClick = " + position);
765 
766  positionProgrammer = position - 1;
767  if(position == 0)
768  {
769  modeProgrammer = Programmation.MODE_CREATION;
772  }
773  else
774  {
775  modeProgrammer = Programmation.MODE_MODIFICATION;
776  Programmation programmation = cafetiere.obtenirProgrammation(positionProgrammer);
777  capsuleProgrammation = programmation.obtenirCapsule();
778  boissonProgrammation = programmation.obtenirBoisson();
779  spinnerJourProgrammer.setSelection(programmation.obtenirJour());
780  String heureMinute = programmation.obtenirHeure();
781  String[] splitHeureMinute = heureMinute.split("h");
782  heureProgrammer.setHour(Integer.parseInt(splitHeureMinute[0]));
783  heureProgrammer.setMinute(Integer.parseInt(splitHeureMinute[1]));
784  spinnerFrequenceProgrammer.setSelection(programmation.obtenirFrequence());
785  }
786 
787  fenetreProgrammer.show();
788 
789  if(listeCapsuleProgrammer.getChildAt(capsuleProgrammation) != null)
790  {
792  listeCapsuleProgrammer.getChildAt(capsuleProgrammation).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.grey));
793  }
794  if(listeBoissonProgrammer.getChildAt(boissonProgrammation) != null)
795  {
797  listeBoissonProgrammer.getChildAt(boissonProgrammation).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.grey));
798  }
799  }
800  });
801  }
AlertDialog fenetreProgrammer
La fenêtre Programmer.
Definition: Ihm.java:145
ListView listeCapsuleProgrammer
La liste des capsules de la fenêtre Programmer.
Definition: Ihm.java:148
ListView listeProgrammer
La liste des programmations.
Definition: Ihm.java:142
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
Programmation obtenirProgrammation(int position)
Méthode qui renvoie une programmation.
ListView listeBoissonProgrammer
La liste des boissons de la fenêtre Programmer.
Definition: Ihm.java:149
int informerCapsuleActuelle()
Méthode qui renvoie la capsule actuelle.
Definition: Cafetiere.java:256
void actualiserPageProgrammer()
Méthode qui permet d&#39;actualiser la page "Programmer".
Definition: Ihm.java:1130
int positionProgrammer
la position de la programmation
Definition: Ihm.java:137
void initialiserFenetreProgrammer()
Méthode qui permet d&#39;initialiser la fenêtre volante "Programmer".
Definition: Ihm.java:807
int capsuleProgrammation
La capsule de la programmation.
Definition: Ihm.java:139
AlertDialog.Builder parametresFenetreProgrammer
Les paramètres de la fenêtre Programmer.
Definition: Ihm.java:144
boolean modeProgrammer
Le mode de la fenêtre Programmer.
Definition: Ihm.java:136
Spinner spinnerFrequenceProgrammer
La sélection de la fréquence.
Definition: Ihm.java:152
View apparenceFenetreProgrammer
L&#39;apparence de la fenêtre Programmer.
Definition: Ihm.java:146
int boissonProgrammation
La boisson de la programmation.
Definition: Ihm.java:140
void reinitialiserListe(ListView liste)
Méthode qui permet de réinitialiser une liste.
Definition: Ihm.java:1205
Spinner spinnerJourProgrammer
La sélection du jour de la semaine.
Definition: Ihm.java:150
TimePicker heureProgrammer
La sélection de l&#39;heure.
Definition: Ihm.java:151
int informerBoissonActuelle()
Méthode qui renvoie la boisson actuelle.
Definition: Cafetiere.java:267

◆ initialiserSelectionBoisson()

com.example.ekawa.Ihm.initialiserSelectionBoisson ( )
private

Méthode qui permet d'initialiser la liste de sélection des boissons.

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

Références com.example.ekawa.Ihm.AdaptateurSelection.AdaptateurSelection(), com.example.ekawa.Cafetiere.changerBoissonActuelle(), com.example.ekawa.Cafetiere.listerBoissons(), et com.example.ekawa.Cafetiere.NOMBRE_BOISSON_MAX.

Référencé par com.example.ekawa.Ihm.onCreate().

544  {
545  Log.d(TAG, "initialiserSelectionBoisson()");
546  boutonSelectionBoisson = (FrameLayout) findViewById(R.id.bouton_selection_boisson);
547  listeSelectionBoisson = (ListView) findViewById(R.id.liste_selection_boisson);
548  imageBoissonActuelle = (ImageView) findViewById(R.id.image_selection_boisson);
549  texteBoissonActuelle = (TextView) findViewById(R.id.texte_boisson_actuelle);
550  boutonSelectionBoisson.setOnClickListener(new View.OnClickListener()
551  {
552  @Override
553  public void onClick(View v)
554  {
556  {
557  listeSelectionBoisson.setVisibility(View.INVISIBLE);
559  }
560  else
561  {
562  listeSelectionBoisson.setVisibility(View.VISIBLE);
565  boutonSelectionCapsule.callOnClick();
566  }
567  }
568  });
569 
570  nomsBoisson = new String[Cafetiere.NOMBRE_BOISSON_MAX];
571  identifiantsImagesBoisson = new Integer[Cafetiere.NOMBRE_BOISSON_MAX];
572 
573  for (int i = 0; i < Cafetiere.NOMBRE_BOISSON_MAX; ++i) {
574  nomsBoisson[i] = cafetiere.listerBoissons().get(i).obtenirNom();
575  identifiantsImagesBoisson[i] = cafetiere.listerBoissons().get(i).obtenirImage();
576  }
577 
578  listeSelectionBoisson.setAdapter(new AdaptateurSelection(this, nomsBoisson, identifiantsImagesBoisson));
579 
580  listeSelectionBoisson.setOnItemClickListener(new AdapterView.OnItemClickListener()
581  {
582  @Override
583  public void onItemClick(AdapterView<?> a, View v, int position, long id)
584  {
585  texteBoissonActuelle.setText(nomsBoisson[position]);
586  imageBoissonActuelle.setImageResource(identifiantsImagesBoisson[position]);
587  cafetiere.changerBoissonActuelle(position);
588  boutonSelectionBoisson.callOnClick();
589  }
590  });
591  texteBoissonActuelle.setText(nomsBoisson[0]);
592  imageBoissonActuelle.setImageResource(identifiantsImagesBoisson[0]);
593  }
FrameLayout boutonSelectionCapsule
Bouton pour ouvrir/fermer la sélection des capsules.
Definition: Ihm.java:91
boolean visibiliteListeSelectionBoisson
La visibilité de la liste de boisson.
Definition: Ihm.java:104
String [] nomsBoisson
Les noms des boissons.
Definition: Ihm.java:105
boolean visibiliteListeSelectionCapsule
La visibilité de la liste de capsule.
Definition: Ihm.java:95
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
ArrayList< Boisson > listerBoissons()
Méthode qui renvoie la liste des boissons.
Definition: Cafetiere.java:208
Integer [] identifiantsImagesBoisson
Les images des boissons.
Definition: Ihm.java:106
ListView listeSelectionBoisson
La liste des boissons sélectionnables.
Definition: Ihm.java:103
TextView texteBoissonActuelle
Le nom de la boisson actuellement sélectionnée.
Definition: Ihm.java:102
ImageView imageBoissonActuelle
Indicateur de la boisson actuellement sélectionnée.
Definition: Ihm.java:101
void changerBoissonActuelle(int boisson)
Méthode qui modifie la boisson actuelle.
Definition: Cafetiere.java:244
FrameLayout boutonSelectionBoisson
Bouton pour ouvrir/fermer la sélection des boissons.
Definition: Ihm.java:100

◆ initialiserSelectionCapsule()

com.example.ekawa.Ihm.initialiserSelectionCapsule ( )
private

Méthode qui permet d'initialiser la liste de sélection des capsules.

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

Références com.example.ekawa.Ihm.AdaptateurSelection.AdaptateurSelection(), com.example.ekawa.Cafetiere.changerCapsuleActuelle(), com.example.ekawa.Cafetiere.informerPresenceCapsule(), com.example.ekawa.Cafetiere.listerCapsules(), et com.example.ekawa.Cafetiere.NOMBRE_CAPSULE_MAX.

Référencé par com.example.ekawa.Ihm.onCreate().

487  {
488  Log.d(TAG, "initialiserSelectionCapsule()");
489  boutonSelectionCapsule = (FrameLayout) findViewById(R.id.bouton_selection_capsule);
490  listeSelectionCapsule = (ListView) findViewById(R.id.liste_selection_capsule);
491  imageCapsuleActuelle = (ImageView) findViewById(R.id.image_selection_capsule);
492  texteCapsuleActuelle = (TextView) findViewById(R.id.texte_capsule_actuelle);
493  boutonSelectionCapsule.setOnClickListener(new View.OnClickListener()
494  {
495  @Override
496  public void onClick(View v)
497  {
499  {
500  listeSelectionCapsule.setVisibility(View.INVISIBLE);
502  }
503  else
504  {
505  listeSelectionCapsule.setVisibility(View.VISIBLE);
508  boutonSelectionBoisson.callOnClick();
509  }
510  }
511  });
512 
513  nomsCapsules = new String[Cafetiere.NOMBRE_CAPSULE_MAX];
514  identifiantsImagesCapsules = new Integer[Cafetiere.NOMBRE_CAPSULE_MAX];
515 
516  for (int i = 0; i < Cafetiere.NOMBRE_CAPSULE_MAX; ++i) {
517  nomsCapsules[i] = cafetiere.listerCapsules().get(i).obtenirNom();
518  identifiantsImagesCapsules[i] = cafetiere.listerCapsules().get(i).obtenirImage();
519  }
520 
521  listeSelectionCapsule.setAdapter(new AdaptateurSelection(this, nomsCapsules, identifiantsImagesCapsules));
522 
523  listeSelectionCapsule.setOnItemClickListener(new AdapterView.OnItemClickListener()
524  {
525  @Override
526  public void onItemClick(AdapterView<?> a, View v, int position, long id)
527  {
528  if(cafetiere.informerPresenceCapsule(position))
529  {
530  texteCapsuleActuelle.setText(nomsCapsules[position]);
531  imageCapsuleActuelle.setImageResource(identifiantsImagesCapsules[position]);
532  cafetiere.changerCapsuleActuelle(position);
533  boutonSelectionCapsule.callOnClick();
534  }
535  }
536  });
537  }
FrameLayout boutonSelectionCapsule
Bouton pour ouvrir/fermer la sélection des capsules.
Definition: Ihm.java:91
boolean visibiliteListeSelectionBoisson
La visibilité de la liste de boisson.
Definition: Ihm.java:104
Integer [] identifiantsImagesCapsules
Les images des capsules.
Definition: Ihm.java:97
boolean visibiliteListeSelectionCapsule
La visibilité de la liste de capsule.
Definition: Ihm.java:95
ArrayList< Capsule > listerCapsules()
Méthode qui renvoie la liste des capsules.
Definition: Cafetiere.java:197
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
ImageView imageCapsuleActuelle
Indicateur de la capsule actuellement sélectionnée.
Definition: Ihm.java:92
boolean informerPresenceCapsule(int position)
Méthode qui renvoie le niveau d&#39;eau.
Definition: Cafetiere.java:345
String [] nomsCapsules
Les noms des capsules.
Definition: Ihm.java:96
void changerCapsuleActuelle(int capsule)
Méthode qui modifie la capsule actuelle.
Definition: Cafetiere.java:231
TextView texteCapsuleActuelle
Le nom de la capsule actuellement sélectionnée.
Definition: Ihm.java:93
ListView listeSelectionCapsule
La liste des capsules sélectionnables.
Definition: Ihm.java:94
FrameLayout boutonSelectionBoisson
Bouton pour ouvrir/fermer la sélection des boissons.
Definition: Ihm.java:100

◆ onCreate()

com.example.ekawa.Ihm.onCreate ( Bundle  savedInstanceState)
protected

Méthode appelée à la création de l'activité

Paramètres
savedInstanceState

Définition à la ligne 311 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserIndicateurs(), com.example.ekawa.Ihm.demanderPermissions(), com.example.ekawa.Ihm.initialiserBoutonLancerCafe(), com.example.ekawa.Ihm.initialiserBoutonsIndicateurs(), com.example.ekawa.Ihm.initialiserMenu(), com.example.ekawa.Ihm.initialiserNotifications(), com.example.ekawa.Ihm.initialiserPageInformations(), com.example.ekawa.Ihm.initialiserPageParametres(), com.example.ekawa.Ihm.initialiserPageProgrammer(), com.example.ekawa.Ihm.initialiserSelectionBoisson(), et com.example.ekawa.Ihm.initialiserSelectionCapsule().

312  {
313  super.onCreate(savedInstanceState);
314  setContentView(R.layout.ihm);
315  Log.d(TAG, "Création de l'activité");
316 
317  // instancie l'objet principal de l'application
318  cafetiere = new Cafetiere(this);
319 
320  // initialise l'application
326  initialiserMenu();
332  }
void initialiserPageInformations()
Méthode qui permet d&#39;initialiser la page "Informations".
Definition: Ihm.java:716
void initialiserBoutonsIndicateurs()
Méthode qui permet d&#39;initialiser les indicateurs (bluetooth, tasse, bac, eau)
Definition: Ihm.java:429
void initialiserPageProgrammer()
Méthode qui permet d&#39;initialiser la page "Programmer".
Definition: Ihm.java:747
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
void initialiserSelectionCapsule()
Méthode qui permet d&#39;initialiser la liste de sélection des capsules.
Definition: Ihm.java:486
void initialiserPageParametres()
Méthode qui permet d&#39;initialiser la page "Parametres".
Definition: Ihm.java:916
void actualiserIndicateurs()
Méthode qui permet de mettre à jour les indicateurs (bluetooth, tasse, bac, eau)
Definition: Ihm.java:1044
void initialiserNotifications()
Méthode qui permet d&#39;initialiser la fenetre "A propos".
Definition: Ihm.java:1033
void initialiserMenu()
Méthode qui permet d&#39;initialiser le menu (page "informations", page "programmer", page "paramètres") ...
Definition: Ihm.java:625
void initialiserSelectionBoisson()
Méthode qui permet d&#39;initialiser la liste de sélection des boissons.
Definition: Ihm.java:543
void demanderPermissions()
Méthode qui permet de demander le droit de permission location.
Definition: Ihm.java:395
void initialiserBoutonLancerCafe()
Méthode qui permet d&#39;initialiser le bouton principal de l&#39;application (pour lancer le café) ...
Definition: Ihm.java:599

◆ onDestroy()

com.example.ekawa.Ihm.onDestroy ( )
protected

Méthode appelée à la destruction de l'application (après onStop() et détruite par le système Android)

Définition à la ligne 384 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.eteindre().

Référencé par com.example.ekawa.Ihm.onRequestPermissionsResult().

385  {
386  super.onDestroy();
387  cafetiere.eteindre();
388  Log.d(TAG, "onDestroy()");
389  }
void eteindre()
Méthode qui permet d&#39;éteindre le bluetooth.
Definition: Cafetiere.java:480
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ onPause()

com.example.ekawa.Ihm.onPause ( )
protected

Méthode appelée après qu'une boîte de dialogue s'est affichée (on reprend sur un onResume()) ou avant onStop() (activité plus visible)

Définition à la ligne 362 du fichier Ihm.java.

363  {
364  super.onPause();
365  Log.d(TAG, "onPause()");
366  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ onRequestPermissionsResult()

com.example.ekawa.Ihm.onRequestPermissionsResult ( int  requestCode,
String  permissions[],
int []  grantResults 
)

Méthode qui permet de gérer la réponse à la demande de permission location.

Définition à la ligne 409 du fichier Ihm.java.

Références com.example.ekawa.Cafetiere.allumer(), et com.example.ekawa.Ihm.onDestroy().

410  {
411  Log.d(TAG, "onRequestPermissionsResult()");
412  switch (requestCode)
413  {
414  case CODE_REQUETE_PERMISSION:
415  {
416  if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED)
417  cafetiere.allumer();
418  else
419  onDestroy();
420  return;
421  }
422  }
423  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
void onDestroy()
Méthode appelée à la destruction de l&#39;application (après onStop() et détruite par le système Android)...
Definition: Ihm.java:384
void allumer()
Méthode qui permet d&#39;allumer le bluetooth.
Definition: Cafetiere.java:469

◆ onResume()

com.example.ekawa.Ihm.onResume ( )
protected

Méthode appelée après onStart() ou après onPause()

Définition à la ligne 350 du fichier Ihm.java.

Références com.example.ekawa.Ihm.actualiserIndicateurs().

351  {
352  super.onResume();
353  Log.d(TAG, "onResume()");
355  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66
void actualiserIndicateurs()
Méthode qui permet de mettre à jour les indicateurs (bluetooth, tasse, bac, eau)
Definition: Ihm.java:1044

◆ onStart()

com.example.ekawa.Ihm.onStart ( )
protected

Méthode appelée au démarrage après le onCreate() ou un restart après un onStop()

Définition à la ligne 339 du fichier Ihm.java.

340  {
341  super.onStart();
342  Log.d(TAG, "onStart()");
343  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ onStop()

com.example.ekawa.Ihm.onStop ( )
protected

Méthode appelée lorsque l'activité n'est plus visible.

Définition à la ligne 373 du fichier Ihm.java.

374  {
375  super.onStop();
376  Log.d(TAG, "onStop()");
377  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

◆ reinitialiserListe()

com.example.ekawa.Ihm.reinitialiserListe ( ListView  liste)
private

Méthode qui permet de réinitialiser une liste.

Paramètres
listela liste à réinitialiser

Définition à la ligne 1205 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.initialiserFenetreProgrammer(), et com.example.ekawa.Ihm.initialiserPageProgrammer().

1206  {
1207  Log.d(TAG, "reinitialiserListe()");
1208  for(int i = 0; i < liste.getAdapter().getCount(); ++i)
1209  {
1210  liste.getChildAt(i).setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
1211  }
1212  }
static final String TAG
TAG pour les logs.
Definition: Ihm.java:66

Documentation des données membres

◆ apparenceFenetreProgrammer

View com.example.ekawa.Ihm.apparenceFenetreProgrammer
private

L'apparence de la fenêtre Programmer.

Définition à la ligne 146 du fichier Ihm.java.

◆ apparenceFenetreReinitialiserParametres

View com.example.ekawa.Ihm.apparenceFenetreReinitialiserParametres
private

L'apparence de la fenêtre réinitialiser informations des paramètres.

Définition à la ligne 160 du fichier Ihm.java.

◆ barNiveauEau

ProgressBar com.example.ekawa.Ihm.barNiveauEau
private

Indicateur du niveau d'eau (bar de progression)

Définition à la ligne 87 du fichier Ihm.java.

◆ barNiveauEauFond

ProgressBar com.example.ekawa.Ihm.barNiveauEauFond
private

Indicateur du niveau d'eau en fond.

Définition à la ligne 86 du fichier Ihm.java.

◆ boissonProgrammation

int com.example.ekawa.Ihm.boissonProgrammation = 0
private

La boisson de la programmation.

Définition à la ligne 140 du fichier Ihm.java.

◆ boutonAPropos

Button com.example.ekawa.Ihm.boutonAPropos
private

Bouton A propos.

Définition à la ligne 156 du fichier Ihm.java.

◆ boutonBac

ImageButton com.example.ekawa.Ihm.boutonBac
private

Bouton indicateur du bac.

Définition à la ligne 85 du fichier Ihm.java.

◆ boutonBluetooth

ImageButton com.example.ekawa.Ihm.boutonBluetooth
private

Bouton indicateur du Bluetooth.

Les widgets

Définition à la ligne 83 du fichier Ihm.java.

◆ boutonLancerCafe

FrameLayout com.example.ekawa.Ihm.boutonLancerCafe
private

Bouton central : lancer un café

Définition à la ligne 109 du fichier Ihm.java.

◆ boutonPageInformations

LinearLayout com.example.ekawa.Ihm.boutonPageInformations
private

Bouton pour ouvrir/fermer la page Informations.

Définition à la ligne 112 du fichier Ihm.java.

◆ boutonPageParametres

LinearLayout com.example.ekawa.Ihm.boutonPageParametres
private

Bouton pour ouvrir/fermer la page Parametres.

Définition à la ligne 114 du fichier Ihm.java.

◆ boutonPageProgrammer

LinearLayout com.example.ekawa.Ihm.boutonPageProgrammer
private

Bouton pour ouvrir/fermer la page Programmer.

Définition à la ligne 113 du fichier Ihm.java.

◆ boutonReinitialiserInformations

Button com.example.ekawa.Ihm.boutonReinitialiserInformations
private

Bouton de réinitialisation des données de la cafetière.

Définition à la ligne 155 du fichier Ihm.java.

◆ boutonSelectionBoisson

FrameLayout com.example.ekawa.Ihm.boutonSelectionBoisson
private

Bouton pour ouvrir/fermer la sélection des boissons.

Définition à la ligne 100 du fichier Ihm.java.

◆ boutonSelectionCapsule

FrameLayout com.example.ekawa.Ihm.boutonSelectionCapsule
private

Bouton pour ouvrir/fermer la sélection des capsules.

Définition à la ligne 91 du fichier Ihm.java.

◆ boutonTasse

ImageButton com.example.ekawa.Ihm.boutonTasse
private

Bouton indicateur de la tasse.

Définition à la ligne 84 du fichier Ihm.java.

◆ capsuleProgrammation

int com.example.ekawa.Ihm.capsuleProgrammation = 0
private

La capsule de la programmation.

Définition à la ligne 139 du fichier Ihm.java.

◆ dureteEau

EditText com.example.ekawa.Ihm.dureteEau
private

Bouton réinitialiser la dureté de l'eau.

Définition à la ligne 168 du fichier Ihm.java.

◆ fenetreAProposParametres

AlertDialog com.example.ekawa.Ihm.fenetreAProposParametres
private

La fenêtre a propos des parametres.

Définition à la ligne 163 du fichier Ihm.java.

◆ fenetreInformations

AlertDialog com.example.ekawa.Ihm.fenetreInformations
private

La fenêtre Informations.

Définition à la ligne 133 du fichier Ihm.java.

◆ fenetreProgrammer

AlertDialog com.example.ekawa.Ihm.fenetreProgrammer
private

La fenêtre Programmer.

Définition à la ligne 145 du fichier Ihm.java.

◆ fenetreReinitialiserParametres

AlertDialog com.example.ekawa.Ihm.fenetreReinitialiserParametres
private

La fenêtre réinitialiser informations des paramètres.

Définition à la ligne 159 du fichier Ihm.java.

◆ gestionnaireNotification

NotificationManager com.example.ekawa.Ihm.gestionnaireNotification
private

Le gestionnaire de notification.

Définition à la ligne 174 du fichier Ihm.java.

◆ heureProgrammer

TimePicker com.example.ekawa.Ihm.heureProgrammer
private

La sélection de l'heure.

Définition à la ligne 151 du fichier Ihm.java.

◆ identifiantsImagesBoisson

Integer [] com.example.ekawa.Ihm.identifiantsImagesBoisson
private

Les images des boissons.

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

◆ identifiantsImagesCapsules

Integer [] com.example.ekawa.Ihm.identifiantsImagesCapsules
private

Les images des capsules.

Définition à la ligne 97 du fichier Ihm.java.

◆ imageBoissonActuelle

ImageView com.example.ekawa.Ihm.imageBoissonActuelle
private

Indicateur de la boisson actuellement sélectionnée.

Définition à la ligne 101 du fichier Ihm.java.

◆ imageCapsuleActuelle

ImageView com.example.ekawa.Ihm.imageCapsuleActuelle
private

Indicateur de la capsule actuellement sélectionnée.

Définition à la ligne 92 du fichier Ihm.java.

◆ listeBoissonProgrammer

ListView com.example.ekawa.Ihm.listeBoissonProgrammer
private

La liste des boissons de la fenêtre Programmer.

Définition à la ligne 149 du fichier Ihm.java.

◆ listeCapsuleInformations

ListView com.example.ekawa.Ihm.listeCapsuleInformations
private

La liste des capsules de la page Informations.

Définition à la ligne 130 du fichier Ihm.java.

◆ listeCapsuleProgrammer

ListView com.example.ekawa.Ihm.listeCapsuleProgrammer
private

La liste des capsules de la fenêtre Programmer.

Définition à la ligne 148 du fichier Ihm.java.

◆ listeProgrammer

ListView com.example.ekawa.Ihm.listeProgrammer
private

La liste des programmations.

Définition à la ligne 142 du fichier Ihm.java.

◆ listeSelectionBoisson

ListView com.example.ekawa.Ihm.listeSelectionBoisson
private

La liste des boissons sélectionnables.

Définition à la ligne 103 du fichier Ihm.java.

◆ listeSelectionCapsule

ListView com.example.ekawa.Ihm.listeSelectionCapsule
private

La liste des capsules sélectionnables.

Définition à la ligne 94 du fichier Ihm.java.

◆ modeProgrammer

boolean com.example.ekawa.Ihm.modeProgrammer
private

Le mode de la fenêtre Programmer.

Définition à la ligne 136 du fichier Ihm.java.

◆ nombreBacVide

Switch com.example.ekawa.Ihm.nombreBacVide
private

Bouton réinitialiser le nombre de bac vidé au total.

Définition à la ligne 166 du fichier Ihm.java.

◆ nombreCafe

Switch com.example.ekawa.Ihm.nombreCafe
private

Bouton réinitialiser le nombre de cafés effectués au total par la machine de la fenêtre Parametres.

Définition à la ligne 165 du fichier Ihm.java.

◆ nombreEauRemplie

Switch com.example.ekawa.Ihm.nombreEauRemplie
private

Bouton réinitialiser le nombre de réservoir d'eau remplie.

Définition à la ligne 167 du fichier Ihm.java.

◆ nomsBoisson

String [] com.example.ekawa.Ihm.nomsBoisson
private

Les noms des boissons.

Définition à la ligne 105 du fichier Ihm.java.

◆ nomsCapsules

String [] com.example.ekawa.Ihm.nomsCapsules
private

Les noms des capsules.

Définition à la ligne 96 du fichier Ihm.java.

◆ pageInformations

LinearLayout com.example.ekawa.Ihm.pageInformations
private

La page Informations.

Définition à la ligne 115 du fichier Ihm.java.

◆ pageParametres

LinearLayout com.example.ekawa.Ihm.pageParametres
private

La page Parametres.

Définition à la ligne 119 du fichier Ihm.java.

◆ pageProgrammer

LinearLayout com.example.ekawa.Ihm.pageProgrammer
private

La page Programmer.

Définition à la ligne 117 du fichier Ihm.java.

◆ parametresFenetreAProposParametres

AlertDialog.Builder com.example.ekawa.Ihm.parametresFenetreAProposParametres
private

Les paramètres de la fenêtre a propos des paramètres.

Définition à la ligne 162 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.actualiserPageParametres(), et com.example.ekawa.Ihm.initialiserFenetreAProposParametres().

◆ parametresFenetreInformations

AlertDialog.Builder com.example.ekawa.Ihm.parametresFenetreInformations
private

Les paramètres de la fenêtre Informations.

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

Référencé par com.example.ekawa.Ihm.initialiserPageInformations().

◆ parametresFenetreProgrammer

AlertDialog.Builder com.example.ekawa.Ihm.parametresFenetreProgrammer
private

Les paramètres de la fenêtre Programmer.

Définition à la ligne 144 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.initialiserFenetreProgrammer(), et com.example.ekawa.Ihm.initialiserPageProgrammer().

◆ parametresFenetreReinitialiserParametres

AlertDialog.Builder com.example.ekawa.Ihm.parametresFenetreReinitialiserParametres
private

Les paramètres de la fenêtre réinitialiser informations des paramètres.

Définition à la ligne 158 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.initialiserFenetreReinitialiserParametres().

◆ parametresNotification

Notification.Builder com.example.ekawa.Ihm.parametresNotification
private

Le créateur de notification.

Définition à la ligne 173 du fichier Ihm.java.

Référencé par com.example.ekawa.Ihm.envoyerNotification(), et com.example.ekawa.Ihm.initialiserNotifications().

◆ positionProgrammer

int com.example.ekawa.Ihm.positionProgrammer
private

la position de la programmation

Définition à la ligne 137 du fichier Ihm.java.

◆ programmations

Switch com.example.ekawa.Ihm.programmations
private

Bouton réinitialiser les programmations.

Définition à la ligne 170 du fichier Ihm.java.

◆ qualiteEau

EditText com.example.ekawa.Ihm.qualiteEau
private

Bouton réinitialiser la qualité de l'eau.

Définition à la ligne 169 du fichier Ihm.java.

◆ simulateur

Switch com.example.ekawa.Ihm.simulateur
private

Bouton réinitialiser le réservoir d'eau, le bac et le magasin.

Définition à la ligne 171 du fichier Ihm.java.

◆ spinnerFrequenceProgrammer

Spinner com.example.ekawa.Ihm.spinnerFrequenceProgrammer
private

La sélection de la fréquence.

Définition à la ligne 152 du fichier Ihm.java.

◆ spinnerJourProgrammer

Spinner com.example.ekawa.Ihm.spinnerJourProgrammer
private

La sélection du jour de la semaine.

Définition à la ligne 150 du fichier Ihm.java.

◆ TAG

final String com.example.ekawa.Ihm.TAG = "_Ihm"
staticprivate

TAG pour les logs.

Constantes

Définition à la ligne 66 du fichier Ihm.java.

◆ texteBoissonActuelle

TextView com.example.ekawa.Ihm.texteBoissonActuelle
private

Le nom de la boisson actuellement sélectionnée.

Définition à la ligne 102 du fichier Ihm.java.

◆ texteCapsuleActuelle

TextView com.example.ekawa.Ihm.texteCapsuleActuelle
private

Le nom de la capsule actuellement sélectionnée.

Définition à la ligne 93 du fichier Ihm.java.

◆ texteDureteEau

TextView com.example.ekawa.Ihm.texteDureteEau
private

Le texte affichant la dureté de l'eau.

Définition à la ligne 128 du fichier Ihm.java.

◆ texteNbBac

TextView com.example.ekawa.Ihm.texteNbBac
private

Le texte affichant le nombre de bac vidé au total.

Définition à la ligne 126 du fichier Ihm.java.

◆ texteNbCafe

TextView com.example.ekawa.Ihm.texteNbCafe
private

Le texte affichant le nombre de cafés éffectués au total par la machine.

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

◆ texteNbCafeJour

TextView com.example.ekawa.Ihm.texteNbCafeJour
private

Le texte affichant le nombre de cafés effectués par l'utilisateur du jour.

Définition à la ligne 123 du fichier Ihm.java.

◆ texteNbEau

TextView com.example.ekawa.Ihm.texteNbEau
private

Le texte affichant le nombre de réservoir d'eau remplie.

Définition à la ligne 127 du fichier Ihm.java.

◆ texteNiveauEau

TextView com.example.ekawa.Ihm.texteNiveauEau
private

Indicateur du niveau d'eau (texte)

Définition à la ligne 88 du fichier Ihm.java.

◆ texteNomCafetiere

TextView com.example.ekawa.Ihm.texteNomCafetiere
private

Le texte affichant le nom de la cafetière connectée.

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

◆ texteQualiteEau

TextView com.example.ekawa.Ihm.texteQualiteEau
private

Le texte affichant la qualité de l'eau.

Définition à la ligne 129 du fichier Ihm.java.

◆ visibiliteListeSelectionBoisson

boolean com.example.ekawa.Ihm.visibiliteListeSelectionBoisson = false
private

La visibilité de la liste de boisson.

Définition à la ligne 104 du fichier Ihm.java.

◆ visibiliteListeSelectionCapsule

boolean com.example.ekawa.Ihm.visibiliteListeSelectionCapsule = false
private

La visibilité de la liste de capsule.

Définition à la ligne 95 du fichier Ihm.java.

◆ visibilitePageInformations

boolean com.example.ekawa.Ihm.visibilitePageInformations = false
private

La visibilité de la page Informations.

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

◆ visibilitePageParametres

boolean com.example.ekawa.Ihm.visibilitePageParametres = false
private

La visibilité de la page Parametres.

Définition à la ligne 120 du fichier Ihm.java.

◆ visibilitePageProgrammer

boolean com.example.ekawa.Ihm.visibilitePageProgrammer = false
private

La visibilité de la page Programmer.

Définition à la ligne 118 du fichier Ihm.java.


La documentation de cette classe a été générée à partir du fichier suivant :