diff --git a/AD_MAUI.sln b/AD_MAUI.sln
index fe49081..89a16ca 100644
--- a/AD_MAUI.sln
+++ b/AD_MAUI.sln
@@ -3,7 +3,11 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31611.283
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AD_MAUI", "AD_MAUI\AD_MAUI.csproj", "{75950E63-4D00-4240-91D9-F4D494878A3B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AMC.View", "AMC.View\AMC.View.csproj", "{75950E63-4D00-4240-91D9-F4D494878A3B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AMC.Model", "AMC.Model\AMC.Model.csproj", "{44F42419-C6A9-4926-AB9D-5BDD3786AFB3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AMC.ViewModel", "AMC.ViewModel\AMC.ViewModel.csproj", "{9A019CC9-CDD5-4A2A-A0D1-CBEB8B797A8D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -17,6 +21,14 @@ Global
{75950E63-4D00-4240-91D9-F4D494878A3B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{75950E63-4D00-4240-91D9-F4D494878A3B}.Release|Any CPU.Build.0 = Release|Any CPU
{75950E63-4D00-4240-91D9-F4D494878A3B}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {44F42419-C6A9-4926-AB9D-5BDD3786AFB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {44F42419-C6A9-4926-AB9D-5BDD3786AFB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {44F42419-C6A9-4926-AB9D-5BDD3786AFB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {44F42419-C6A9-4926-AB9D-5BDD3786AFB3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9A019CC9-CDD5-4A2A-A0D1-CBEB8B797A8D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9A019CC9-CDD5-4A2A-A0D1-CBEB8B797A8D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9A019CC9-CDD5-4A2A-A0D1-CBEB8B797A8D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9A019CC9-CDD5-4A2A-A0D1-CBEB8B797A8D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/AD_MAUI/App.xaml.cs b/AD_MAUI/App.xaml.cs
deleted file mode 100644
index ccd173d..0000000
--- a/AD_MAUI/App.xaml.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-namespace AD_MAUI;
-
-public partial class App : Application
-{
- public App()
- {
- InitializeComponent();
-
- MainPage = new AppShell();
- }
-}
diff --git a/AD_MAUI/AppShell.xaml.cs b/AD_MAUI/AppShell.xaml.cs
deleted file mode 100644
index 40fb3e8..0000000
--- a/AD_MAUI/AppShell.xaml.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-namespace AD_MAUI;
-
-public partial class AppShell : Shell
-{
- public AppShell()
- {
- InitializeComponent();
- }
-}
diff --git a/AD_MAUI/MainPage.xaml b/AD_MAUI/MainPage.xaml
deleted file mode 100644
index ace5584..0000000
--- a/AD_MAUI/MainPage.xaml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/AD_MAUI/MainPage.xaml.cs b/AD_MAUI/MainPage.xaml.cs
deleted file mode 100644
index eee2758..0000000
--- a/AD_MAUI/MainPage.xaml.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-namespace AD_MAUI;
-
-public partial class MainPage : ContentPage
-{
- int count = 0;
-
- public MainPage()
- {
- InitializeComponent();
- }
-
- private void OnCounterClicked(object sender, EventArgs e)
- {
- count++;
-
- if (count == 1)
- CounterBtn.Text = $"Clicked {count} time";
- else
- CounterBtn.Text = $"Clicked {count} times";
-
- SemanticScreenReader.Announce(CounterBtn.Text);
- }
-}
-
diff --git a/AD_MAUI/MauiProgram.cs b/AD_MAUI/MauiProgram.cs
deleted file mode 100644
index 3e5a18d..0000000
--- a/AD_MAUI/MauiProgram.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using Microsoft.Extensions.Logging;
-
-namespace AD_MAUI;
-
-public static class MauiProgram
-{
- public static MauiApp CreateMauiApp()
- {
- var builder = MauiApp.CreateBuilder();
- builder
- .UseMauiApp()
- .ConfigureFonts(fonts =>
- {
- fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
- fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold");
- });
-
-#if DEBUG
- builder.Logging.AddDebug();
-#endif
-
- return builder.Build();
- }
-}
diff --git a/AD_MAUI/Platforms/Android/MainApplication.cs b/AD_MAUI/Platforms/Android/MainApplication.cs
deleted file mode 100644
index 833d54e..0000000
--- a/AD_MAUI/Platforms/Android/MainApplication.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using Android.App;
-using Android.Runtime;
-
-namespace AD_MAUI;
-
-[Application]
-public class MainApplication : MauiApplication
-{
- public MainApplication(IntPtr handle, JniHandleOwnership ownership)
- : base(handle, ownership)
- {
- }
-
- protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
-}
diff --git a/AD_MAUI/Platforms/MacCatalyst/Program.cs b/AD_MAUI/Platforms/MacCatalyst/Program.cs
deleted file mode 100644
index ead5492..0000000
--- a/AD_MAUI/Platforms/MacCatalyst/Program.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using ObjCRuntime;
-using UIKit;
-
-namespace AD_MAUI;
-
-public class Program
-{
- // This is the main entry point of the application.
- static void Main(string[] args)
- {
- // if you want to use a different Application Delegate class from "AppDelegate"
- // you can specify it here.
- UIApplication.Main(args, null, typeof(AppDelegate));
- }
-}
diff --git a/AD_MAUI/Platforms/Windows/App.xaml.cs b/AD_MAUI/Platforms/Windows/App.xaml.cs
deleted file mode 100644
index 98c6944..0000000
--- a/AD_MAUI/Platforms/Windows/App.xaml.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using Microsoft.UI.Xaml;
-
-// To learn more about WinUI, the WinUI project structure,
-// and more about our project templates, see: http://aka.ms/winui-project-info.
-
-namespace AD_MAUI.WinUI;
-
-///
-/// Provides application-specific behavior to supplement the default Application class.
-///
-public partial class App : MauiWinUIApplication
-{
- ///
- /// Initializes the singleton application object. This is the first line of authored code
- /// executed, and as such is the logical equivalent of main() or WinMain().
- ///
- public App()
- {
- this.InitializeComponent();
- }
-
- protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
-}
-
diff --git a/AD_MAUI/Platforms/iOS/Program.cs b/AD_MAUI/Platforms/iOS/Program.cs
deleted file mode 100644
index ead5492..0000000
--- a/AD_MAUI/Platforms/iOS/Program.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using ObjCRuntime;
-using UIKit;
-
-namespace AD_MAUI;
-
-public class Program
-{
- // This is the main entry point of the application.
- static void Main(string[] args)
- {
- // if you want to use a different Application Delegate class from "AppDelegate"
- // you can specify it here.
- UIApplication.Main(args, null, typeof(AppDelegate));
- }
-}
diff --git a/AD_MAUI/Resources/Images/dotnet_bot.svg b/AD_MAUI/Resources/Images/dotnet_bot.svg
deleted file mode 100644
index abfaff2..0000000
--- a/AD_MAUI/Resources/Images/dotnet_bot.svg
+++ /dev/null
@@ -1,93 +0,0 @@
-
diff --git a/AMC.Model/AMC.Model.csproj b/AMC.Model/AMC.Model.csproj
new file mode 100644
index 0000000..cfadb03
--- /dev/null
+++ b/AMC.Model/AMC.Model.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net7.0
+ enable
+ enable
+
+
+
diff --git a/AMC.Model/Models/Album.cs b/AMC.Model/Models/Album.cs
new file mode 100644
index 0000000..da0c4cc
--- /dev/null
+++ b/AMC.Model/Models/Album.cs
@@ -0,0 +1,17 @@
+namespace AMC.Model.Models
+{
+ public class Album
+ {
+ public int Id { get; set; }
+ public string Title { get; set; }
+ public string Artist { get; set; }
+ public string CoverImage { get; set; }
+ public string Genre { get; set; }
+ public int Year { get; set; }
+ public DateTime ReleaseDate { get; set; }
+ public int CopyrightYear { get; set; }
+ public string ProducerBlurb { get; set; }
+ public List Songs { get; set; }
+ }
+
+}
\ No newline at end of file
diff --git a/AMC.Model/Models/Song.cs b/AMC.Model/Models/Song.cs
new file mode 100644
index 0000000..5c55dc8
--- /dev/null
+++ b/AMC.Model/Models/Song.cs
@@ -0,0 +1,9 @@
+namespace AMC.Model.Models {
+ public class Song
+ {
+ public int Id { get; set; }
+ public string Title { get; set; }
+ public int Duration { get; set; }
+ public int? Index { get; set; }
+ }
+}
diff --git a/AD_MAUI/AD_MAUI.csproj b/AMC.View/AMC.View.csproj
similarity index 70%
rename from AD_MAUI/AD_MAUI.csproj
rename to AMC.View/AMC.View.csproj
index 8512202..c9ad4b9 100644
--- a/AD_MAUI/AD_MAUI.csproj
+++ b/AMC.View/AMC.View.csproj
@@ -3,19 +3,20 @@
net7.0-android;net7.0-ios;net7.0-maccatalyst
$(TargetFrameworks);net7.0-windows10.0.19041.0
+ enable
Exe
- AD_MAUI
+ AMC.View
true
true
enable
- AD_MAUI
+ Apple Music Clone
- com.companyname.ad_maui
+ fr.uca.iut.amc.view
8fc1ba53-e1de-4aad-91d7-412badab5c89
@@ -39,7 +40,6 @@
-
@@ -48,13 +48,40 @@
+
+
+
+
-
-
+
+
+
+
+
+ True
+ True
+ Strings.resx
+
+
+
+
+
+ PublicResXFileCodeGenerator
+
+
+ PublicResXFileCodeGenerator
+ Strings.Designer.cs
+
+
+
+
+
+ MSBuild:Compile
+
diff --git a/AD_MAUI/App.xaml b/AMC.View/App.xaml
similarity index 86%
rename from AD_MAUI/App.xaml
rename to AMC.View/App.xaml
index 8b73a0b..00e4332 100644
--- a/AD_MAUI/App.xaml
+++ b/AMC.View/App.xaml
@@ -1,8 +1,8 @@
+ xmlns:local="clr-namespace:AMC.View"
+ x:Class="AMC.View.App">
diff --git a/AMC.View/App.xaml.cs b/AMC.View/App.xaml.cs
new file mode 100644
index 0000000..d855210
--- /dev/null
+++ b/AMC.View/App.xaml.cs
@@ -0,0 +1,23 @@
+using System.Globalization;
+
+namespace AMC.View;
+
+public partial class App : Application
+{
+ public App()
+ {
+ InitializeComponent();
+
+ MainPage = new AppShell();
+ }
+
+ protected override void OnStart()
+ {
+ base.OnStart();
+ // Uncomment to set the culture to French
+
+ // CultureInfo.CurrentCulture = new CultureInfo("fr-FR");
+ // CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");
+
+ }
+}
diff --git a/AD_MAUI/AppShell.xaml b/AMC.View/AppShell.xaml
similarity index 82%
rename from AD_MAUI/AppShell.xaml
rename to AMC.View/AppShell.xaml
index 77e6664..3e3e366 100644
--- a/AD_MAUI/AppShell.xaml
+++ b/AMC.View/AppShell.xaml
@@ -1,9 +1,9 @@
)value;
+ return string.Format(
+ "{0} · {1}",
+ genre,
+ year
+ );
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/AMC.View/Converters/CopyrightInfoConverter.cs b/AMC.View/Converters/CopyrightInfoConverter.cs
new file mode 100644
index 0000000..bd7c993
--- /dev/null
+++ b/AMC.View/Converters/CopyrightInfoConverter.cs
@@ -0,0 +1,22 @@
+using System.Globalization;
+
+namespace AMC.View.Converters
+{
+ public class CopyrightInfoConverter : IValueConverter
+ {
+ public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ var (copyrightYear, producerBlurb) = (ValueTuple)value;
+ return string.Format(
+ "℗ {0} {1}",
+ copyrightYear,
+ producerBlurb
+ );
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/AMC.View/Converters/SongsInfoConverter.cs b/AMC.View/Converters/SongsInfoConverter.cs
new file mode 100644
index 0000000..6a63476
--- /dev/null
+++ b/AMC.View/Converters/SongsInfoConverter.cs
@@ -0,0 +1,27 @@
+using AMC.View.Resources.Strings;
+using System.Globalization;
+
+namespace AMC.View.Converters
+{
+ public class SongsInfoConverter : IValueConverter
+ {
+ public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ var (songCount, totalDuration) = (ValueTuple)value;
+ var songLabel = songCount == 1 ? Strings.SongsLabelSingular : Strings.SongsLabelPlural;
+ var minutesLabel = totalDuration == 1 ? Strings.MinutesLabelSingular : Strings.MinutesLabelPlural;
+ return string.Format(
+ "{0} {1}, {2} {3}",
+ songCount,
+ songLabel,
+ totalDuration,
+ minutesLabel
+ );
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/AMC.View/MainPage.xaml b/AMC.View/MainPage.xaml
new file mode 100644
index 0000000..113fea4
--- /dev/null
+++ b/AMC.View/MainPage.xaml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
diff --git a/AMC.View/MainPage.xaml.cs b/AMC.View/MainPage.xaml.cs
new file mode 100644
index 0000000..56dc36f
--- /dev/null
+++ b/AMC.View/MainPage.xaml.cs
@@ -0,0 +1,20 @@
+using AMC.View.Views;
+using AMC.ViewModel.ViewModels;
+
+namespace AMC.View;
+
+public partial class MainPage : ContentPage
+{
+ public MainPage()
+ {
+ InitializeComponent();
+ }
+
+ // TODO use commands (or navigation methods?) in VMApp instead
+ private void OnRdmBtnClicked(object sender, EventArgs e)
+ {
+ Navigation.PushAsync(new AlbumPage(new AlbumViewModel(null)));
+ }
+
+}
+
diff --git a/AMC.View/MauiProgram.cs b/AMC.View/MauiProgram.cs
new file mode 100644
index 0000000..ed5dff4
--- /dev/null
+++ b/AMC.View/MauiProgram.cs
@@ -0,0 +1,24 @@
+using Microsoft.Extensions.Logging;
+
+namespace AMC.View;
+
+public static class MauiProgram
+{
+ public static MauiApp CreateMauiApp()
+ {
+ var builder = MauiApp.CreateBuilder();
+ builder
+ .UseMauiApp()
+ .ConfigureFonts(fonts =>
+ {
+ fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
+ fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold");
+ });
+
+#if DEBUG
+ builder.Logging.AddDebug();
+#endif
+
+ return builder.Build();
+ }
+}
diff --git a/AD_MAUI/Platforms/Android/AndroidManifest.xml b/AMC.View/Platforms/Android/AndroidManifest.xml
similarity index 100%
rename from AD_MAUI/Platforms/Android/AndroidManifest.xml
rename to AMC.View/Platforms/Android/AndroidManifest.xml
diff --git a/AD_MAUI/Platforms/Android/MainActivity.cs b/AMC.View/Platforms/Android/MainActivity.cs
similarity index 90%
rename from AD_MAUI/Platforms/Android/MainActivity.cs
rename to AMC.View/Platforms/Android/MainActivity.cs
index 4eafacc..c97fca4 100644
--- a/AD_MAUI/Platforms/Android/MainActivity.cs
+++ b/AMC.View/Platforms/Android/MainActivity.cs
@@ -1,8 +1,7 @@
using Android.App;
using Android.Content.PM;
-using Android.OS;
-namespace AD_MAUI;
+namespace AMC.View;
[Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)]
public class MainActivity : MauiAppCompatActivity
diff --git a/AMC.View/Platforms/Android/MainApplication.cs b/AMC.View/Platforms/Android/MainApplication.cs
new file mode 100644
index 0000000..5a6db74
--- /dev/null
+++ b/AMC.View/Platforms/Android/MainApplication.cs
@@ -0,0 +1,15 @@
+using Android.App;
+using Android.Runtime;
+
+namespace AMC.View;
+
+[Application]
+public class MainApplication : MauiApplication
+{
+ public MainApplication(IntPtr handle, JniHandleOwnership ownership)
+ : base(handle, ownership)
+ {
+ }
+
+ protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
+}
diff --git a/AD_MAUI/Platforms/Android/Resources/values/colors.xml b/AMC.View/Platforms/Android/Resources/values/colors.xml
similarity index 100%
rename from AD_MAUI/Platforms/Android/Resources/values/colors.xml
rename to AMC.View/Platforms/Android/Resources/values/colors.xml
diff --git a/AD_MAUI/Platforms/MacCatalyst/AppDelegate.cs b/AMC.View/Platforms/MacCatalyst/AppDelegate.cs
similarity index 51%
rename from AD_MAUI/Platforms/MacCatalyst/AppDelegate.cs
rename to AMC.View/Platforms/MacCatalyst/AppDelegate.cs
index fd6adca..44689ad 100644
--- a/AD_MAUI/Platforms/MacCatalyst/AppDelegate.cs
+++ b/AMC.View/Platforms/MacCatalyst/AppDelegate.cs
@@ -1,9 +1,9 @@
using Foundation;
-namespace AD_MAUI;
+namespace AMC.View;
[Register("AppDelegate")]
public class AppDelegate : MauiUIApplicationDelegate
{
- protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
+ protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
}
diff --git a/AD_MAUI/Platforms/MacCatalyst/Info.plist b/AMC.View/Platforms/MacCatalyst/Info.plist
similarity index 100%
rename from AD_MAUI/Platforms/MacCatalyst/Info.plist
rename to AMC.View/Platforms/MacCatalyst/Info.plist
diff --git a/AMC.View/Platforms/MacCatalyst/Program.cs b/AMC.View/Platforms/MacCatalyst/Program.cs
new file mode 100644
index 0000000..b4c76b7
--- /dev/null
+++ b/AMC.View/Platforms/MacCatalyst/Program.cs
@@ -0,0 +1,14 @@
+using UIKit;
+
+namespace AMC.View;
+
+public class Program
+{
+ // This is the main entry point of the application.
+ static void Main(string[] args)
+ {
+ // if you want to use a different Application Delegate class from "AppDelegate"
+ // you can specify it here.
+ UIApplication.Main(args, null, typeof(AppDelegate));
+ }
+}
diff --git a/AD_MAUI/Platforms/Tizen/Main.cs b/AMC.View/Platforms/Tizen/Main.cs
similarity index 92%
rename from AD_MAUI/Platforms/Tizen/Main.cs
rename to AMC.View/Platforms/Tizen/Main.cs
index 5d7ad99..0e4dd83 100644
--- a/AD_MAUI/Platforms/Tizen/Main.cs
+++ b/AMC.View/Platforms/Tizen/Main.cs
@@ -2,7 +2,7 @@ using System;
using Microsoft.Maui;
using Microsoft.Maui.Hosting;
-namespace AD_MAUI;
+namespace AMC.View;
class Program : MauiApplication
{
diff --git a/AD_MAUI/Platforms/Tizen/tizen-manifest.xml b/AMC.View/Platforms/Tizen/tizen-manifest.xml
similarity index 84%
rename from AD_MAUI/Platforms/Tizen/tizen-manifest.xml
rename to AMC.View/Platforms/Tizen/tizen-manifest.xml
index 3b26217..098d6b7 100644
--- a/AD_MAUI/Platforms/Tizen/tizen-manifest.xml
+++ b/AMC.View/Platforms/Tizen/tizen-manifest.xml
@@ -1,7 +1,7 @@
-
+
maui-appicon-placeholder
diff --git a/AD_MAUI/Platforms/Windows/App.xaml b/AMC.View/Platforms/Windows/App.xaml
similarity index 75%
rename from AD_MAUI/Platforms/Windows/App.xaml
rename to AMC.View/Platforms/Windows/App.xaml
index 47d0b7b..ab27179 100644
--- a/AD_MAUI/Platforms/Windows/App.xaml
+++ b/AMC.View/Platforms/Windows/App.xaml
@@ -1,8 +1,8 @@
+ xmlns:local="using:AMC.View.WinUI">
diff --git a/AMC.View/Platforms/Windows/App.xaml.cs b/AMC.View/Platforms/Windows/App.xaml.cs
new file mode 100644
index 0000000..1dbdebe
--- /dev/null
+++ b/AMC.View/Platforms/Windows/App.xaml.cs
@@ -0,0 +1,22 @@
+// To learn more about WinUI, the WinUI project structure,
+// and more about our project templates, see: http://aka.ms/winui-project-info.
+
+namespace AMC.View.WinUI;
+
+///
+/// Provides application-specific behavior to supplement the default Application class.
+///
+public partial class App : MauiWinUIApplication
+{
+ ///
+ /// Initializes the singleton application object. This is the first line of authored code
+ /// executed, and as such is the logical equivalent of main() or WinMain().
+ ///
+ public App()
+ {
+ this.InitializeComponent();
+ }
+
+ protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
+}
+
diff --git a/AD_MAUI/Platforms/Windows/Package.appxmanifest b/AMC.View/Platforms/Windows/Package.appxmanifest
similarity index 100%
rename from AD_MAUI/Platforms/Windows/Package.appxmanifest
rename to AMC.View/Platforms/Windows/Package.appxmanifest
diff --git a/AD_MAUI/Platforms/Windows/app.manifest b/AMC.View/Platforms/Windows/app.manifest
similarity index 90%
rename from AD_MAUI/Platforms/Windows/app.manifest
rename to AMC.View/Platforms/Windows/app.manifest
index 621c03b..4834b55 100644
--- a/AD_MAUI/Platforms/Windows/app.manifest
+++ b/AMC.View/Platforms/Windows/app.manifest
@@ -1,6 +1,6 @@
-
+
diff --git a/AD_MAUI/Platforms/iOS/AppDelegate.cs b/AMC.View/Platforms/iOS/AppDelegate.cs
similarity index 51%
rename from AD_MAUI/Platforms/iOS/AppDelegate.cs
rename to AMC.View/Platforms/iOS/AppDelegate.cs
index fd6adca..44689ad 100644
--- a/AD_MAUI/Platforms/iOS/AppDelegate.cs
+++ b/AMC.View/Platforms/iOS/AppDelegate.cs
@@ -1,9 +1,9 @@
using Foundation;
-namespace AD_MAUI;
+namespace AMC.View;
[Register("AppDelegate")]
public class AppDelegate : MauiUIApplicationDelegate
{
- protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
+ protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
}
diff --git a/AD_MAUI/Platforms/iOS/Info.plist b/AMC.View/Platforms/iOS/Info.plist
similarity index 100%
rename from AD_MAUI/Platforms/iOS/Info.plist
rename to AMC.View/Platforms/iOS/Info.plist
diff --git a/AMC.View/Platforms/iOS/Program.cs b/AMC.View/Platforms/iOS/Program.cs
new file mode 100644
index 0000000..b4c76b7
--- /dev/null
+++ b/AMC.View/Platforms/iOS/Program.cs
@@ -0,0 +1,14 @@
+using UIKit;
+
+namespace AMC.View;
+
+public class Program
+{
+ // This is the main entry point of the application.
+ static void Main(string[] args)
+ {
+ // if you want to use a different Application Delegate class from "AppDelegate"
+ // you can specify it here.
+ UIApplication.Main(args, null, typeof(AppDelegate));
+ }
+}
diff --git a/AD_MAUI/Properties/launchSettings.json b/AMC.View/Properties/launchSettings.json
similarity index 100%
rename from AD_MAUI/Properties/launchSettings.json
rename to AMC.View/Properties/launchSettings.json
diff --git a/AD_MAUI/Resources/AppIcon/appicon.svg b/AMC.View/Resources/AppIcon/appicon.svg
similarity index 100%
rename from AD_MAUI/Resources/AppIcon/appicon.svg
rename to AMC.View/Resources/AppIcon/appicon.svg
diff --git a/AD_MAUI/Resources/AppIcon/appiconfg.svg b/AMC.View/Resources/AppIcon/appiconfg.svg
similarity index 100%
rename from AD_MAUI/Resources/AppIcon/appiconfg.svg
rename to AMC.View/Resources/AppIcon/appiconfg.svg
diff --git a/AD_MAUI/Resources/Fonts/OpenSans-Regular.ttf b/AMC.View/Resources/Fonts/OpenSans-Regular.ttf
similarity index 100%
rename from AD_MAUI/Resources/Fonts/OpenSans-Regular.ttf
rename to AMC.View/Resources/Fonts/OpenSans-Regular.ttf
diff --git a/AD_MAUI/Resources/Fonts/OpenSans-Semibold.ttf b/AMC.View/Resources/Fonts/OpenSans-Semibold.ttf
similarity index 100%
rename from AD_MAUI/Resources/Fonts/OpenSans-Semibold.ttf
rename to AMC.View/Resources/Fonts/OpenSans-Semibold.ttf
diff --git a/AMC.View/Resources/Images/macroblank.svg b/AMC.View/Resources/Images/macroblank.svg
new file mode 100644
index 0000000..2a83810
--- /dev/null
+++ b/AMC.View/Resources/Images/macroblank.svg
@@ -0,0 +1,1788 @@
+
+
+
diff --git a/AD_MAUI/Resources/Raw/AboutAssets.txt b/AMC.View/Resources/Raw/AboutAssets.txt
similarity index 100%
rename from AD_MAUI/Resources/Raw/AboutAssets.txt
rename to AMC.View/Resources/Raw/AboutAssets.txt
diff --git a/AD_MAUI/Resources/Splash/splash.svg b/AMC.View/Resources/Splash/splash.svg
similarity index 100%
rename from AD_MAUI/Resources/Splash/splash.svg
rename to AMC.View/Resources/Splash/splash.svg
diff --git a/AMC.View/Resources/Strings/Strings.Designer.cs b/AMC.View/Resources/Strings/Strings.Designer.cs
new file mode 100644
index 0000000..e0343fe
--- /dev/null
+++ b/AMC.View/Resources/Strings/Strings.Designer.cs
@@ -0,0 +1,126 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace AMC.View.Resources.Strings {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ public class Strings {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Strings() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AMC.View.Resources.Strings.Strings", typeof(Strings).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ public static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Library.
+ ///
+ public static string LibraryTitle {
+ get {
+ return ResourceManager.GetString("LibraryTitle", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to minutes.
+ ///
+ public static string MinutesLabelPlural {
+ get {
+ return ResourceManager.GetString("MinutesLabelPlural", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to minute.
+ ///
+ public static string MinutesLabelSingular {
+ get {
+ return ResourceManager.GetString("MinutesLabelSingular", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Play.
+ ///
+ public static string PlayButton {
+ get {
+ return ResourceManager.GetString("PlayButton", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Shuffle.
+ ///
+ public static string ShuffleButton {
+ get {
+ return ResourceManager.GetString("ShuffleButton", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to songs.
+ ///
+ public static string SongsLabelPlural {
+ get {
+ return ResourceManager.GetString("SongsLabelPlural", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to song.
+ ///
+ public static string SongsLabelSingular {
+ get {
+ return ResourceManager.GetString("SongsLabelSingular", resourceCulture);
+ }
+ }
+ }
+}
diff --git a/AMC.View/Resources/Strings/Strings.fr.resx b/AMC.View/Resources/Strings/Strings.fr.resx
new file mode 100644
index 0000000..22819ed
--- /dev/null
+++ b/AMC.View/Resources/Strings/Strings.fr.resx
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Lecture
+
+
+ Aléatoire
+
+
+ Bibliothèque
+
+
+ morceaux
+
+
+ minutes
+
+
+ morceau
+
+
+ minute
+
+
\ No newline at end of file
diff --git a/AMC.View/Resources/Strings/Strings.resx b/AMC.View/Resources/Strings/Strings.resx
new file mode 100644
index 0000000..7400d27
--- /dev/null
+++ b/AMC.View/Resources/Strings/Strings.resx
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Play
+
+
+ Shuffle
+
+
+ Library
+
+
+ songs
+
+
+ minutes
+
+
+ song
+
+
+ minute
+
+
\ No newline at end of file
diff --git a/AD_MAUI/Resources/Styles/Colors.xaml b/AMC.View/Resources/Styles/Colors.xaml
similarity index 63%
rename from AD_MAUI/Resources/Styles/Colors.xaml
rename to AMC.View/Resources/Styles/Colors.xaml
index 245758b..b0edeab 100644
--- a/AD_MAUI/Resources/Styles/Colors.xaml
+++ b/AMC.View/Resources/Styles/Colors.xaml
@@ -4,11 +4,23 @@
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
- #512BD4
- #DFD8F7
- #2B0B98
+ #141414
+ #FF2D55
+ #EDEDED
+
+
+
+
+
+ #EDEDED
+ #141414
+
+
+
+
White
Black
+ #8E8E93
#E1E1E1
#C8C8C8
#ACACAC
@@ -17,11 +29,8 @@
#404040
#212121
#141414
-
-
-
-
-
+
+
@@ -31,14 +40,4 @@
- #F7B548
- #FFD590
- #FFE5B9
- #28C2D1
- #7BDDEF
- #C3F2F4
- #3E8EED
- #72ACF1
- #A7CBF6
-
\ No newline at end of file
diff --git a/AD_MAUI/Resources/Styles/Styles.xaml b/AMC.View/Resources/Styles/Styles.xaml
similarity index 97%
rename from AD_MAUI/Resources/Styles/Styles.xaml
rename to AMC.View/Resources/Styles/Styles.xaml
index dc4a034..f82e852 100644
--- a/AD_MAUI/Resources/Styles/Styles.xaml
+++ b/AMC.View/Resources/Styles/Styles.xaml
@@ -4,6 +4,12 @@
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
+
+
@@ -24,8 +30,8 @@