From c6ff5c58562c26ebb0f5d55cbc2092b348ee710f Mon Sep 17 00:00:00 2001 From: Matheo HERSAN Date: Fri, 2 Jun 2023 11:56:15 +0200 Subject: [PATCH 1/5] Added logo --- MangaMap/MangaMap.csproj | 7 ++++++- MangaMap/Resources/AppIcon/logo.png | Bin 0 -> 31687 bytes 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 MangaMap/Resources/AppIcon/logo.png diff --git a/MangaMap/MangaMap.csproj b/MangaMap/MangaMap.csproj index 47f3e18..9e01e40 100644 --- a/MangaMap/MangaMap.csproj +++ b/MangaMap/MangaMap.csproj @@ -32,7 +32,7 @@ - + @@ -58,12 +58,17 @@ + + + + + diff --git a/MangaMap/Resources/AppIcon/logo.png b/MangaMap/Resources/AppIcon/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fbd1cbcaa75d6c0f4a792e1b883a3707311d8f58 GIT binary patch literal 31687 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 literal 0 HcmV?d00001 From f6a4fd91b1434e527ff2362b22e73c16ea140b50 Mon Sep 17 00:00:00 2001 From: Matheo HERSAN Date: Fri, 2 Jun 2023 17:15:02 +0200 Subject: [PATCH 2/5] Start SearchBar --- MangaMap/Model/Manager.cs | 7 ++++--- MangaMap/Stub/DataContract.cs | 5 +++-- MangaMap/Stub/DataToPersist.cs | 5 +++-- MangaMap/Stub/IPersistanceManager.cs | 5 +++-- MangaMap/Stub/Stub.cs | 7 ++++--- MangaMap/Views/Composants/ListOeuvre.xaml | 6 +++--- MangaMap/Views/FicheAnime.xaml.cs | 3 +++ 7 files changed, 23 insertions(+), 15 deletions(-) diff --git a/MangaMap/Model/Manager.cs b/MangaMap/Model/Manager.cs index cdfd6e1..ec68176 100644 --- a/MangaMap/Model/Manager.cs +++ b/MangaMap/Model/Manager.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -12,7 +13,7 @@ namespace MangaMap.Model public IPersistanceManager Persistance { get; set; } public List Admins { get; private set; } public List Utilisateurs { get; private set; } - public List Oeuvres { get; private set; } + public ObservableCollection Oeuvres { get; private set; } public Utilisateur UtilisateurActuel { get; set; } public bool isAdmin { get; set; } @@ -20,7 +21,7 @@ namespace MangaMap.Model public Manager(IPersistanceManager Pers) { Admins = new List(); Utilisateurs = new List(); - Oeuvres = new List(); + Oeuvres = new ObservableCollection(); UtilisateurActuel = new Utilisateur(); isAdmin = false; @@ -31,7 +32,7 @@ namespace MangaMap.Model { Admins = new List(); Utilisateurs = new List(); - Oeuvres = new List(); + Oeuvres = new ObservableCollection(); UtilisateurActuel = new Utilisateur(); isAdmin = false; } diff --git a/MangaMap/Stub/DataContract.cs b/MangaMap/Stub/DataContract.cs index d19f31c..8a2dffb 100644 --- a/MangaMap/Stub/DataContract.cs +++ b/MangaMap/Stub/DataContract.cs @@ -1,6 +1,7 @@ using MangaMap.Model; using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Diagnostics; using System.Linq; using System.Runtime.Serialization; @@ -16,7 +17,7 @@ namespace MangaMap.Stub public string FileName { get; set; } = "SauvegardeDonnees.xml"; public string FilePath { get; set; } = Path.Combine(AppDomain.CurrentDomain.BaseDirectory); - public (List, List) chargeDonne() + public (ObservableCollection, List) chargeDonne() { var serializer = new DataContractSerializer(typeof(DataToPersist)); DataToPersist data; @@ -36,7 +37,7 @@ namespace MangaMap.Stub return (data.Oeuvres, data.Utilisateurs); } - public void sauvegarder(List o, List u) + public void sauvegarder(ObservableCollection o, List u) { var serializer = new DataContractSerializer(typeof(DataToPersist)); diff --git a/MangaMap/Stub/DataToPersist.cs b/MangaMap/Stub/DataToPersist.cs index ef26f80..f4bf779 100644 --- a/MangaMap/Stub/DataToPersist.cs +++ b/MangaMap/Stub/DataToPersist.cs @@ -4,13 +4,14 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; - +using System.Collections.ObjectModel; + namespace MangaMap.Stub { //Cette classe permet de définir ce qui doit être enregistrer par la persistance. public class DataToPersist { - public List Oeuvres { get; set; } = new List(); + public ObservableCollection Oeuvres { get; set; } = new ObservableCollection(); public List Utilisateurs { get; set; } = new List(); } diff --git a/MangaMap/Stub/IPersistanceManager.cs b/MangaMap/Stub/IPersistanceManager.cs index d12d753..af0689d 100644 --- a/MangaMap/Stub/IPersistanceManager.cs +++ b/MangaMap/Stub/IPersistanceManager.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -9,8 +10,8 @@ namespace MangaMap.Stub { public interface IPersistanceManager { - (List, List) chargeDonne(); + (ObservableCollection, List) chargeDonne(); - void sauvegarder(List o, List u); + void sauvegarder(ObservableCollection o, List u); } } diff --git a/MangaMap/Stub/Stub.cs b/MangaMap/Stub/Stub.cs index b0a5129..a83dada 100644 --- a/MangaMap/Stub/Stub.cs +++ b/MangaMap/Stub/Stub.cs @@ -1,6 +1,7 @@ using MangaMap.Model; using System; using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -12,9 +13,9 @@ namespace MangaMap.Stub //Cette classe sert à faire charger un jeu de données qui n'est pas celui enregistrer dans le fichier sur l'ordinateur. //Il permet de faire des transistion entre différent moyen de persister. { - public (List, List) chargeDonne() + public (ObservableCollection, List) chargeDonne() { - List l1 = new List(); + ObservableCollection l1 = new ObservableCollection(); List l2 = new List(); Utilisateur u1 = new Utilisateur("t", "Pseudo1", "t", "Jean", "Baptiste", 12); @@ -34,7 +35,7 @@ namespace MangaMap.Stub return (l1, l2); } - public void sauvegarder(List o, List u) + public void sauvegarder(ObservableCollection o, List u) { throw new NotImplementedException(); } diff --git a/MangaMap/Views/Composants/ListOeuvre.xaml b/MangaMap/Views/Composants/ListOeuvre.xaml index 56041c8..b0d7909 100644 --- a/MangaMap/Views/Composants/ListOeuvre.xaml +++ b/MangaMap/Views/Composants/ListOeuvre.xaml @@ -73,7 +73,7 @@ @@ -112,7 +112,7 @@ @@ -151,7 +151,7 @@ diff --git a/MangaMap/Views/FicheAnime.xaml.cs b/MangaMap/Views/FicheAnime.xaml.cs index 2adcb56..39ff225 100644 --- a/MangaMap/Views/FicheAnime.xaml.cs +++ b/MangaMap/Views/FicheAnime.xaml.cs @@ -6,6 +6,7 @@ using System.Diagnostics; using System.Drawing; using System.Windows.Input; using System.Xml.Linq; +using Microsoft.Maui.Graphics; public partial class ficheAnime : ContentPage, INotifyPropertyChanged @@ -91,6 +92,7 @@ public partial class ficheAnime : ContentPage, INotifyPropertyChanged ImageButton imageButton = new ImageButton { Source = "star_full.png", + BackgroundColor = Microsoft.Maui.Graphics.Color.FromHex("1E1E1E"), WidthRequest = 50, HeightRequest = 50, AutomationId = i.ToString(), @@ -108,6 +110,7 @@ public partial class ficheAnime : ContentPage, INotifyPropertyChanged ImageButton imageButton = new ImageButton { Source = "star_empty.png", + BackgroundColor = Microsoft.Maui.Graphics.Color.FromHex("1E1E1E"), WidthRequest = 50, HeightRequest = 50, AutomationId = i.ToString(), From 4651aca48eb34b8228fba2d8f5b6d20d3d181dc4 Mon Sep 17 00:00:00 2001 From: Matheo HERSAN Date: Fri, 2 Jun 2023 17:54:23 +0200 Subject: [PATCH 3/5] Enhancement searchBar but does not work --- MangaMap/Model/Manager.cs | 26 ++++++++++++++++++++++++-- MangaMap/Views/homePage.xaml | 17 ++++++++++------- MangaMap/Views/homePage.xaml.cs | 16 +++++++++++++++- 3 files changed, 49 insertions(+), 10 deletions(-) diff --git a/MangaMap/Model/Manager.cs b/MangaMap/Model/Manager.cs index ec68176..614fe62 100644 --- a/MangaMap/Model/Manager.cs +++ b/MangaMap/Model/Manager.cs @@ -1,19 +1,41 @@ using System; using System.Collections.Generic; using System.Collections.ObjectModel; +using System.ComponentModel; using System.Linq; +using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; +using MangaMap.DataBinding; using MangaMap.Stub; namespace MangaMap.Model { - public class Manager + public class Manager : System.ComponentModel.INotifyPropertyChanged { + public event PropertyChangedEventHandler? PropertyChanged; + + void OnPropertyChanged([CallerMemberName] string propertyName = null) + => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + public IPersistanceManager Persistance { get; set; } public List Admins { get; private set; } public List Utilisateurs { get; private set; } - public ObservableCollection Oeuvres { get; private set; } + + private ObservableCollection oeuvres; + + public ObservableCollection Oeuvres + { + get + { + return oeuvres; + } + set + { + oeuvres = value; + OnPropertyChanged(); + } + } public Utilisateur UtilisateurActuel { get; set; } public bool isAdmin { get; set; } diff --git a/MangaMap/Views/homePage.xaml b/MangaMap/Views/homePage.xaml index ab9de2e..b97f4b1 100644 --- a/MangaMap/Views/homePage.xaml +++ b/MangaMap/Views/homePage.xaml @@ -20,12 +20,13 @@ - - + @@ -62,6 +63,8 @@ + + + + + + + + + + + + + + + + + - + diff --git a/MangaMap/Views/homePage.xaml.cs b/MangaMap/Views/homePage.xaml.cs index d7f24a1..0fc8d5b 100644 --- a/MangaMap/Views/homePage.xaml.cs +++ b/MangaMap/Views/homePage.xaml.cs @@ -7,34 +7,32 @@ public partial class homePage : ContentPage { public Manager my_manager => (App.Current as App).MyManager; - private ObservableCollection filteredOeuvres = new ObservableCollection(); - public homePage() { InitializeComponent(); BindingContext = my_manager; - chargerSerie(); + //chargerSerie(); } private async void AnimeImageClicked(object sender, EventArgs e) { - //var selectedAnime = (sender as ImageButton)?.BindingContext as Oeuvre; - //if (selectedAnime != null) - //{ - // // Naviguez vers la page de la fiche d'anime en passant l'objet sélectionné - // await Navigation.PushAsync(new ficheAnime(selectedAnime)); - //} - - var button = (ImageButton)sender; + var selectedAnime = (sender as ImageButton)?.BindingContext as Oeuvre; + if (selectedAnime != null) + { + // Naviguez vers la page de la fiche d'anime en passant l'objet sélectionné + await Navigation.PushAsync(new ficheAnime(selectedAnime)); + } + + /*var button = (ImageButton)sender; var idAutomation = button.AutomationId; if (int.TryParse(idAutomation, out int id)) { await Navigation.PushAsync(new ficheAnime(my_manager.Oeuvres[id])); - } + }*/ } - private void chargerSerie() + /*private void chargerSerie() { int imagesParLigne = 4; int indice = 0; @@ -67,11 +65,12 @@ public partial class homePage : ContentPage indice++; } - } + }*/ private void OnTextChanged(object sender, TextChangedEventArgs e) { - if(string.IsNullOrEmpty(e.NewTextValue)) + + if(string.IsNullOrWhiteSpace(e.NewTextValue)) { searchResults.ItemsSource = my_manager.Oeuvres; } From dca8ce1147fe6276f79a2186727e68c7cd1c5128 Mon Sep 17 00:00:00 2001 From: Matheo HERSAN Date: Mon, 5 Jun 2023 09:54:16 +0200 Subject: [PATCH 5/5] Fixed bug --- MangaMap/Views/homePage.xaml.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/MangaMap/Views/homePage.xaml.cs b/MangaMap/Views/homePage.xaml.cs index 0fc8d5b..901e772 100644 --- a/MangaMap/Views/homePage.xaml.cs +++ b/MangaMap/Views/homePage.xaml.cs @@ -11,6 +11,7 @@ public partial class homePage : ContentPage { InitializeComponent(); BindingContext = my_manager; + searchResults.ItemsSource = my_manager.Oeuvres; //chargerSerie(); }