1 package com.example.area;
3 import androidx.annotation.ColorRes;
4 import androidx.annotation.NonNull;
5 import androidx.appcompat.app.ActionBar;
6 import androidx.appcompat.app.AppCompatActivity;
7 import androidx.appcompat.widget.Toolbar;
9 import android.app.AlertDialog;
10 import android.bluetooth.BluetoothAdapter;
11 import android.bluetooth.BluetoothDevice;
12 import android.content.DialogInterface;
13 import android.content.Intent;
14 import android.graphics.Color;
15 import android.os.Bundle;
16 import android.os.CountDownTimer;
17 import android.os.Handler;
18 import android.os.Message;
19 import android.util.Log;
20 import android.view.Gravity;
21 import android.view.LayoutInflater;
22 import android.view.Menu;
23 import android.view.MenuItem;
24 import android.view.View;
25 import android.widget.Button;
26 import android.widget.ImageView;
27 import android.widget.TextView;
28 import android.widget.Toast;
30 import java.lang.reflect.Array;
32 import java.util.Vector;
53 private static final String
TAG =
"_IHMGestionPartie";
117 int nbManchesAAfficher = 0;
126 super.onCreate(savedInstanceState);
127 setContentView(R.layout.ihm_gestion_partie);
128 Log.d(TAG,
"onCreate()");
153 Log.d(TAG,
"onStart()");
163 Log.d(TAG,
"onResume()");
173 Log.d(TAG,
"onPause()");
183 Log.d(TAG,
"onStop()");
194 Log.d(TAG,
"onDestroy()");
203 for(
int i = 0; i < modulesAffichage.size(); i++)
205 modulesAffichage.elementAt(i).deconnecter();
216 tiret = findViewById(R.id.tiret);
220 LayoutInflater layoutInflater = getLayoutInflater();
221 layoutNet = layoutInflater.inflate(R.layout.toast_net,findViewById(R.id.layout_toast_net));
222 net = layoutNet.findViewById(R.id.texte_net);
223 toastNet =
new Toast(getApplicationContext());
225 imageConnexionModuleNet = findViewById(R.id.imageConnexionModuleNet);
226 connexionModuleNet = findViewById(R.id.connexionModuleNet);
228 imageConnexionModuleAfficheur = findViewById(R.id.imageConnexionModuleAfficheur);
229 connexionModuleAfficheur = findViewById(R.id.connexionModuleAfficheur);
231 imageConnexionModuleScore = findViewById(R.id.imageConnexionModuleScore);
232 connexionModuleScore = findViewById(R.id.connexionModuleScore);
234 timer = findViewById(R.id.timer);
235 messageTimer = findViewById(R.id.messageTimer);
236 boutonInterruptionTimer = findViewById(R.id.boutonInterruptionTimer);
247 nomJoueurB = findViewById(R.id.nomJoueurB);
248 prenomJoueurB = findViewById(R.id.prenomJoueurB);
249 nomDeuxiemeJoueurB = findViewById(R.id.nomDeuxiemeJoueurB);
250 prenomDeuxiemeJoueurB = findViewById(R.id.prenomDeuxiemeJoueurB);
251 boutonRetirerPointJoueurB = findViewById(R.id.boutonRetirerPointJoueurB);
252 boutonAjouterPointJoueurB = findViewById(R.id.boutonAjouterPointJoueurB);
253 imageServeurJoueurB = findViewById(R.id.imageServeurJoueurB);
254 imageServeurDeuxiemeJoueurB = findViewById(R.id.imageServeurDeuxiemeJoueurB);
255 boutonTempsMortJoueurB = findViewById(R.id.boutonTempsMortJoueurB);
256 pointsJoueurB = findViewById(R.id.pointsJoueurB);
257 manchesJoueurB = findViewById(R.id.manchesJoueurB);
265 nomJoueurA = findViewById(R.id.nomJoueurA);
266 prenomJoueurA = findViewById(R.id.prenomJoueurA);
267 nomDeuxiemeJoueurA = findViewById(R.id.nomDeuxiemeJoueurA);
268 prenomDeuxiemeJoueurA = findViewById(R.id.prenomDeuxiemeJoueurA);
269 boutonRetirerPointJoueurA = findViewById(R.id.boutonRetirerPointJoueurA);
270 boutonAjouterPointJoueurA = findViewById(R.id.boutonAjouterPointJoueurA);
271 imageServeurJoueurA = findViewById(R.id.imageServeurJoueurA);
272 imageServeurDeuxiemeJoueurA = findViewById(R.id.imageServeurDeuxiemeJoueurA);
273 boutonTempsMortJoueurA = findViewById(R.id.boutonTempsMortJoueurA);
274 pointsJoueurA = findViewById(R.id.pointsJoueurA);
275 manchesJoueurA = findViewById(R.id.manchesJoueurA);
283 Log.d(TAG,
"Changement de côté");
284 if (nomJoueurA.getId() == R.id.nomJoueurA)
286 nomJoueurA = findViewById(R.id.nomJoueurB);
287 prenomJoueurA = findViewById(R.id.prenomJoueurB);
288 nomDeuxiemeJoueurA = findViewById(R.id.nomDeuxiemeJoueurB);
289 prenomDeuxiemeJoueurA = findViewById(R.id.prenomDeuxiemeJoueurB);
290 boutonRetirerPointJoueurA = findViewById(R.id.boutonRetirerPointJoueurB);
291 boutonAjouterPointJoueurA = findViewById(R.id.boutonAjouterPointJoueurB);
292 imageServeurJoueurA = findViewById(R.id.imageServeurJoueurB);
293 imageServeurDeuxiemeJoueurA = findViewById(R.id.imageServeurDeuxiemeJoueurB);
294 boutonTempsMortJoueurA = findViewById(R.id.boutonTempsMortJoueurB);
295 pointsJoueurA = findViewById(R.id.pointsJoueurB);
296 manchesJoueurA = findViewById(R.id.manchesJoueurB);
298 nomJoueurB = findViewById(R.id.nomJoueurA);
299 prenomJoueurB = findViewById(R.id.prenomJoueurA);
300 nomDeuxiemeJoueurB = findViewById(R.id.nomDeuxiemeJoueurA);
301 prenomDeuxiemeJoueurB = findViewById(R.id.prenomDeuxiemeJoueurA);
302 boutonRetirerPointJoueurB = findViewById(R.id.boutonRetirerPointJoueurA);
303 boutonAjouterPointJoueurB = findViewById(R.id.boutonAjouterPointJoueurA);
304 imageServeurJoueurB = findViewById(R.id.imageServeurJoueurA);
305 imageServeurDeuxiemeJoueurB = findViewById(R.id.imageServeurDeuxiemeJoueurA);
306 boutonTempsMortJoueurB = findViewById(R.id.boutonTempsMortJoueurA);
307 pointsJoueurB = findViewById(R.id.pointsJoueurA);
308 manchesJoueurB = findViewById(R.id.manchesJoueurA);
360 imageConnexionModuleNet.setColorFilter(Color.RED);
361 connexionModuleNet.setText(TEXTE_CONNEXION_MODULE_NET);
362 imageConnexionModuleAfficheur.setColorFilter(Color.RED);
363 connexionModuleAfficheur.setText(TEXTE_CONNEXION_MODULE_AFFICHEUR);
364 imageConnexionModuleScore.setColorFilter(Color.RED);
365 connexionModuleScore.setText(TEXTE_CONNEXION_MODULE_SCORE);
374 net.setText(TEXTE_TOAST_NET);
375 toastNet.setDuration(Toast.LENGTH_LONG);
376 toastNet.setGravity(Gravity.TOP, 0, 150);
377 toastNet.setView(layoutNet);
385 boutonAjouterPointJoueurA.setText(TEXTE_BOUTON_AJOUTER_POINT);
386 boutonRetirerPointJoueurA.setText(TEXTE_BOUTON_RETIRER_POINT);
387 boutonTempsMortJoueurA.setText(TEXTE_BOUTON_TEMPS_MORT);
395 boutonAjouterPointJoueurB.setText(TEXTE_BOUTON_AJOUTER_POINT);
396 boutonRetirerPointJoueurB.setText(TEXTE_BOUTON_RETIRER_POINT);
397 boutonTempsMortJoueurB.setText(TEXTE_BOUTON_TEMPS_MORT);
405 this.handler =
new Handler(this.getMainLooper())
408 public void handleMessage(@NonNull Message message)
410 Log.d(TAG,
"[Handler] id du message = " + message.what);
411 Log.d(TAG,
"[Handler] contenu du message = " + message.obj.toString());
413 switch (message.what)
416 Log.d(TAG,
"[Handler] CREATION_SOCKET = " + message.obj.toString());
419 Log.d(TAG,
"[Handler] CONNEXION_SOCKET = " + message.obj.toString());
421 if (message.obj.toString().equals(modulesAffichage.elementAt(INDEX_MODULE_AFFICHEUR).getNomModule()))
423 if (message.obj.toString().equals(modulesAffichage.elementAt(INDEX_MODULE_SCORE).getNomModule()))
431 Log.d(TAG,
"[Handler] DECONNEXION_SOCKET = " + message.obj.toString());
451 for(
int i = 0; i < modulesAffichage.size(); i++)
462 for(
int i = 0; i < modulesAffichage.size(); i++)
473 for(
int i = 0; i < modulesAffichage.size(); i++)
481 for(
int i = 0; i < modulesAffichage.size(); i++)
498 modulesAffichage =
new Vector<LiaisonBluetooth>();
503 for (
int i = 0; i < modulesAffichage.size(); i++)
505 modulesAffichage.elementAt(i).connecter();
515 boutonAjouterPointJoueurA.setOnClickListener(
new View.OnClickListener()
520 boutonAjouterPointJoueurB.setOnClickListener(
new View.OnClickListener()
525 boutonRetirerPointJoueurA.setOnClickListener(
new View.OnClickListener()
530 boutonRetirerPointJoueurB.setOnClickListener(
new View.OnClickListener()
535 boutonInterruptionTimer.setOnClickListener(
new View.OnClickListener()
537 public void onClick(View v)
540 if (messageTimer.getText().equals(TEXTE_CHANGEMENT_COTE))
552 boutonTempsMortJoueurA.setOnClickListener(
new View.OnClickListener()
554 public void onClick(View v)
558 demarrerDecompte(DUREE_TEMPS_MORT, TEXTE_TEMPS_MORT, TEXTE_BOUTON_REPRENDRE);
560 boutonTempsMortJoueurA.setEnabled(
false);
565 boutonTempsMortJoueurB.setOnClickListener(
new View.OnClickListener()
567 public void onClick(View v)
571 demarrerDecompte(DUREE_TEMPS_MORT, TEXTE_TEMPS_MORT, TEXTE_BOUTON_REPRENDRE);
573 boutonTempsMortJoueurB.setEnabled(
false);
584 Log.d(TAG,
"retirerPointJoueurB");
595 Log.d(TAG,
"retirerPointJoueurA");
617 Log.d(TAG,
"ajouterPointJoueurB");
627 Log.d(TAG,
"ajouterPointJoueurA");
637 int nbManchesAffichees = 0;
638 if (!manchesJoueurA.getText().toString().equals(
""))
639 nbManchesAffichees = Integer.parseInt(manchesJoueurA.getText().toString()) + Integer.parseInt(manchesJoueurB.getText().toString());
640 if (nbManchesAffichees == partie.
getManches().size())
656 nomJoueurA.setText(joueursA.elementAt(0).getNom() +
" ");
657 prenomJoueurA.setText(joueursA.elementAt(0).getPrenom());
659 if(joueursA.size() > 1)
661 nomDeuxiemeJoueurA.setText(joueursA.elementAt(1).getNom() +
" ");
662 prenomDeuxiemeJoueurA.setText(joueursA.elementAt(1).getPrenom());
673 nomJoueurB.setText(joueursB.elementAt(0).getNom() +
" ");
674 prenomJoueurB.setText(joueursB.elementAt(0).getPrenom());
676 if(joueursB.size() > 1)
678 nomDeuxiemeJoueurB.setText(joueursB.elementAt(1).getNom() +
" ");
679 prenomDeuxiemeJoueurB.setText(joueursB.elementAt(1).getPrenom());
688 Log.d(TAG,
"afficherScore()");
689 String texteManchesJoueurA = manchesJoueurA.getText().toString();
690 String texteManchesJoueurB = manchesJoueurB.getText().toString();
691 int nbManchesAffichees = 0;
692 if (!manchesJoueurA.getText().toString().equals(
""))
693 nbManchesAffichees = Integer.parseInt(manchesJoueurA.getText().toString()) + Integer.parseInt(manchesJoueurB.getText().toString());
701 if (nbManchesAAfficher != partie.
getManches().size())
703 pointsJoueurA.setText(partie.
getManches().lastElement().elementAt(0).toString());
704 pointsJoueurB.setText(partie.
getManches().lastElement().elementAt(1).toString());
705 manchesJoueurA.setText(texteManchesJoueurA);
706 manchesJoueurB.setText(texteManchesJoueurB);
713 demarrerDecompte(DUREE_CHANGEMENT_COTE,TEXTE_CHANGEMENT_COTE,TEXTE_BOUTON_REPRENDRE);
715 nbManchesAAfficher++;
728 messageTimer.setText(message);
729 boutonInterruptionTimer.setText(texteBoutonInterruption);
730 boutonInterruptionTimer.setVisibility(Button.VISIBLE);
732 decompte =
new CountDownTimer(duree, 1000)
735 public void onTick(
long millisUntilFinished) {
736 timer.setText(Long.toString(millisUntilFinished / 1000));
739 public void onFinish() {
745 if (message.equals(TEXTE_CHANGEMENT_COTE))
757 messageTimer.setText(
"");
758 boutonInterruptionTimer.setText(
"");
759 boutonInterruptionTimer.setVisibility(Button.INVISIBLE);
769 int indexServeur = joueursA.indexOf(serveur);
770 String nomCompletServeur = serveur.
getNom() +
" " + serveur.
getPrenom();
774 if(indexServeur != -1)
776 if (nomCompletServeur.equals((String)nomJoueurA.getText()+prenomJoueurA.getText()))
777 imageServeurJoueurA.setVisibility(View.VISIBLE);
779 imageServeurDeuxiemeJoueurA.setVisibility(View.VISIBLE);
783 if (nomCompletServeur.equals((String)nomJoueurB.getText()+prenomJoueurB.getText()))
784 imageServeurJoueurB.setVisibility(View.VISIBLE);
786 imageServeurDeuxiemeJoueurB.setVisibility(View.VISIBLE);
795 imageServeurJoueurA.setVisibility(View.INVISIBLE);
796 imageServeurDeuxiemeJoueurA.setVisibility(View.INVISIBLE);
797 imageServeurJoueurB.setVisibility(View.INVISIBLE);
798 imageServeurDeuxiemeJoueurB.setVisibility(View.INVISIBLE);
828 imageConnexionModule.setColorFilter(Color.RED);
830 imageConnexionModule.setColorFilter(Color.GREEN);
838 boolean etatBouton =
true;
839 if (boutonAjouterPointJoueurA.isEnabled())
841 boutonAjouterPointJoueurA.setEnabled(etatBouton);
842 boutonAjouterPointJoueurB.setEnabled(etatBouton);
843 boutonRetirerPointJoueurA.setEnabled(etatBouton);
844 boutonRetirerPointJoueurB.setEnabled(etatBouton);
845 boutonTempsMortJoueurA.setEnabled(etatBouton);
846 boutonTempsMortJoueurB.setEnabled(etatBouton);
852 boutonTempsMortJoueurA.setEnabled(
true);
854 boutonTempsMortJoueurA.setEnabled(
false);
857 boutonTempsMortJoueurB.setEnabled(
true);
859 boutonTempsMortJoueurB.setEnabled(
false);
868 Log.d(TAG,
"finish()");
876 setResult(RESULT_OK, intent);
void afficherScore()
Affiche les points et les manches gagnées des joueurs de la partie.
void onResume()
Méthode appelée après onStart() ou après onPause()
void changerEtatConnexionBluetooth(ImageView imageConnexionModule, boolean estConnecte)
Affiche une image rouge ou verte en fonction du booleen passé en paramètre.
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...
static final int DUREE_CHANGEMENT_COTE
void setTempsMortsJoueursA(int tempsMortsJoueursA)
Mutateur de l'attribut tempsMortsJoueursA.
void cacherDecompte()
Cache tout les affichages lié au décompte.
static final String TEXTE_CHANGEMENT_COTE
Button boutonInterruptionTimer
static final int DUREE_TEMPS_MORT
static final int RECEPTION_TRAME
void envoyerTramesEtatPartie()
Envoie une trame étatPartie à tout les modules d'affichage connectés.
TextView prenomDeuxiemeJoueurA
!< L'affichage du nom du deuxième joueur de l'équipe A
Toast toastNet
Le toast apparaissant lors d'un NET.
static final String TEXTE_TEMPS_MORT
static final String TEXTE_TOAST_NET
Le texte apparissant dans le toast affichant un NET.
Button boutonAjouterPointJoueurA
Le bouton permettant d'ajouter un point au(x) joueur(s) A.
Button boutonTempsMortJoueurB
Le bouton permettant de déclencher un temps mort pour le(s) joueur(s) A.
ImageView imageServeurDeuxiemeJoueurB
Icone signifiant que le deuxième joueur de l'équipe A doit servir.
int getManchesJoueursB()
Accesseur de l'attribut manchesJoueursB.
void initialiserLiaisonBluetooth()
Initialise la liaison Bluetooth.
Vector< Joueur > getJoueursA()
Accesseur de l'attribut joueursA.
TextView connexionModuleNet
Le texte devant l'image permettant d'indiquer l'état de la connexion au module NET.
static final int TRAME_AFFICHEUR_SCORE
code pour une trame afficheur de score
Les détails du protocole AREA.
void retirerPointJoueurB()
Méthode appelée pour retirer un point au joueur B.
void initialiserRessourcesIHM()
Initialise les ressources graphiques de l'activité
void ajouterPointJoueursB()
Méthode permettant d'incrémenter le score des joueursB.
ImageView imageServeurJoueurA
Icone signifiant que le premier joueur de l'équipe A doit servir.
void afficherEtatConnexionBluetooth(String nomModule, boolean estConnecte)
Affiche l'état de la connexion bluetooth des modules.
Button boutonRetirerPointJoueurB
Le bouton permettant de retirer un point au(x) joueur(s) B.
void afficherNomsJoueursB()
Affiche le nom et le prénom des JoueursB.
TextView pointsJoueurB
L'affichage des points du ou des joueur(s) A.
static final String TAG
TAG pour les logs.
TextView nomDeuxiemeJoueurB
L'affichage du nom du deuxième joueur de l'équipe B.
static final String NOM_MODULE_NET
nom du module NET
static final String NOM_MODULE_AFFICHEUR_AREA
nom du module AFFICHEUR
static final int CONNEXION_SOCKET
String getNom()
Accesseur de l'attribut nom.
void permuterCoteIHM()
Passe le(s) joueur(s) de gauche à droite et inversement.
void retirerPointJoueursA()
Méthode permettant de décrémenter le score des joueursA.
TextView manchesJoueurB
L'affichage du nombre de manches du ou des joueur(s) A.
ImageView imageConnexionModuleAfficheur
L'image permettant d'indiquer l'état de la connexion au module Afficheur.
L'activité de gestion d'une partie de l'application AREA.
TextView prenomDeuxiemeJoueurB
L'affichage du prénom du deuxième joueur de l'équipe B.
void envoyer(String donnees)
Méthode pour envoyer des données.
void onStop()
Méthode appelée lorsque l'activité n'est plus visible.
static final String TRAME_SERVICE
la trame d'initialistaion du mode détection
TextView prenomJoueurA
L'affichage du prénom du premier joueur de l'équipe A.
Vector< Joueur > getJoueursB()
Accesseur de l'attribut joueursB.
TextView prenomJoueurB
L'affichage du prénom du premier joueur de l'équipe B.
static final String ID_INTENT_POSITION_INVERSE
Identifiant de l'Intent permettant d'informer IHMGestionPartie de la position des joueurs...
Button boutonRetirerPointJoueurA
Le bouton permettant de retirer un point au(x) joueur(s) A.
static final int INDEX_MODULE_AFFICHEUR
String getPrenom()
Accesseur de l'attribut prenom.
void deconnecterModules()
Déconnecte tout les modules connectés.
void ajouterPointJoueursA()
Méthode permettant d'incrémenter le score des joueursA.
void afficherServeur()
Affiche une image devant le nom du serveur.
static String fabriquerTrameAfficheur(int typeTrame, Partie partie)
Méthode permettant de fabiquer les trames à destination du module Afficheur.
static final String TEXTE_BOUTON_AJOUTER_POINT
Le texte des boutons pour ajouter un point.
static boolean verifierTrameNet(String trame)
Méthode permettant de vérifier l'intégrité d'une trame NET.
Vector< Vector< Integer > > getManches()
static final int CREATION_SOCKET
int getTempsMortsJoueursA()
Accesseur de l'attribut tempsMortsJoueursA.
void afficherConnexionModulesBluetooth()
Affiche les ressources pour le Bluetooth des modules.
void deconnecter()
Méthode pour fermer la connexion avec un appareil.
static final String NOM_MODULE_SCORE_AREA
nom du module SCORE
void retirerPointJoueurA()
Méthode appelée pour retirer un point au joueur A.
void afficherNet()
Affiche les ressources pour le NET.
void terminerSet(Partie partie)
Permet d'effectuer une requete pour terminer un set.
void connecter()
Méthode pour ouvrir la connexion avec un appareil.
static String fabriquerTramePosition(boolean estADroite)
static final String ID_INTENT_LANCEMENT_PARTIE
Identifiant de l'Intent permettant de lancer l'activité IHMGestionPartie.
LiaisonBluetooth liaisonModuleNet
void actualiserAffichageAjoutPoint()
Actualise l'affichage et décelenche l'envoi de trames lors de l'ajout d'un point. ...
void connecterBoutons()
Définit le comportement des boutons.
TextView nomJoueurA
L'affichage du nom du premier joueur de l'équipe A.
void actualiserEtatBoutonTempsMorts()
ImageView imageServeurJoueurB
Icone signifiant que le premier joueur de l'équipe A doit servir.
void afficherNomsJoueursA()
Affiche le nom et le prénom des JoueursA.
void onCreate(Bundle savedInstanceState)
Méthode appelée à la création de l'activité
void finish()
Termine l'activité
static final String TEXTE_CONNEXION_MODULE_NET
Le texte permettant d'indiquer l'état de la connexion au module NET.
void recupererRessourcesJoueurB()
Recupère les ressources graphiques relatives au joueur B.
void ajouterPointJoueurA()
Méthode appelée pour ajouter un point au joueur A.
TextView nomJoueurB
L'affichage du nom du premier joueur de l'équipe B.
void envoyerTramesScore()
Envoie une trame score à tout les modules d'affichage connectés.
void afficherBoutonsEquipeA()
Affiche les boutons pour l'équipe A.
void ajouterPointJoueurB()
Méthode appelée pour ajouter un point au joueur B.
TextView manchesJoueurA
L'affichage du nombre de manches du ou des joueur(s) A.
static final String TEXTE_CONNEXION_MODULE_SCORE
Le texte permettant d'indiquer l'état du module Score.
void initialiserHandler()
Initialise le handler permettant le passage des Messages (trames reçues) entre les classes LiaisonBlu...
ImageView imageServeurDeuxiemeJoueurA
Icone signifiant que le deuxième joueur de l'équipe A doit servir.
ImageView imageConnexionModuleNet
L'image permettant d'indiquer l'état de la connexion au module NET.
int getTempsMortsJoueursB()
Accesseur de l'attribut tempsMortsJoueursB.
void onDestroy()
Méthode appelée à la destruction de l'application (après onStop() et détruite par le système Android)...
void envoyerTramesAfficheurDernierPoint()
Button boutonTempsMortJoueurA
Le bouton permettant de déclencher un temps mort pour le(s) joueur(s) A.
TextView connexionModuleAfficheur
Le texte devant l'image permettant d'indiquer l'état de la connexion au module Afficheur.
Permet de gérer la communication bluetooth.
Joueur getServeur()
Trouve le serveur et le retourne.
Classe permettant de manipuler la base de données.
TextView net
Le text dans le toast apparaissant lors d'un NET.
static final String TEXTE_BOUTON_TEMPS_MORT
Le texte des boutons de temps mort.
void recupererRessourcesJoueurA()
Recupère les ressources graphiques relatives au joueur A.
TextView tiret
Tiret séparant les scores.
int getPointsJoueursA()
Accesseur de l'attribut pointsJoueursA.
TextView connexionModuleScore
Le texte devant l'image permettant d'indiquer l'état de la connexion au module Score.
static final String ID_INTENT_FIN_PARTIE
Identifiant de l'Intent permettant recu de l'activité IHMGestionPartie.
void initialiserPositions()
static final int INDEX_MODULE_SCORE
void renitialiserAffichageServeur()
Réinitialise l'affichage du serveur.
Classe regroupant les informations d'un joueur.
void inverserEtatBoutons()
Active ou désactive les boutons selon leur état initial.
void demarrerDecompte(long duree, String message, String texteBoutonInterruption)
Démarre un décompte s'affichant au centre de l'écran.
static final int DECONNEXION_SOCKET
void retirerPointJoueursB()
Méthode permettant de décrémenter le score des joueursB.
TextView nomDeuxiemeJoueurA
static final int TRAME_AFFICHEUR_ETAT_PARTIE
code pour une trame afficheur d'état de partie
static final int TRAME_AFFICHEUR_NET
code pour une trame afficheur NET
void afficherBoutonsEquipeB()
Affiche les boutons pour l'équipe B.
int getPointsJoueursB()
Accesseur de l'attribut pointsJoueursB.
static String fabriquerTrameScoreAfficheurDernierPoint(Partie partie)
TextView pointsJoueurA
L'affichage des points du ou des joueur(s) A.
Classe permettant la gestion d'une partie.
void commencerSet(Partie partie)
Permet d'effectuer une requete pour commencer un set.
ImageView imageConnexionModuleScore
L'image permettant d'indiquer l'état de la connexion au module Score.
static final String TEXTE_BOUTON_RETIRER_POINT
Le texte des boutons pour retirer un point.
void envoyerTramesNet()
Envoie une trame net à tout les modules d'affichage connectés.
int getManchesJoueursA()
Accesseur de l'attribut manchesJoueursA.
void recupererRessourcesIHM()
Recupère les ressources graphiques de l'activité
static final String TEXTE_BOUTON_REPRENDRE
void onStart()
Méthode appelée au démarrage après le onCreate() ou un restart après un onStop()
void setTempsMortsJoueursB(int tempsMortsJoueursB)
Mutateur de l'attribut tempsMortsJoueursB.
Vector< LiaisonBluetooth > modulesAffichage
Button boutonAjouterPointJoueurB
Le bouton permettant d'ajouter un point au(x) joueur(s) B.
L'activité permettant de gérer une rencontre.
View layoutNet
Le layout du toast apparaissant lors d'un NET.
static final String TEXTE_CONNEXION_MODULE_AFFICHEUR
Le texte permettant d'indiquer l'état du module Afficheur.
void actualiserAffichageRetraitPoint()
Actualise l'affichage et décelenche l'envoi de trames lors du retrait d'un point. ...