namespace MangaMap.Views; using Model; using System.ComponentModel; using System.Diagnostics; using System.Xml.Linq; public partial class ficheAnime : ContentPage, INotifyPropertyChanged { public Manager my_manager => (App.Current as App).MyManager; public Oeuvre AnimeModel { get; set; } public ficheAnime() { InitializeComponent(); this.BindingContext = this; } public ficheAnime(Oeuvre anime) { AnimeModel = anime; InitializeComponent(); this.BindingContext = this; } public async void AjouterListe(object sender, EventArgs e) { if (my_manager.UtilisateurActuel == null) { await DisplayAlert("Erreur", "Vous n'êtes pas connecté.", "OK"); return; } string selectedOption = await DisplayActionSheet("Ajouter à quelle liste ?", "Annuler", null, "En Visionnage", "Déjà Vu", "Pour Plus Tard", "Favoris"); if (selectedOption == "Annuler") return; Debug.WriteLine("Selected Option: " + selectedOption); // Ajouter l'anime à la liste sélectionnée switch (selectedOption) { case "En Visionnage": Debug.WriteLine("Ajout à la liste En Visionnage"); my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage.Add(AnimeModel); break; case "Déjà Vu": Debug.WriteLine("Ajout à la liste Déjà Vu"); my_manager.UtilisateurActuel.ListeOeuvreDejaVu.Add(AnimeModel); break; case "Pour Plus Tard": Debug.WriteLine("Ajout à la liste Pour Plus Tard"); my_manager.UtilisateurActuel.ListeOeuvrePourPlusTard.Add(AnimeModel); break; case "Favoris": Debug.WriteLine("Ajout à la liste Favoris"); my_manager.UtilisateurActuel.ListeOeuvreFavorites.Add(AnimeModel); break; } foreach (Oeuvre oeuvre in my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage) { Debug.WriteLine("Titre de l'oeuvre : " + oeuvre.Nom); // Faites d'autres opérations avec chaque élément de la liste } my_manager.sauvegarder(); await Navigation.PushAsync(new listPage()); } private void SetNote(float note) { note = (int)note; // Tronquer à un entier car nous ne gérons actuellement pas les demi-étoiles var starImages = star.Children.OfType().Reverse().ToList(); foreach (var img in starImages) { if (note > 0) { img.Opacity = 1; note--; } else { img.Opacity = 0; } } } }