diff --git a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
index 339c51a..132e00e 100644
--- a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
+++ b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
@@ -33,6 +33,7 @@
false
false
false
+ false
true
diff --git a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
index 1bcad0e..db2fb59 100644
--- a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
+++ b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
@@ -9,7 +9,7 @@
Properties
PlantBox.Client.UWP
PlantBox.Client.UWP
- en-US
+ en
UAP
10.0.17763.0
10.0.16299.0
@@ -75,6 +75,7 @@
false
prompt
true
+
bin\x86\Release\
diff --git a/PlantBox.Client/PlantBox.Client.UWP/Properties/AssemblyInfo.cs b/PlantBox.Client/PlantBox.Client.UWP/Properties/AssemblyInfo.cs
index 4e30153..d9eb39c 100644
--- a/PlantBox.Client/PlantBox.Client.UWP/Properties/AssemblyInfo.cs
+++ b/PlantBox.Client/PlantBox.Client.UWP/Properties/AssemblyInfo.cs
@@ -1,8 +1,9 @@
-using System.Reflection;
+using System.Resources;
+using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
-// General Information about an assembly is controlled through the following
+// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("PlantBox.Client.UWP")]
@@ -17,13 +18,15 @@ using System.Runtime.InteropServices;
// Version information for an assembly consists of the following four values:
//
// Major Version
-// Minor Version
+// Minor Version
// Build Number
// Revision
//
-// You can specify all the values or you can default the Build and Revision Numbers
+// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
-[assembly: ComVisible(false)]
\ No newline at end of file
+[assembly: ComVisible(false)]
+[assembly: NeutralResourcesLanguage("en")]
+
diff --git a/PlantBox.Client/PlantBox.Client/App.xaml.cs b/PlantBox.Client/PlantBox.Client/App.xaml.cs
index 15772fa..18645c0 100644
--- a/PlantBox.Client/PlantBox.Client/App.xaml.cs
+++ b/PlantBox.Client/PlantBox.Client/App.xaml.cs
@@ -1,4 +1,5 @@
-using System;
+using PlantBox.Client.Forms;
+using System;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
diff --git a/PlantBox.Client/PlantBox.Client/Extensions/ImageResourceExtension.cs b/PlantBox.Client/PlantBox.Client/Extensions/ImageResourceExtension.cs
new file mode 100644
index 0000000..3ef5e52
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Extensions/ImageResourceExtension.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Text;
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Extensions
+{
+ [ContentProperty(nameof(Path))]
+ public class ImageResourceExtension : IMarkupExtension
+ {
+ public string Path { get; set; }
+
+ public static ImageSource GetImage(string name)
+ {
+ var assembly = Assembly.GetCallingAssembly();
+ string path = $"PlantBox.Client.Resources.Images.{name}";
+
+ if (!assembly.GetManifestResourceNames().Contains(path))
+ {
+#if DEBUG
+ System.Diagnostics.Debug.WriteLine($"[ImageResourceExtension](Error): File '{name}' does not exist");
+#else
+ throw new ArgumentException($"File '{Path}' does not exist");
+#endif
+ }
+
+ return ImageSource.FromResource(path, assembly);
+ }
+
+ public ImageSource ProvideValue(IServiceProvider serviceProvider)
+ {
+ return GetImage(Path);
+ }
+
+ object IMarkupExtension.ProvideValue(IServiceProvider serviceProvider)
+ {
+ return (this as IMarkupExtension).ProvideValue(serviceProvider);
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs
new file mode 100644
index 0000000..9b87c37
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs
@@ -0,0 +1,28 @@
+using PlantBox.Client.Resources;
+using System;
+using System.Collections.Generic;
+using System.Resources;
+using System.Text;
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Extensions
+{
+ [ContentProperty(nameof(Name))]
+ public class LocaleExtension : IMarkupExtension
+ {
+ public string Name { get; set; }
+
+ private static ResourceManager _resourceManager;
+
+ static LocaleExtension()
+ {
+ _resourceManager = Locale.ResourceManager;
+ }
+
+ public object ProvideValue(IServiceProvider serviceProvider)
+ {
+ return _resourceManager.GetString(Name) ?? $"#{Name}";
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml
new file mode 100644
index 0000000..fb8a099
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml.cs
new file mode 100644
index 0000000..a7a5647
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml.cs
@@ -0,0 +1,44 @@
+using PlantBox.Client.Models;
+using PlantBox.Client.Resources;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class AboutPage : ContentPage
+ {
+ public AboutPage()
+ {
+ InitializeComponent();
+
+ listView.ItemsSource = new AboutPageItemGroup[]
+ {
+ new AboutPageItemGroup(Locale.Informations)
+ {
+ new AboutPageItem(Locale.Author, "Eveldee"),
+ new AboutPageItem(Locale.Version, GetType().Assembly.GetName().Version.ToString()),
+ new AboutPageItem("GitHub", "https://github.com/eveldee0680/PlantBox", true)
+ },
+ new AboutPageItemGroup(Locale.Libraries)
+ {
+ new AboutPageItem("Microcharts", "https://github.com/aloisdeniel/Microcharts", true)
+ }
+ };
+ }
+
+ private void ListView_ItemTapped(object sender, ItemTappedEventArgs e)
+ {
+ if (e.Item is AboutPageItem item && item.IsLink == true)
+ {
+ Device.OpenUri(new Uri(item.Value));
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml b/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml
new file mode 100644
index 0000000..70c7720
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml.cs
new file mode 100644
index 0000000..5597613
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/HomePage.xaml.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class HomePage : ContentPage
+ {
+ public HomePage()
+ {
+ InitializeComponent();
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml
new file mode 100644
index 0000000..b74e2bb
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml.cs
new file mode 100644
index 0000000..7215bbf
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/MainPage.xaml.cs
@@ -0,0 +1,45 @@
+using PlantBox.Client.Models;
+using PlantBox.Client.Resources;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class MainPage : MasterDetailPage
+ {
+ public MainPage()
+ {
+ InitializeComponent();
+
+ var master = new MenuPage() { Title = "PlantBox" };
+ master.items.ItemTapped += Items_ItemTapped;
+
+ Detail = new NavigationPage(new HomePage() { Title = Locale.HomePageTitle });
+ Master = master;
+ }
+
+ private async void Items_ItemTapped(object sender, ItemTappedEventArgs e)
+ {
+ if (e.Item is MenuPageItem item)
+ {
+ IsPresented = false;
+ var page = item.PageCreator();
+ page.Title = item.Title;
+
+ if (Detail.Navigation.NavigationStack.Count > 1)
+ {
+ await Detail.Navigation.PopToRootAsync();
+ }
+
+ await Detail.Navigation.PushAsync(page);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml
new file mode 100644
index 0000000..c51c80e
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml.cs
new file mode 100644
index 0000000..f8a4f26
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/MenuPage.xaml.cs
@@ -0,0 +1,30 @@
+using PlantBox.Client.Extensions;
+using PlantBox.Client.Forms.Settings;
+using PlantBox.Client.Models;
+using PlantBox.Client.Resources;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class MenuPage : ContentPage
+ {
+ public MenuPage()
+ {
+ InitializeComponent();
+
+ items.ItemsSource = new MenuPageItem[]
+ {
+ new MenuPageItem(Locale.Settings, ImageResourceExtension.GetImage("Settings.png"), typeof(SettingsPage)),
+ new MenuPageItem(Locale.About, ImageResourceExtension.GetImage("Info.png"), typeof(AboutPage))
+ };
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml
new file mode 100644
index 0000000..6b640d5
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs
new file mode 100644
index 0000000..530d059
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms.Settings
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class SettingsPage : ContentPage
+ {
+ public SettingsPage ()
+ {
+ InitializeComponent ();
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/MainPage.xaml b/PlantBox.Client/PlantBox.Client/MainPage.xaml
deleted file mode 100644
index d53c6f8..0000000
--- a/PlantBox.Client/PlantBox.Client/MainPage.xaml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/PlantBox.Client/PlantBox.Client/MainPage.xaml.cs b/PlantBox.Client/PlantBox.Client/MainPage.xaml.cs
deleted file mode 100644
index bc5a1c1..0000000
--- a/PlantBox.Client/PlantBox.Client/MainPage.xaml.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Xamarin.Forms;
-
-namespace PlantBox.Client
-{
- public partial class MainPage : ContentPage
- {
- public MainPage()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/PlantBox.Client/PlantBox.Client/Models/AboutPageItem.cs b/PlantBox.Client/PlantBox.Client/Models/AboutPageItem.cs
new file mode 100644
index 0000000..b7cae38
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Models/AboutPageItem.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace PlantBox.Client.Models
+{
+ class AboutPageItem
+ {
+ public string Title { get; }
+ public string Value { get; }
+ public bool IsLink { get; }
+
+ public AboutPageItem(string title, string value, bool isLink = false)
+ {
+ Title = title;
+ Value = value;
+ IsLink = isLink;
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Models/AboutPageItemGroup.cs b/PlantBox.Client/PlantBox.Client/Models/AboutPageItemGroup.cs
new file mode 100644
index 0000000..e7ab84e
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Models/AboutPageItemGroup.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace PlantBox.Client.Models
+{
+ class AboutPageItemGroup : List
+ {
+ public string Title { get; set; }
+
+ public AboutPageItemGroup(string title)
+ {
+ Title = title;
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Models/MenuPageItem.cs b/PlantBox.Client/PlantBox.Client/Models/MenuPageItem.cs
new file mode 100644
index 0000000..1a91204
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Models/MenuPageItem.cs
@@ -0,0 +1,56 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Runtime.CompilerServices;
+using System.Text;
+using Xamarin.Forms;
+
+namespace PlantBox.Client.Models
+{
+ class MenuPageItem : INotifyPropertyChanged
+ {
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ private ImageSource _image;
+ public ImageSource Image
+ {
+ get => _image;
+ set
+ {
+ if (value != _image)
+ {
+ _image = value;
+ OnPropertyChanged(nameof(Image));
+ }
+ }
+ }
+
+ private string _title;
+ public string Title
+ {
+ get => _title;
+ set
+ {
+ if (value != _title)
+ {
+ _title = value;
+ OnPropertyChanged(nameof(Title));
+ }
+ }
+ }
+
+ public Func PageCreator { get; }
+
+ public MenuPageItem(string title, ImageSource image, Type targetPage)
+ {
+ _image = image;
+ _title = title;
+ PageCreator = () => (Page)Activator.CreateInstance(targetPage);
+ }
+
+ public void OnPropertyChanged([CallerMemberName] string propertyName = null)
+ {
+ PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
index 5bf2b25..dd18574 100644
--- a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
+++ b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
@@ -10,6 +10,22 @@
true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -17,4 +33,38 @@
+
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+ ResXFileCodeGenerator
+ Locale.Designer.cs
+
+
+
+
+
+
+
+
+
+ True
+ True
+ Locale.resx
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Images/Banner.png b/PlantBox.Client/PlantBox.Client/Resources/Images/Banner.png
new file mode 100644
index 0000000..7998826
Binary files /dev/null and b/PlantBox.Client/PlantBox.Client/Resources/Images/Banner.png differ
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Images/Help.png b/PlantBox.Client/PlantBox.Client/Resources/Images/Help.png
new file mode 100644
index 0000000..9dc9ad3
Binary files /dev/null and b/PlantBox.Client/PlantBox.Client/Resources/Images/Help.png differ
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Images/Info.png b/PlantBox.Client/PlantBox.Client/Resources/Images/Info.png
new file mode 100644
index 0000000..088591a
Binary files /dev/null and b/PlantBox.Client/PlantBox.Client/Resources/Images/Info.png differ
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Images/Logo_Gray.png b/PlantBox.Client/PlantBox.Client/Resources/Images/Logo_Gray.png
new file mode 100644
index 0000000..69c848e
Binary files /dev/null and b/PlantBox.Client/PlantBox.Client/Resources/Images/Logo_Gray.png differ
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Images/Settings.png b/PlantBox.Client/PlantBox.Client/Resources/Images/Settings.png
new file mode 100644
index 0000000..3dd8cf0
Binary files /dev/null and b/PlantBox.Client/PlantBox.Client/Resources/Images/Settings.png differ
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs
new file mode 100644
index 0000000..ccc21bd
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs
@@ -0,0 +1,126 @@
+//------------------------------------------------------------------------------
+//
+// Ce code a été généré par un outil.
+// Version du runtime :4.0.30319.42000
+//
+// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+// le code est régénéré.
+//
+//------------------------------------------------------------------------------
+
+namespace PlantBox.Client.Resources {
+ using System;
+
+
+ ///
+ /// Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées.
+ ///
+ // Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
+ // à l'aide d'un outil, tel que ResGen ou Visual Studio.
+ // Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
+ // avec l'option /str ou régénérez votre projet VS.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Locale {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Locale() {
+ }
+
+ ///
+ /// Retourne l'instance ResourceManager mise en cache utilisée par cette classe.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("PlantBox.Client.Resources.Locale", typeof(Locale).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Remplace la propriété CurrentUICulture du thread actuel pour toutes
+ /// les recherches de ressources à l'aide de cette classe de ressource fortement typée.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à About.
+ ///
+ internal static string About {
+ get {
+ return ResourceManager.GetString("About", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Author.
+ ///
+ internal static string Author {
+ get {
+ return ResourceManager.GetString("Author", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Home.
+ ///
+ internal static string HomePageTitle {
+ get {
+ return ResourceManager.GetString("HomePageTitle", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Informations.
+ ///
+ internal static string Informations {
+ get {
+ return ResourceManager.GetString("Informations", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Libraries.
+ ///
+ internal static string Libraries {
+ get {
+ return ResourceManager.GetString("Libraries", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Settings.
+ ///
+ internal static string Settings {
+ get {
+ return ResourceManager.GetString("Settings", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Version.
+ ///
+ internal static string Version {
+ get {
+ return ResourceManager.GetString("Version", resourceCulture);
+ }
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx
new file mode 100644
index 0000000..cb3f81c
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.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
+
+
+ À Propos
+
+
+ Auteur
+
+
+ Accueil
+
+
+ Informations
+
+
+ Bibliothèques
+
+
+ Options
+
+
+ Version
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.resx
new file mode 100644
index 0000000..6b9a86b
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.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
+
+
+ About
+
+
+ Author
+
+
+ Home
+
+
+ Informations
+
+
+ Libraries
+
+
+ Settings
+
+
+ Version
+
+
\ No newline at end of file