Ajout d'un système de registres pour la communication inter-contrôleurs
Description du problème
On observe que lorsque l'on change de vue, il n'est actuellement pas possible de partager des informations entre les contrôleurs.
Choix des tests à effectuer
Pour la classe abstraite Registre
nous devons juste vérifier le système de verrouillage.
Ensuite, pour chaque registre, il faudra vérifier si les setteurs sont bien désactivés en mode ReadOnly
.
Solution à mettre en œuvre
Nous avons décidé d'utiliser une classe qui nous servira de registre et que l'on passerait aux contrôleurs lors de l'affichage de la vue. Une vue pourra utiliser un ou plusieurs types de registres selon ses besoins.
Détail du fonctionnement des registres :
- Création d'une classe abstraite
Registre
qui s'occupera de verrouiller le registre. - Une fois le registre rempli, il est envoyé en lecture seule aux contrôleurs.
- Chaque classe-fille implémentera ses propres getteurs et setteurs.
Nous allons également devoir modifier la classe Controller
en lui ajoutant une méthode onShow(Registre)
qui sera chargée de mettre à jour la vue.
Enfin, il faut modifier la classe SceneManager
afin de permettre le passage de registres entre les contrôleurs.
Issue hors énoncé