diff --git a/Sources/MauiSpark/Vues/BoutonClassementVue.xaml.cs b/Sources/MauiSpark/Vues/BoutonClassementVue.xaml.cs
index 91671dd..3add4be 100644
--- a/Sources/MauiSpark/Vues/BoutonClassementVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/BoutonClassementVue.xaml.cs
@@ -2,13 +2,26 @@ using MauiSpark.Pages;
namespace MauiSpark.Vues;
+///
+/// Vue représentant un bouton pour accéder à la page de classement.
+///
public partial class BoutonClassementVue : ContentView
{
- public BoutonClassementVue()
+ ///
+ /// Constructeur de la vue du bouton de classement.
+ /// Initialise les composants de la vue.
+ ///
+ public BoutonClassementVue()
{
InitializeComponent();
}
+ ///
+ /// Méthode déclenchée lorsque le bouton de classement est cliqué.
+ /// Navigue vers la page de classement.
+ ///
+ /// L'objet qui appelle l'événement ; ici le bouton de classement.
+ /// L'instance de l'événement EventArgs créée par le système.
private void QuandClassementClique(Object? sender, EventArgs e)
{
Navigation.PushAsync(new ClassementPage());
diff --git a/Sources/MauiSpark/Vues/BoutonReglesVue.xaml.cs b/Sources/MauiSpark/Vues/BoutonReglesVue.xaml.cs
index a657680..c218270 100644
--- a/Sources/MauiSpark/Vues/BoutonReglesVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/BoutonReglesVue.xaml.cs
@@ -2,13 +2,26 @@ using MauiSpark.Pages;
namespace MauiSpark.Vues;
+///
+/// Vue représentant un bouton pour accéder à la page des règles.
+///
public partial class BoutonReglesVue : ContentView
{
+ ///
+ /// Constructeur de la vue du bouton des règles.
+ /// Initialise les composants de la vue.
+ ///
public BoutonReglesVue()
{
InitializeComponent();
}
+ ///
+ /// Méthode déclenchée lorsque le bouton des règles est cliqué.
+ /// Navigue vers la page des règles.
+ ///
+ /// L'objet qui appelle l'événement ; ici le bouton des règles.
+ /// L'instance de l'événement EventArgs créée par le système.
private void QuandReglesClique(Object? sender, EventArgs e)
{
Navigation.PushAsync(new ReglesPage());
diff --git a/Sources/MauiSpark/Vues/ImageResultatVue.xaml.cs b/Sources/MauiSpark/Vues/ImageResultatVue.xaml.cs
index a687257..accf035 100644
--- a/Sources/MauiSpark/Vues/ImageResultatVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/ImageResultatVue.xaml.cs
@@ -1,15 +1,28 @@
namespace MauiSpark.Vues;
+///
+/// Vue représentant une image de résultat.
+///
public partial class ImageResultatVue : ContentView
{
+ ///
+ /// Propriété attachée à l'image affichée dans la vue.
+ ///
public static readonly BindableProperty ImageProperty = BindableProperty.Create(nameof(Image), typeof(ImageSource), typeof(ImageResultatVue), null);
+ ///
+ /// Obtient ou définit l'image affichée dans la vue.
+ ///
public ImageSource Image
{
get => (ImageSource)GetValue(ImageProperty);
set => SetValue(ImageProperty, value);
}
+ ///
+ /// Constructeur de la vue de l'image de résultat.
+ /// Initialise les composants de la vue et lie le contexte de liaison à cette instance.
+ ///
public ImageResultatVue()
{
InitializeComponent();
diff --git a/Sources/MauiSpark/Vues/IndicateurVue.xaml.cs b/Sources/MauiSpark/Vues/IndicateurVue.xaml.cs
index 205819f..f0ffa34 100644
--- a/Sources/MauiSpark/Vues/IndicateurVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/IndicateurVue.xaml.cs
@@ -4,22 +4,42 @@ using System.Globalization;
namespace MauiSpark.Vues;
+///
+/// Vue représentant un indicateur coloré.
+///
public partial class IndicateurVue : ContentView
{
+ ///
+ /// Propriété attachée à la couleur de l'indicateur.
+ ///
public static readonly BindableProperty CouleurProperty = BindableProperty.Create(nameof(Couleur), typeof(Color), typeof(IndicateurVue), default(Color));
- public Color Couleur
+ ///
+ /// Obtient ou définit la couleur de l'indicateur.
+ ///
+ public Color Couleur
{
get => (Color)GetValue(CouleurProperty);
set => SetValue(CouleurProperty, value);
}
- public IndicateurVue()
+
+ ///
+ /// Constructeur de la vue de l'indicateur.
+ /// Initialise les composants de la vue et lie le contexte de liaison à cette instance.
+ ///
+ public IndicateurVue()
{
InitializeComponent();
BindingContext = this;
}
+ ///
+ /// Méthode déclenchée lorsque la taille de l'indicateur est modifiée.
+ /// Réajuste la taille du carré représentant l'indicateur pour qu'il soit toujours carré.
+ ///
+ /// L'objet qui a déclenché l'événement ; ici, le carré représentant l'indicateur.
+ /// Les arguments de l'événement.
private void QuandTailleChangee(object sender, EventArgs e)
{
double taille = Math.Min(Grid.Width, Grid.Height) / 2;
diff --git a/Sources/MauiSpark/Vues/JetonVue.xaml.cs b/Sources/MauiSpark/Vues/JetonVue.xaml.cs
index b841032..bc8f6a6 100644
--- a/Sources/MauiSpark/Vues/JetonVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/JetonVue.xaml.cs
@@ -5,42 +5,82 @@ using System.Globalization;
namespace MauiSpark.Vues;
+///
+/// Vue représentant un jeton coloré.
+///
public partial class JetonVue : ContentView
{
+ ///
+ /// Propriété attachée à la couleur du jeton.
+ ///
public static readonly BindableProperty CouleurProperty = BindableProperty.Create(nameof(Couleur), typeof(Color), typeof(JetonVue), default(Color));
+
+ ///
+ /// Propriété attachée au code associé au jeton.
+ ///
public static readonly BindableProperty CodeProperty = BindableProperty.Create(nameof(Code), typeof(Code), typeof(JetonVue), null);
+
+ ///
+ /// Propriété attachée indiquant si le jeton est associé à un joueur.
+ ///
public static readonly BindableProperty EstJoueurProperty = BindableProperty.Create(nameof(EstJoueur), typeof(bool), typeof(JetonVue), true);
+ ///
+ /// Obtient ou définit la couleur du jeton.
+ ///
public Color Couleur
{
get => (Color)GetValue(CouleurProperty);
set => SetValue(CouleurProperty, value);
}
+ ///
+ /// Obtient ou définit le code associé au jeton.
+ ///
public Code? Code
{
get => (Code?)GetValue(CodeProperty);
set => SetValue(CodeProperty, value);
}
+ ///
+ /// Obtient ou définit une valeur indiquant si le jeton est associé à un joueur.
+ ///
public bool EstJoueur
{
get => (bool)GetValue(EstJoueurProperty);
set => SetValue(EstJoueurProperty, value);
}
+ ///
+ /// Constructeur de la vue du jeton.
+ /// Initialise les composants de la vue et lie le contexte de liaison à cette instance.
+ ///
public JetonVue()
{
InitializeComponent();
BindingContext = this;
}
+ ///
+ /// Méthode déclenchée lorsque la taille du jeton est modifiée.
+ /// Réajuste la taille du cercle représentant le jeton pour qu'il soit toujours circulaire.
+ ///
+ /// L'objet qui a déclenché l'événement ; ici, le cercle représentant le jeton.
+ /// Les arguments de l'événement, s'il y en a.
private void QuandTailleChangee(object sender, EventArgs e)
{
double taille = Math.Min(Grid.Width, Grid.Height) / 2;
Cercle.WidthRequest = Cercle.HeightRequest = taille;
}
+ ///
+ /// Méthode déclenchée lorsque le jeton est pressé.
+ /// Ajoute un jeton à un code si celui-ci est associé à un joueur.
+ /// Affiche une alerte si le code est déjà complet.
+ ///
+ /// L'objet qui a déclenché l'événement ; ici, le cercle représentant le jeton.
+ /// Les arguments de l'événement, s'il y en a.
private void JetonPresse(object sender, EventArgs e)
{
if (Cercle == null || !sender.Equals(Cercle) || Code == null || Application.Current == null || Application.Current.MainPage == null || !EstJoueur)
diff --git a/Sources/MauiSpark/Vues/ModeVue.xaml.cs b/Sources/MauiSpark/Vues/ModeVue.xaml.cs
index a30f109..b47ff3e 100644
--- a/Sources/MauiSpark/Vues/ModeVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/ModeVue.xaml.cs
@@ -4,21 +4,38 @@ using MauiSpark.Pages;
namespace MauiSpark.Vues;
+///
+/// Vue permettant de sélectionner un mode de jeu.
+///
public partial class ModeVue : ContentView
{
+ ///
+ /// Propriété de dépendance pour les règles du jeu.
+ ///
public static readonly BindableProperty ReglesProperty = BindableProperty.Create(nameof(Regles), typeof(IRegles), typeof(ModeVue), null);
+ ///
+ /// Les règles du jeu sélectionnées.
+ ///
public IRegles Regles
{
get => (IRegles)GetValue(ReglesProperty);
set => SetValue(ReglesProperty, value);
}
+ ///
+ /// Constructeur par défaut de la vue du mode de jeu.
+ ///
public ModeVue()
{
InitializeComponent();
}
+ ///
+ /// Méthode déclenchée lorsque le bouton de sélection des règles est pressé.
+ ///
+ /// L'objet qui a déclenché l'événement ; ici, le bouton de sélection des règles.
+ /// Les arguments de l'événement EventArgs.
private void QuandReglesPresse(Object sender, EventArgs e)
{
Partie partie = MauiProgram.Manageur.NouvellePartie(Regles);
diff --git a/Sources/MauiSpark/Vues/PartieCommenceeVue.xaml.cs b/Sources/MauiSpark/Vues/PartieCommenceeVue.xaml.cs
index 36f7ee1..99dd437 100644
--- a/Sources/MauiSpark/Vues/PartieCommenceeVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/PartieCommenceeVue.xaml.cs
@@ -4,33 +4,57 @@ using System.ComponentModel;
namespace MauiSpark.Vues;
+///
+/// Vue affichant les détails d'une partie en cours.
+///
public partial class PartieCommenceeVue : ContentView, INotifyPropertyChanged
{
+ ///
+ /// Propriété de dépendance pour la partie en cours.
+ ///
public static readonly BindableProperty PartieProperty = BindableProperty.Create(nameof(Partie), typeof(Partie), typeof(PartieCommenceeVue), null, propertyChanged: QuandPartieChangee);
+ ///
+ /// La partie en cours.
+ ///
public Partie Partie
{
get => (Partie)GetValue(PartieProperty);
set => SetValue(PartieProperty, value);
}
+ ///
+ /// Le nom des règles de la partie.
+ ///
public string NomRegles
{
get => Partie != null ? Partie.Regles.Nom : "";
}
+ ///
+ /// Le tour actuel de la partie.
+ ///
public string TourActuel
{
get => $"Tour : {(Partie != null ? Partie.Tour : 0)} / {(Partie != null ? Partie.Regles.NbTour : 0)}";
}
+ ///
+ /// Les joueurs participant à la partie.
+ ///
public string[] Joueurs
{
get => Partie != null ? Partie.Joueurs.ToArray() : [];
}
+ ///
+ /// Le nombre de joueurs participant à la partie.
+ ///
public string NombreJoueurs => $"Joueurs : {Joueurs.Length} / {(Partie != null ? Partie.Regles.NbJoueurs : 0)}";
+ ///
+ /// Méthode déclenchée lorsqu'une propriété de la partie change.
+ ///
private static void QuandPartieChangee(BindableObject bindable, object ancienneValeur, object nouvelleValeur)
{
((PartieCommenceeVue)bindable).OnPropertyChanged(nameof(NomRegles));
@@ -39,6 +63,9 @@ public partial class PartieCommenceeVue : ContentView, INotifyPropertyChanged
((PartieCommenceeVue)bindable).OnPropertyChanged(nameof(NombreJoueurs));
}
+ ///
+ /// Méthode déclenchée lorsqu'un utilisateur appuie sur la vue de la partie.
+ ///
private void PartiePressee(object? sender, EventArgs e)
{
if (Partie == null)
@@ -53,6 +80,9 @@ public partial class PartieCommenceeVue : ContentView, INotifyPropertyChanged
partie.Jouer();
}
+ ///
+ /// Constructeur par défaut de la vue de la partie en cours.
+ ///
public PartieCommenceeVue()
{
InitializeComponent();
diff --git a/Sources/MauiSpark/Vues/ReglesVue.xaml.cs b/Sources/MauiSpark/Vues/ReglesVue.xaml.cs
index 4a903f1..c179692 100644
--- a/Sources/MauiSpark/Vues/ReglesVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/ReglesVue.xaml.cs
@@ -1,22 +1,41 @@
namespace MauiSpark.Vues;
+///
+/// Vue pour afficher le titre et la description des règles.
+///
public partial class ReglesVue : ContentView
{
+ ///
+ /// Identifie la propriété de dépendance pour le titre des règles.
+ ///
public static readonly BindableProperty TitreProperty = BindableProperty.Create(nameof(Titre), typeof(string), typeof(ReglesVue), default(string));
+
+ ///
+ /// Identifie la propriété de dépendance pour la description des règles.
+ ///
public static readonly BindableProperty DescriptionProperty = BindableProperty.Create(nameof(Description), typeof(string), typeof(ReglesVue), default(string));
+ ///
+ /// Obtient ou définit le titre des règles.
+ ///
public string Titre
{
get => (string)GetValue(TitreProperty);
set => SetValue(TitreProperty, value);
}
+ ///
+ /// Obtient ou définit la description des règles.
+ ///
public string Description
{
get => (string)GetValue(DescriptionProperty);
set => SetValue(DescriptionProperty, value);
}
+ ///
+ /// Initialise une nouvelle instance de la classe .
+ ///
public ReglesVue()
{
InitializeComponent();
diff --git a/Sources/MauiSpark/Vues/TitreVue.xaml.cs b/Sources/MauiSpark/Vues/TitreVue.xaml.cs
index 3185bb6..1f6a106 100644
--- a/Sources/MauiSpark/Vues/TitreVue.xaml.cs
+++ b/Sources/MauiSpark/Vues/TitreVue.xaml.cs
@@ -1,15 +1,27 @@
namespace MauiSpark.Vues;
+///
+/// Vue pour afficher un titre.
+///
public partial class TitreVue : ContentView
{
+ ///
+ /// Identifie la propriété de dépendance pour le texte du titre.
+ ///
public static readonly BindableProperty TexteProperty = BindableProperty.Create(nameof(Texte), typeof(string), typeof(TitreVue), default(string));
+ ///
+ /// Obtient ou définit le texte du titre.
+ ///
public string Texte
{
get => (string)GetValue(TexteProperty);
set => SetValue(TexteProperty, value);
}
+ ///
+ /// Initialise une nouvelle instance de la classe .
+ ///
public TitreVue()
{
InitializeComponent();