From e173df11c0cf06adcc8ccb7f40c93729d9e256da Mon Sep 17 00:00:00 2001 From: Corentin LEMAIRE Date: Tue, 23 May 2023 13:56:26 +0200 Subject: [PATCH] Enhance the App Manager --- Sources/Linaris/App.xaml.cs | 43 ++++++++++++-------------- Sources/Linaris/LocalFilesPage.xaml.cs | 10 +++--- Sources/Linaris/MainPage.xaml.cs | 2 +- Sources/Linaris/PlaylistsPage.xaml.cs | 6 ++-- 4 files changed, 29 insertions(+), 32 deletions(-) diff --git a/Sources/Linaris/App.xaml.cs b/Sources/Linaris/App.xaml.cs index e91283f..c27c9d4 100644 --- a/Sources/Linaris/App.xaml.cs +++ b/Sources/Linaris/App.xaml.cs @@ -1,43 +1,40 @@ using Model.Serialization; using Model.Stub; -using Model; namespace Linaris; public partial class App : Application { - static IDataManager DataManager = new LinqXmlSerialization(); - - public static Manager Manager = new Manager(DataManager); + public Manager Manager = new(new LinqXmlSerialization()); public App() - { - InitializeComponent(); - MainPage = new AppShell(); - } + { + InitializeComponent(); + MainPage = new AppShell(); + } protected override Window CreateWindow(IActivationState activationState) { - var Window = base.CreateWindow(activationState); + var Window = base.CreateWindow(activationState); - Window.Stopped += (sender, eventArgs) => { - Manager.SaveSerialization(); - }; + Window.Stopped += (sender, eventArgs) => { + Manager.SaveSerialization(); + }; - const int newHeight = 900; - const int newWidth = 1800; - const int minHeight = 800; - const int minWidth = 400; + const int newHeight = 900; + const int newWidth = 1800; + const int minHeight = 800; + const int minWidth = 400; - Window.X = 0; - Window.Y = 100; + Window.X = 0; + Window.Y = 100; - Window.Width = newWidth; - Window.Height = newHeight; + Window.Width = newWidth; + Window.Height = newHeight; - Window.MinimumHeight = minHeight; - Window.MinimumWidth = minWidth; + Window.MinimumHeight = minHeight; + Window.MinimumWidth = minWidth; - return Window; + return Window; } } diff --git a/Sources/Linaris/LocalFilesPage.xaml.cs b/Sources/Linaris/LocalFilesPage.xaml.cs index f699cce..16eb533 100644 --- a/Sources/Linaris/LocalFilesPage.xaml.cs +++ b/Sources/Linaris/LocalFilesPage.xaml.cs @@ -9,14 +9,14 @@ namespace Linaris { public partial class LocalFilesPage : ContentPage { - private ObservableCollection customTitles = App.Manager.GetCustomTitles(); + private ObservableCollection customTitles = (Application.Current as App).Manager.GetCustomTitles(); public ObservableCollection CustomTitles { get => customTitles; } - private ObservableCollection playlists = App.Manager.GetPlaylists(); + private ObservableCollection playlists = (Application.Current as App).Manager.GetPlaylists(); public ObservableCollection Playlists { @@ -69,7 +69,7 @@ namespace Linaris void AddCustomTitle(CustomTitle customTitle) { - App.Manager.AddCustomTitle(customTitle); + (Application.Current as App).Manager.AddCustomTitle(customTitle); customTitles.Add(customTitle); ResetAll(this, null); } @@ -128,7 +128,7 @@ namespace Linaris Playlist playlist = new Playlist(entry.Text, "", "none.png"); if (!IsInPlaylists(playlist)) { - App.Manager.AddPlaylist(playlist); + (Application.Current as App).Manager.AddPlaylist(playlist); playlists.Add(playlist); } if(entry.BindingContext is CustomTitle customTitle) @@ -148,7 +148,7 @@ namespace Linaris { if (button.BindingContext is CustomTitle titleToRemove) { - App.Manager.RemoveCustomTitle(titleToRemove); + (Application.Current as App).Manager.RemoveCustomTitle(titleToRemove); customTitles.Remove(titleToRemove); } } diff --git a/Sources/Linaris/MainPage.xaml.cs b/Sources/Linaris/MainPage.xaml.cs index 82c9d21..eb934fc 100644 --- a/Sources/Linaris/MainPage.xaml.cs +++ b/Sources/Linaris/MainPage.xaml.cs @@ -5,7 +5,7 @@ namespace Linaris; public partial class MainPage : ContentPage { - private ObservableCollection albums = App.Manager.GetAlbums(); + private ObservableCollection albums = (Application.Current as App).Manager.GetAlbums(); public ObservableCollection Albums { diff --git a/Sources/Linaris/PlaylistsPage.xaml.cs b/Sources/Linaris/PlaylistsPage.xaml.cs index f5e43e3..8d4faea 100644 --- a/Sources/Linaris/PlaylistsPage.xaml.cs +++ b/Sources/Linaris/PlaylistsPage.xaml.cs @@ -7,7 +7,7 @@ namespace Linaris; public partial class PlaylistsPage : ContentPage { - private ObservableCollection playlists = App.Manager.GetPlaylists(); + private ObservableCollection playlists = (Application.Current as App).Manager.GetPlaylists(); public ObservableCollection Playlists { @@ -75,7 +75,7 @@ public partial class PlaylistsPage : ContentPage if (!HasSameName(entry.Text)) { Playlist playlist = new Playlist(entry.Text, "", "none.png"); - App.Manager.AddPlaylist(playlist); + (Application.Current as App).Manager.AddPlaylist(playlist); playlists.Add(playlist); IsNewPlaylist = false; } @@ -91,7 +91,7 @@ public partial class PlaylistsPage : ContentPage { if (button.BindingContext is Playlist playlist) { - App.Manager.RemovePlaylist(playlist); + (Application.Current as App).Manager.RemovePlaylist(playlist); playlists.Remove(playlist); } }