diff --git a/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs b/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs index 3226bad..c9496bf 100644 --- a/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs +++ b/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs @@ -6,6 +6,7 @@ using Android.Runtime; using Android.Views; using Android.Widget; using Android.OS; +using Acr.UserDialogs; namespace PlantBox.Client.Droid { @@ -20,6 +21,9 @@ namespace PlantBox.Client.Droid base.OnCreate(savedInstanceState); global::Xamarin.Forms.Forms.Init(this, savedInstanceState); LoadApplication(new App()); + + // Acr + UserDialogs.Init(this); } } } \ No newline at end of file diff --git a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj index 132e00e..9f3d80b 100644 --- a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj +++ b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj @@ -53,6 +53,9 @@ + + 7.0.4 + diff --git a/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs b/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs index 4e7a65e..d3c75d0 100644 --- a/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs +++ b/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs @@ -26,6 +26,43 @@ namespace PlantBox.Client.Droid public static void UpdateIdValues() { + global::AndroidHUD.Resource.Attribute.ahBarColor = global::PlantBox.Client.Droid.Resource.Attribute.ahBarColor; + global::AndroidHUD.Resource.Attribute.ahBarLength = global::PlantBox.Client.Droid.Resource.Attribute.ahBarLength; + global::AndroidHUD.Resource.Attribute.ahBarWidth = global::PlantBox.Client.Droid.Resource.Attribute.ahBarWidth; + global::AndroidHUD.Resource.Attribute.ahCircleColor = global::PlantBox.Client.Droid.Resource.Attribute.ahCircleColor; + global::AndroidHUD.Resource.Attribute.ahDelayMillis = global::PlantBox.Client.Droid.Resource.Attribute.ahDelayMillis; + global::AndroidHUD.Resource.Attribute.ahRadius = global::PlantBox.Client.Droid.Resource.Attribute.ahRadius; + global::AndroidHUD.Resource.Attribute.ahRimColor = global::PlantBox.Client.Droid.Resource.Attribute.ahRimColor; + global::AndroidHUD.Resource.Attribute.ahRimWidth = global::PlantBox.Client.Droid.Resource.Attribute.ahRimWidth; + global::AndroidHUD.Resource.Attribute.ahSpinSpeed = global::PlantBox.Client.Droid.Resource.Attribute.ahSpinSpeed; + global::AndroidHUD.Resource.Attribute.ahText = global::PlantBox.Client.Droid.Resource.Attribute.ahText; + global::AndroidHUD.Resource.Attribute.ahTextColor = global::PlantBox.Client.Droid.Resource.Attribute.ahTextColor; + global::AndroidHUD.Resource.Attribute.ahTextSize = global::PlantBox.Client.Droid.Resource.Attribute.ahTextSize; + global::AndroidHUD.Resource.Drawable.ic_errorstatus = global::PlantBox.Client.Droid.Resource.Drawable.ic_errorstatus; + global::AndroidHUD.Resource.Drawable.ic_successstatus = global::PlantBox.Client.Droid.Resource.Drawable.ic_successstatus; + global::AndroidHUD.Resource.Drawable.roundedbg = global::PlantBox.Client.Droid.Resource.Drawable.roundedbg; + global::AndroidHUD.Resource.Drawable.roundedbgdark = global::PlantBox.Client.Droid.Resource.Drawable.roundedbgdark; + global::AndroidHUD.Resource.Id.loadingImage = global::PlantBox.Client.Droid.Resource.Id.loadingImage; + global::AndroidHUD.Resource.Id.loadingProgressBar = global::PlantBox.Client.Droid.Resource.Id.loadingProgressBar; + global::AndroidHUD.Resource.Id.loadingProgressWheel = global::PlantBox.Client.Droid.Resource.Id.loadingProgressWheel; + global::AndroidHUD.Resource.Id.textViewStatus = global::PlantBox.Client.Droid.Resource.Id.textViewStatus; + global::AndroidHUD.Resource.Layout.loading = global::PlantBox.Client.Droid.Resource.Layout.loading; + global::AndroidHUD.Resource.Layout.loadingimage = global::PlantBox.Client.Droid.Resource.Layout.loadingimage; + global::AndroidHUD.Resource.Layout.loadingprogress = global::PlantBox.Client.Droid.Resource.Layout.loadingprogress; + global::AndroidHUD.Resource.String.library_name = global::PlantBox.Client.Droid.Resource.String.library_name; + global::AndroidHUD.Resource.Styleable.ProgressWheel = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarColor; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarLength = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarLength; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarWidth = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarWidth; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahCircleColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahCircleColor; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahDelayMillis = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahDelayMillis; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRadius = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRadius; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRimColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRimColor; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRimWidth = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRimWidth; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahSpinSpeed = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahSpinSpeed; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahText = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahText; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahTextColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahTextColor; + global::AndroidHUD.Resource.Styleable.ProgressWheel_ahTextSize = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahTextSize; global::Xamarin.Forms.Platform.Android.Resource.Attribute.actionBarSize = global::PlantBox.Client.Droid.Resource.Attribute.actionBarSize; } @@ -211,6 +248,42 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f01008e public const int activityChooserViewStyle = 2130772110; + // aapt resource value: 0x7f010176 + public const int ahBarColor = 2130772342; + + // aapt resource value: 0x7f01017e + public const int ahBarLength = 2130772350; + + // aapt resource value: 0x7f01017d + public const int ahBarWidth = 2130772349; + + // aapt resource value: 0x7f01017b + public const int ahCircleColor = 2130772347; + + // aapt resource value: 0x7f01017a + public const int ahDelayMillis = 2130772346; + + // aapt resource value: 0x7f01017c + public const int ahRadius = 2130772348; + + // aapt resource value: 0x7f010177 + public const int ahRimColor = 2130772343; + + // aapt resource value: 0x7f010178 + public const int ahRimWidth = 2130772344; + + // aapt resource value: 0x7f010179 + public const int ahSpinSpeed = 2130772345; + + // aapt resource value: 0x7f010173 + public const int ahText = 2130772339; + + // aapt resource value: 0x7f010174 + public const int ahTextColor = 2130772340; + + // aapt resource value: 0x7f010175 + public const int ahTextSize = 2130772341; + // aapt resource value: 0x7f0100b3 public const int alertDialogButtonGroupStyle = 2130772147; @@ -2342,26 +2415,26 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f020053 public const int avd_hide_password = 2130837587; - // aapt resource value: 0x7f02012f - public const int avd_hide_password_1 = 2130837807; + // aapt resource value: 0x7f020133 + public const int avd_hide_password_1 = 2130837811; - // aapt resource value: 0x7f020130 - public const int avd_hide_password_2 = 2130837808; + // aapt resource value: 0x7f020134 + public const int avd_hide_password_2 = 2130837812; - // aapt resource value: 0x7f020131 - public const int avd_hide_password_3 = 2130837809; + // aapt resource value: 0x7f020135 + public const int avd_hide_password_3 = 2130837813; // aapt resource value: 0x7f020054 public const int avd_show_password = 2130837588; - // aapt resource value: 0x7f020132 - public const int avd_show_password_1 = 2130837810; + // aapt resource value: 0x7f020136 + public const int avd_show_password_1 = 2130837814; - // aapt resource value: 0x7f020133 - public const int avd_show_password_2 = 2130837811; + // aapt resource value: 0x7f020137 + public const int avd_show_password_2 = 2130837815; - // aapt resource value: 0x7f020134 - public const int avd_show_password_3 = 2130837812; + // aapt resource value: 0x7f020138 + public const int avd_show_password_3 = 2130837816; // aapt resource value: 0x7f020055 public const int design_bottom_navigation_item_background = 2130837589; @@ -2394,628 +2467,640 @@ namespace PlantBox.Client.Droid public const int ic_dialog_close_light = 2130837598; // aapt resource value: 0x7f02005f - public const int ic_group_collapse_00 = 2130837599; + public const int ic_errorstatus = 2130837599; // aapt resource value: 0x7f020060 - public const int ic_group_collapse_01 = 2130837600; + public const int ic_group_collapse_00 = 2130837600; // aapt resource value: 0x7f020061 - public const int ic_group_collapse_02 = 2130837601; + public const int ic_group_collapse_01 = 2130837601; // aapt resource value: 0x7f020062 - public const int ic_group_collapse_03 = 2130837602; + public const int ic_group_collapse_02 = 2130837602; // aapt resource value: 0x7f020063 - public const int ic_group_collapse_04 = 2130837603; + public const int ic_group_collapse_03 = 2130837603; // aapt resource value: 0x7f020064 - public const int ic_group_collapse_05 = 2130837604; + public const int ic_group_collapse_04 = 2130837604; // aapt resource value: 0x7f020065 - public const int ic_group_collapse_06 = 2130837605; + public const int ic_group_collapse_05 = 2130837605; // aapt resource value: 0x7f020066 - public const int ic_group_collapse_07 = 2130837606; + public const int ic_group_collapse_06 = 2130837606; // aapt resource value: 0x7f020067 - public const int ic_group_collapse_08 = 2130837607; + public const int ic_group_collapse_07 = 2130837607; // aapt resource value: 0x7f020068 - public const int ic_group_collapse_09 = 2130837608; + public const int ic_group_collapse_08 = 2130837608; // aapt resource value: 0x7f020069 - public const int ic_group_collapse_10 = 2130837609; + public const int ic_group_collapse_09 = 2130837609; // aapt resource value: 0x7f02006a - public const int ic_group_collapse_11 = 2130837610; + public const int ic_group_collapse_10 = 2130837610; // aapt resource value: 0x7f02006b - public const int ic_group_collapse_12 = 2130837611; + public const int ic_group_collapse_11 = 2130837611; // aapt resource value: 0x7f02006c - public const int ic_group_collapse_13 = 2130837612; + public const int ic_group_collapse_12 = 2130837612; // aapt resource value: 0x7f02006d - public const int ic_group_collapse_14 = 2130837613; + public const int ic_group_collapse_13 = 2130837613; // aapt resource value: 0x7f02006e - public const int ic_group_collapse_15 = 2130837614; + public const int ic_group_collapse_14 = 2130837614; // aapt resource value: 0x7f02006f - public const int ic_group_expand_00 = 2130837615; + public const int ic_group_collapse_15 = 2130837615; // aapt resource value: 0x7f020070 - public const int ic_group_expand_01 = 2130837616; + public const int ic_group_expand_00 = 2130837616; // aapt resource value: 0x7f020071 - public const int ic_group_expand_02 = 2130837617; + public const int ic_group_expand_01 = 2130837617; // aapt resource value: 0x7f020072 - public const int ic_group_expand_03 = 2130837618; + public const int ic_group_expand_02 = 2130837618; // aapt resource value: 0x7f020073 - public const int ic_group_expand_04 = 2130837619; + public const int ic_group_expand_03 = 2130837619; // aapt resource value: 0x7f020074 - public const int ic_group_expand_05 = 2130837620; + public const int ic_group_expand_04 = 2130837620; // aapt resource value: 0x7f020075 - public const int ic_group_expand_06 = 2130837621; + public const int ic_group_expand_05 = 2130837621; // aapt resource value: 0x7f020076 - public const int ic_group_expand_07 = 2130837622; + public const int ic_group_expand_06 = 2130837622; // aapt resource value: 0x7f020077 - public const int ic_group_expand_08 = 2130837623; + public const int ic_group_expand_07 = 2130837623; // aapt resource value: 0x7f020078 - public const int ic_group_expand_09 = 2130837624; + public const int ic_group_expand_08 = 2130837624; // aapt resource value: 0x7f020079 - public const int ic_group_expand_10 = 2130837625; + public const int ic_group_expand_09 = 2130837625; // aapt resource value: 0x7f02007a - public const int ic_group_expand_11 = 2130837626; + public const int ic_group_expand_10 = 2130837626; // aapt resource value: 0x7f02007b - public const int ic_group_expand_12 = 2130837627; + public const int ic_group_expand_11 = 2130837627; // aapt resource value: 0x7f02007c - public const int ic_group_expand_13 = 2130837628; + public const int ic_group_expand_12 = 2130837628; // aapt resource value: 0x7f02007d - public const int ic_group_expand_14 = 2130837629; + public const int ic_group_expand_13 = 2130837629; // aapt resource value: 0x7f02007e - public const int ic_group_expand_15 = 2130837630; + public const int ic_group_expand_14 = 2130837630; // aapt resource value: 0x7f02007f - public const int ic_media_pause_dark = 2130837631; + public const int ic_group_expand_15 = 2130837631; // aapt resource value: 0x7f020080 - public const int ic_media_pause_light = 2130837632; + public const int ic_media_pause_dark = 2130837632; // aapt resource value: 0x7f020081 - public const int ic_media_play_dark = 2130837633; + public const int ic_media_pause_light = 2130837633; // aapt resource value: 0x7f020082 - public const int ic_media_play_light = 2130837634; + public const int ic_media_play_dark = 2130837634; // aapt resource value: 0x7f020083 - public const int ic_media_stop_dark = 2130837635; + public const int ic_media_play_light = 2130837635; // aapt resource value: 0x7f020084 - public const int ic_media_stop_light = 2130837636; + public const int ic_media_stop_dark = 2130837636; // aapt resource value: 0x7f020085 - public const int ic_mr_button_connected_00_dark = 2130837637; + public const int ic_media_stop_light = 2130837637; // aapt resource value: 0x7f020086 - public const int ic_mr_button_connected_00_light = 2130837638; + public const int ic_mr_button_connected_00_dark = 2130837638; // aapt resource value: 0x7f020087 - public const int ic_mr_button_connected_01_dark = 2130837639; + public const int ic_mr_button_connected_00_light = 2130837639; // aapt resource value: 0x7f020088 - public const int ic_mr_button_connected_01_light = 2130837640; + public const int ic_mr_button_connected_01_dark = 2130837640; // aapt resource value: 0x7f020089 - public const int ic_mr_button_connected_02_dark = 2130837641; + public const int ic_mr_button_connected_01_light = 2130837641; // aapt resource value: 0x7f02008a - public const int ic_mr_button_connected_02_light = 2130837642; + public const int ic_mr_button_connected_02_dark = 2130837642; // aapt resource value: 0x7f02008b - public const int ic_mr_button_connected_03_dark = 2130837643; + public const int ic_mr_button_connected_02_light = 2130837643; // aapt resource value: 0x7f02008c - public const int ic_mr_button_connected_03_light = 2130837644; + public const int ic_mr_button_connected_03_dark = 2130837644; // aapt resource value: 0x7f02008d - public const int ic_mr_button_connected_04_dark = 2130837645; + public const int ic_mr_button_connected_03_light = 2130837645; // aapt resource value: 0x7f02008e - public const int ic_mr_button_connected_04_light = 2130837646; + public const int ic_mr_button_connected_04_dark = 2130837646; // aapt resource value: 0x7f02008f - public const int ic_mr_button_connected_05_dark = 2130837647; + public const int ic_mr_button_connected_04_light = 2130837647; // aapt resource value: 0x7f020090 - public const int ic_mr_button_connected_05_light = 2130837648; + public const int ic_mr_button_connected_05_dark = 2130837648; // aapt resource value: 0x7f020091 - public const int ic_mr_button_connected_06_dark = 2130837649; + public const int ic_mr_button_connected_05_light = 2130837649; // aapt resource value: 0x7f020092 - public const int ic_mr_button_connected_06_light = 2130837650; + public const int ic_mr_button_connected_06_dark = 2130837650; // aapt resource value: 0x7f020093 - public const int ic_mr_button_connected_07_dark = 2130837651; + public const int ic_mr_button_connected_06_light = 2130837651; // aapt resource value: 0x7f020094 - public const int ic_mr_button_connected_07_light = 2130837652; + public const int ic_mr_button_connected_07_dark = 2130837652; // aapt resource value: 0x7f020095 - public const int ic_mr_button_connected_08_dark = 2130837653; + public const int ic_mr_button_connected_07_light = 2130837653; // aapt resource value: 0x7f020096 - public const int ic_mr_button_connected_08_light = 2130837654; + public const int ic_mr_button_connected_08_dark = 2130837654; // aapt resource value: 0x7f020097 - public const int ic_mr_button_connected_09_dark = 2130837655; + public const int ic_mr_button_connected_08_light = 2130837655; // aapt resource value: 0x7f020098 - public const int ic_mr_button_connected_09_light = 2130837656; + public const int ic_mr_button_connected_09_dark = 2130837656; // aapt resource value: 0x7f020099 - public const int ic_mr_button_connected_10_dark = 2130837657; + public const int ic_mr_button_connected_09_light = 2130837657; // aapt resource value: 0x7f02009a - public const int ic_mr_button_connected_10_light = 2130837658; + public const int ic_mr_button_connected_10_dark = 2130837658; // aapt resource value: 0x7f02009b - public const int ic_mr_button_connected_11_dark = 2130837659; + public const int ic_mr_button_connected_10_light = 2130837659; // aapt resource value: 0x7f02009c - public const int ic_mr_button_connected_11_light = 2130837660; + public const int ic_mr_button_connected_11_dark = 2130837660; // aapt resource value: 0x7f02009d - public const int ic_mr_button_connected_12_dark = 2130837661; + public const int ic_mr_button_connected_11_light = 2130837661; // aapt resource value: 0x7f02009e - public const int ic_mr_button_connected_12_light = 2130837662; + public const int ic_mr_button_connected_12_dark = 2130837662; // aapt resource value: 0x7f02009f - public const int ic_mr_button_connected_13_dark = 2130837663; + public const int ic_mr_button_connected_12_light = 2130837663; // aapt resource value: 0x7f0200a0 - public const int ic_mr_button_connected_13_light = 2130837664; + public const int ic_mr_button_connected_13_dark = 2130837664; // aapt resource value: 0x7f0200a1 - public const int ic_mr_button_connected_14_dark = 2130837665; + public const int ic_mr_button_connected_13_light = 2130837665; // aapt resource value: 0x7f0200a2 - public const int ic_mr_button_connected_14_light = 2130837666; + public const int ic_mr_button_connected_14_dark = 2130837666; // aapt resource value: 0x7f0200a3 - public const int ic_mr_button_connected_15_dark = 2130837667; + public const int ic_mr_button_connected_14_light = 2130837667; // aapt resource value: 0x7f0200a4 - public const int ic_mr_button_connected_15_light = 2130837668; + public const int ic_mr_button_connected_15_dark = 2130837668; // aapt resource value: 0x7f0200a5 - public const int ic_mr_button_connected_16_dark = 2130837669; + public const int ic_mr_button_connected_15_light = 2130837669; // aapt resource value: 0x7f0200a6 - public const int ic_mr_button_connected_16_light = 2130837670; + public const int ic_mr_button_connected_16_dark = 2130837670; // aapt resource value: 0x7f0200a7 - public const int ic_mr_button_connected_17_dark = 2130837671; + public const int ic_mr_button_connected_16_light = 2130837671; // aapt resource value: 0x7f0200a8 - public const int ic_mr_button_connected_17_light = 2130837672; + public const int ic_mr_button_connected_17_dark = 2130837672; // aapt resource value: 0x7f0200a9 - public const int ic_mr_button_connected_18_dark = 2130837673; + public const int ic_mr_button_connected_17_light = 2130837673; // aapt resource value: 0x7f0200aa - public const int ic_mr_button_connected_18_light = 2130837674; + public const int ic_mr_button_connected_18_dark = 2130837674; // aapt resource value: 0x7f0200ab - public const int ic_mr_button_connected_19_dark = 2130837675; + public const int ic_mr_button_connected_18_light = 2130837675; // aapt resource value: 0x7f0200ac - public const int ic_mr_button_connected_19_light = 2130837676; + public const int ic_mr_button_connected_19_dark = 2130837676; // aapt resource value: 0x7f0200ad - public const int ic_mr_button_connected_20_dark = 2130837677; + public const int ic_mr_button_connected_19_light = 2130837677; // aapt resource value: 0x7f0200ae - public const int ic_mr_button_connected_20_light = 2130837678; + public const int ic_mr_button_connected_20_dark = 2130837678; // aapt resource value: 0x7f0200af - public const int ic_mr_button_connected_21_dark = 2130837679; + public const int ic_mr_button_connected_20_light = 2130837679; // aapt resource value: 0x7f0200b0 - public const int ic_mr_button_connected_21_light = 2130837680; + public const int ic_mr_button_connected_21_dark = 2130837680; // aapt resource value: 0x7f0200b1 - public const int ic_mr_button_connected_22_dark = 2130837681; + public const int ic_mr_button_connected_21_light = 2130837681; // aapt resource value: 0x7f0200b2 - public const int ic_mr_button_connected_22_light = 2130837682; + public const int ic_mr_button_connected_22_dark = 2130837682; // aapt resource value: 0x7f0200b3 - public const int ic_mr_button_connected_23_dark = 2130837683; + public const int ic_mr_button_connected_22_light = 2130837683; // aapt resource value: 0x7f0200b4 - public const int ic_mr_button_connected_23_light = 2130837684; + public const int ic_mr_button_connected_23_dark = 2130837684; // aapt resource value: 0x7f0200b5 - public const int ic_mr_button_connected_24_dark = 2130837685; + public const int ic_mr_button_connected_23_light = 2130837685; // aapt resource value: 0x7f0200b6 - public const int ic_mr_button_connected_24_light = 2130837686; + public const int ic_mr_button_connected_24_dark = 2130837686; // aapt resource value: 0x7f0200b7 - public const int ic_mr_button_connected_25_dark = 2130837687; + public const int ic_mr_button_connected_24_light = 2130837687; // aapt resource value: 0x7f0200b8 - public const int ic_mr_button_connected_25_light = 2130837688; + public const int ic_mr_button_connected_25_dark = 2130837688; // aapt resource value: 0x7f0200b9 - public const int ic_mr_button_connected_26_dark = 2130837689; + public const int ic_mr_button_connected_25_light = 2130837689; // aapt resource value: 0x7f0200ba - public const int ic_mr_button_connected_26_light = 2130837690; + public const int ic_mr_button_connected_26_dark = 2130837690; // aapt resource value: 0x7f0200bb - public const int ic_mr_button_connected_27_dark = 2130837691; + public const int ic_mr_button_connected_26_light = 2130837691; // aapt resource value: 0x7f0200bc - public const int ic_mr_button_connected_27_light = 2130837692; + public const int ic_mr_button_connected_27_dark = 2130837692; // aapt resource value: 0x7f0200bd - public const int ic_mr_button_connected_28_dark = 2130837693; + public const int ic_mr_button_connected_27_light = 2130837693; // aapt resource value: 0x7f0200be - public const int ic_mr_button_connected_28_light = 2130837694; + public const int ic_mr_button_connected_28_dark = 2130837694; // aapt resource value: 0x7f0200bf - public const int ic_mr_button_connected_29_dark = 2130837695; + public const int ic_mr_button_connected_28_light = 2130837695; // aapt resource value: 0x7f0200c0 - public const int ic_mr_button_connected_29_light = 2130837696; + public const int ic_mr_button_connected_29_dark = 2130837696; // aapt resource value: 0x7f0200c1 - public const int ic_mr_button_connected_30_dark = 2130837697; + public const int ic_mr_button_connected_29_light = 2130837697; // aapt resource value: 0x7f0200c2 - public const int ic_mr_button_connected_30_light = 2130837698; + public const int ic_mr_button_connected_30_dark = 2130837698; // aapt resource value: 0x7f0200c3 - public const int ic_mr_button_connecting_00_dark = 2130837699; + public const int ic_mr_button_connected_30_light = 2130837699; // aapt resource value: 0x7f0200c4 - public const int ic_mr_button_connecting_00_light = 2130837700; + public const int ic_mr_button_connecting_00_dark = 2130837700; // aapt resource value: 0x7f0200c5 - public const int ic_mr_button_connecting_01_dark = 2130837701; + public const int ic_mr_button_connecting_00_light = 2130837701; // aapt resource value: 0x7f0200c6 - public const int ic_mr_button_connecting_01_light = 2130837702; + public const int ic_mr_button_connecting_01_dark = 2130837702; // aapt resource value: 0x7f0200c7 - public const int ic_mr_button_connecting_02_dark = 2130837703; + public const int ic_mr_button_connecting_01_light = 2130837703; // aapt resource value: 0x7f0200c8 - public const int ic_mr_button_connecting_02_light = 2130837704; + public const int ic_mr_button_connecting_02_dark = 2130837704; // aapt resource value: 0x7f0200c9 - public const int ic_mr_button_connecting_03_dark = 2130837705; + public const int ic_mr_button_connecting_02_light = 2130837705; // aapt resource value: 0x7f0200ca - public const int ic_mr_button_connecting_03_light = 2130837706; + public const int ic_mr_button_connecting_03_dark = 2130837706; // aapt resource value: 0x7f0200cb - public const int ic_mr_button_connecting_04_dark = 2130837707; + public const int ic_mr_button_connecting_03_light = 2130837707; // aapt resource value: 0x7f0200cc - public const int ic_mr_button_connecting_04_light = 2130837708; + public const int ic_mr_button_connecting_04_dark = 2130837708; // aapt resource value: 0x7f0200cd - public const int ic_mr_button_connecting_05_dark = 2130837709; + public const int ic_mr_button_connecting_04_light = 2130837709; // aapt resource value: 0x7f0200ce - public const int ic_mr_button_connecting_05_light = 2130837710; + public const int ic_mr_button_connecting_05_dark = 2130837710; // aapt resource value: 0x7f0200cf - public const int ic_mr_button_connecting_06_dark = 2130837711; + public const int ic_mr_button_connecting_05_light = 2130837711; // aapt resource value: 0x7f0200d0 - public const int ic_mr_button_connecting_06_light = 2130837712; + public const int ic_mr_button_connecting_06_dark = 2130837712; // aapt resource value: 0x7f0200d1 - public const int ic_mr_button_connecting_07_dark = 2130837713; + public const int ic_mr_button_connecting_06_light = 2130837713; // aapt resource value: 0x7f0200d2 - public const int ic_mr_button_connecting_07_light = 2130837714; + public const int ic_mr_button_connecting_07_dark = 2130837714; // aapt resource value: 0x7f0200d3 - public const int ic_mr_button_connecting_08_dark = 2130837715; + public const int ic_mr_button_connecting_07_light = 2130837715; // aapt resource value: 0x7f0200d4 - public const int ic_mr_button_connecting_08_light = 2130837716; + public const int ic_mr_button_connecting_08_dark = 2130837716; // aapt resource value: 0x7f0200d5 - public const int ic_mr_button_connecting_09_dark = 2130837717; + public const int ic_mr_button_connecting_08_light = 2130837717; // aapt resource value: 0x7f0200d6 - public const int ic_mr_button_connecting_09_light = 2130837718; + public const int ic_mr_button_connecting_09_dark = 2130837718; // aapt resource value: 0x7f0200d7 - public const int ic_mr_button_connecting_10_dark = 2130837719; + public const int ic_mr_button_connecting_09_light = 2130837719; // aapt resource value: 0x7f0200d8 - public const int ic_mr_button_connecting_10_light = 2130837720; + public const int ic_mr_button_connecting_10_dark = 2130837720; // aapt resource value: 0x7f0200d9 - public const int ic_mr_button_connecting_11_dark = 2130837721; + public const int ic_mr_button_connecting_10_light = 2130837721; // aapt resource value: 0x7f0200da - public const int ic_mr_button_connecting_11_light = 2130837722; + public const int ic_mr_button_connecting_11_dark = 2130837722; // aapt resource value: 0x7f0200db - public const int ic_mr_button_connecting_12_dark = 2130837723; + public const int ic_mr_button_connecting_11_light = 2130837723; // aapt resource value: 0x7f0200dc - public const int ic_mr_button_connecting_12_light = 2130837724; + public const int ic_mr_button_connecting_12_dark = 2130837724; // aapt resource value: 0x7f0200dd - public const int ic_mr_button_connecting_13_dark = 2130837725; + public const int ic_mr_button_connecting_12_light = 2130837725; // aapt resource value: 0x7f0200de - public const int ic_mr_button_connecting_13_light = 2130837726; + public const int ic_mr_button_connecting_13_dark = 2130837726; // aapt resource value: 0x7f0200df - public const int ic_mr_button_connecting_14_dark = 2130837727; + public const int ic_mr_button_connecting_13_light = 2130837727; // aapt resource value: 0x7f0200e0 - public const int ic_mr_button_connecting_14_light = 2130837728; + public const int ic_mr_button_connecting_14_dark = 2130837728; // aapt resource value: 0x7f0200e1 - public const int ic_mr_button_connecting_15_dark = 2130837729; + public const int ic_mr_button_connecting_14_light = 2130837729; // aapt resource value: 0x7f0200e2 - public const int ic_mr_button_connecting_15_light = 2130837730; + public const int ic_mr_button_connecting_15_dark = 2130837730; // aapt resource value: 0x7f0200e3 - public const int ic_mr_button_connecting_16_dark = 2130837731; + public const int ic_mr_button_connecting_15_light = 2130837731; // aapt resource value: 0x7f0200e4 - public const int ic_mr_button_connecting_16_light = 2130837732; + public const int ic_mr_button_connecting_16_dark = 2130837732; // aapt resource value: 0x7f0200e5 - public const int ic_mr_button_connecting_17_dark = 2130837733; + public const int ic_mr_button_connecting_16_light = 2130837733; // aapt resource value: 0x7f0200e6 - public const int ic_mr_button_connecting_17_light = 2130837734; + public const int ic_mr_button_connecting_17_dark = 2130837734; // aapt resource value: 0x7f0200e7 - public const int ic_mr_button_connecting_18_dark = 2130837735; + public const int ic_mr_button_connecting_17_light = 2130837735; // aapt resource value: 0x7f0200e8 - public const int ic_mr_button_connecting_18_light = 2130837736; + public const int ic_mr_button_connecting_18_dark = 2130837736; // aapt resource value: 0x7f0200e9 - public const int ic_mr_button_connecting_19_dark = 2130837737; + public const int ic_mr_button_connecting_18_light = 2130837737; // aapt resource value: 0x7f0200ea - public const int ic_mr_button_connecting_19_light = 2130837738; + public const int ic_mr_button_connecting_19_dark = 2130837738; // aapt resource value: 0x7f0200eb - public const int ic_mr_button_connecting_20_dark = 2130837739; + public const int ic_mr_button_connecting_19_light = 2130837739; // aapt resource value: 0x7f0200ec - public const int ic_mr_button_connecting_20_light = 2130837740; + public const int ic_mr_button_connecting_20_dark = 2130837740; // aapt resource value: 0x7f0200ed - public const int ic_mr_button_connecting_21_dark = 2130837741; + public const int ic_mr_button_connecting_20_light = 2130837741; // aapt resource value: 0x7f0200ee - public const int ic_mr_button_connecting_21_light = 2130837742; + public const int ic_mr_button_connecting_21_dark = 2130837742; // aapt resource value: 0x7f0200ef - public const int ic_mr_button_connecting_22_dark = 2130837743; + public const int ic_mr_button_connecting_21_light = 2130837743; // aapt resource value: 0x7f0200f0 - public const int ic_mr_button_connecting_22_light = 2130837744; + public const int ic_mr_button_connecting_22_dark = 2130837744; // aapt resource value: 0x7f0200f1 - public const int ic_mr_button_connecting_23_dark = 2130837745; + public const int ic_mr_button_connecting_22_light = 2130837745; // aapt resource value: 0x7f0200f2 - public const int ic_mr_button_connecting_23_light = 2130837746; + public const int ic_mr_button_connecting_23_dark = 2130837746; // aapt resource value: 0x7f0200f3 - public const int ic_mr_button_connecting_24_dark = 2130837747; + public const int ic_mr_button_connecting_23_light = 2130837747; // aapt resource value: 0x7f0200f4 - public const int ic_mr_button_connecting_24_light = 2130837748; + public const int ic_mr_button_connecting_24_dark = 2130837748; // aapt resource value: 0x7f0200f5 - public const int ic_mr_button_connecting_25_dark = 2130837749; + public const int ic_mr_button_connecting_24_light = 2130837749; // aapt resource value: 0x7f0200f6 - public const int ic_mr_button_connecting_25_light = 2130837750; + public const int ic_mr_button_connecting_25_dark = 2130837750; // aapt resource value: 0x7f0200f7 - public const int ic_mr_button_connecting_26_dark = 2130837751; + public const int ic_mr_button_connecting_25_light = 2130837751; // aapt resource value: 0x7f0200f8 - public const int ic_mr_button_connecting_26_light = 2130837752; + public const int ic_mr_button_connecting_26_dark = 2130837752; // aapt resource value: 0x7f0200f9 - public const int ic_mr_button_connecting_27_dark = 2130837753; + public const int ic_mr_button_connecting_26_light = 2130837753; // aapt resource value: 0x7f0200fa - public const int ic_mr_button_connecting_27_light = 2130837754; + public const int ic_mr_button_connecting_27_dark = 2130837754; // aapt resource value: 0x7f0200fb - public const int ic_mr_button_connecting_28_dark = 2130837755; + public const int ic_mr_button_connecting_27_light = 2130837755; // aapt resource value: 0x7f0200fc - public const int ic_mr_button_connecting_28_light = 2130837756; + public const int ic_mr_button_connecting_28_dark = 2130837756; // aapt resource value: 0x7f0200fd - public const int ic_mr_button_connecting_29_dark = 2130837757; + public const int ic_mr_button_connecting_28_light = 2130837757; // aapt resource value: 0x7f0200fe - public const int ic_mr_button_connecting_29_light = 2130837758; + public const int ic_mr_button_connecting_29_dark = 2130837758; // aapt resource value: 0x7f0200ff - public const int ic_mr_button_connecting_30_dark = 2130837759; + public const int ic_mr_button_connecting_29_light = 2130837759; // aapt resource value: 0x7f020100 - public const int ic_mr_button_connecting_30_light = 2130837760; + public const int ic_mr_button_connecting_30_dark = 2130837760; // aapt resource value: 0x7f020101 - public const int ic_mr_button_disabled_dark = 2130837761; + public const int ic_mr_button_connecting_30_light = 2130837761; // aapt resource value: 0x7f020102 - public const int ic_mr_button_disabled_light = 2130837762; + public const int ic_mr_button_disabled_dark = 2130837762; // aapt resource value: 0x7f020103 - public const int ic_mr_button_disconnected_dark = 2130837763; + public const int ic_mr_button_disabled_light = 2130837763; // aapt resource value: 0x7f020104 - public const int ic_mr_button_disconnected_light = 2130837764; + public const int ic_mr_button_disconnected_dark = 2130837764; // aapt resource value: 0x7f020105 - public const int ic_mr_button_grey = 2130837765; + public const int ic_mr_button_disconnected_light = 2130837765; // aapt resource value: 0x7f020106 - public const int ic_vol_type_speaker_dark = 2130837766; + public const int ic_mr_button_grey = 2130837766; // aapt resource value: 0x7f020107 - public const int ic_vol_type_speaker_group_dark = 2130837767; + public const int ic_successstatus = 2130837767; // aapt resource value: 0x7f020108 - public const int ic_vol_type_speaker_group_light = 2130837768; + public const int ic_vol_type_speaker_dark = 2130837768; // aapt resource value: 0x7f020109 - public const int ic_vol_type_speaker_light = 2130837769; + public const int ic_vol_type_speaker_group_dark = 2130837769; // aapt resource value: 0x7f02010a - public const int ic_vol_type_tv_dark = 2130837770; + public const int ic_vol_type_speaker_group_light = 2130837770; // aapt resource value: 0x7f02010b - public const int ic_vol_type_tv_light = 2130837771; + public const int ic_vol_type_speaker_light = 2130837771; // aapt resource value: 0x7f02010c - public const int mr_button_connected_dark = 2130837772; + public const int ic_vol_type_tv_dark = 2130837772; // aapt resource value: 0x7f02010d - public const int mr_button_connected_light = 2130837773; + public const int ic_vol_type_tv_light = 2130837773; // aapt resource value: 0x7f02010e - public const int mr_button_connecting_dark = 2130837774; + public const int mr_button_connected_dark = 2130837774; // aapt resource value: 0x7f02010f - public const int mr_button_connecting_light = 2130837775; + public const int mr_button_connected_light = 2130837775; // aapt resource value: 0x7f020110 - public const int mr_button_dark = 2130837776; + public const int mr_button_connecting_dark = 2130837776; // aapt resource value: 0x7f020111 - public const int mr_button_light = 2130837777; + public const int mr_button_connecting_light = 2130837777; // aapt resource value: 0x7f020112 - public const int mr_dialog_close_dark = 2130837778; + public const int mr_button_dark = 2130837778; // aapt resource value: 0x7f020113 - public const int mr_dialog_close_light = 2130837779; + public const int mr_button_light = 2130837779; // aapt resource value: 0x7f020114 - public const int mr_dialog_material_background_dark = 2130837780; + public const int mr_dialog_close_dark = 2130837780; // aapt resource value: 0x7f020115 - public const int mr_dialog_material_background_light = 2130837781; + public const int mr_dialog_close_light = 2130837781; // aapt resource value: 0x7f020116 - public const int mr_group_collapse = 2130837782; + public const int mr_dialog_material_background_dark = 2130837782; // aapt resource value: 0x7f020117 - public const int mr_group_expand = 2130837783; + public const int mr_dialog_material_background_light = 2130837783; // aapt resource value: 0x7f020118 - public const int mr_media_pause_dark = 2130837784; + public const int mr_group_collapse = 2130837784; // aapt resource value: 0x7f020119 - public const int mr_media_pause_light = 2130837785; + public const int mr_group_expand = 2130837785; // aapt resource value: 0x7f02011a - public const int mr_media_play_dark = 2130837786; + public const int mr_media_pause_dark = 2130837786; // aapt resource value: 0x7f02011b - public const int mr_media_play_light = 2130837787; + public const int mr_media_pause_light = 2130837787; // aapt resource value: 0x7f02011c - public const int mr_media_stop_dark = 2130837788; + public const int mr_media_play_dark = 2130837788; // aapt resource value: 0x7f02011d - public const int mr_media_stop_light = 2130837789; + public const int mr_media_play_light = 2130837789; // aapt resource value: 0x7f02011e - public const int mr_vol_type_audiotrack_dark = 2130837790; + public const int mr_media_stop_dark = 2130837790; // aapt resource value: 0x7f02011f - public const int mr_vol_type_audiotrack_light = 2130837791; + public const int mr_media_stop_light = 2130837791; // aapt resource value: 0x7f020120 - public const int navigation_empty_icon = 2130837792; + public const int mr_vol_type_audiotrack_dark = 2130837792; // aapt resource value: 0x7f020121 - public const int notification_action_background = 2130837793; + public const int mr_vol_type_audiotrack_light = 2130837793; // aapt resource value: 0x7f020122 - public const int notification_bg = 2130837794; + public const int navigation_empty_icon = 2130837794; // aapt resource value: 0x7f020123 - public const int notification_bg_low = 2130837795; + public const int notification_action_background = 2130837795; // aapt resource value: 0x7f020124 - public const int notification_bg_low_normal = 2130837796; + public const int notification_bg = 2130837796; // aapt resource value: 0x7f020125 - public const int notification_bg_low_pressed = 2130837797; + public const int notification_bg_low = 2130837797; // aapt resource value: 0x7f020126 - public const int notification_bg_normal = 2130837798; + public const int notification_bg_low_normal = 2130837798; // aapt resource value: 0x7f020127 - public const int notification_bg_normal_pressed = 2130837799; + public const int notification_bg_low_pressed = 2130837799; // aapt resource value: 0x7f020128 - public const int notification_icon_background = 2130837800; - - // aapt resource value: 0x7f02012d - public const int notification_template_icon_bg = 2130837805; - - // aapt resource value: 0x7f02012e - public const int notification_template_icon_low_bg = 2130837806; + public const int notification_bg_normal = 2130837800; // aapt resource value: 0x7f020129 - public const int notification_tile_bg = 2130837801; + public const int notification_bg_normal_pressed = 2130837801; // aapt resource value: 0x7f02012a - public const int notify_panel_notification_icon_bg = 2130837802; + public const int notification_icon_background = 2130837802; + + // aapt resource value: 0x7f020131 + public const int notification_template_icon_bg = 2130837809; + + // aapt resource value: 0x7f020132 + public const int notification_template_icon_low_bg = 2130837810; // aapt resource value: 0x7f02012b - public const int tooltip_frame_dark = 2130837803; + public const int notification_tile_bg = 2130837803; // aapt resource value: 0x7f02012c - public const int tooltip_frame_light = 2130837804; + public const int notify_panel_notification_icon_bg = 2130837804; + + // aapt resource value: 0x7f02012d + public const int roundedbg = 2130837805; + + // aapt resource value: 0x7f02012e + public const int roundedbgdark = 2130837806; + + // aapt resource value: 0x7f02012f + public const int tooltip_frame_dark = 2130837807; + + // aapt resource value: 0x7f020130 + public const int tooltip_frame_light = 2130837808; static Drawable() { @@ -3048,8 +3133,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090037 public const int SYM = 2131296311; - // aapt resource value: 0x7f0900b6 - public const int action0 = 2131296438; + // aapt resource value: 0x7f0900ba + public const int action0 = 2131296442; // aapt resource value: 0x7f09007c public const int action_bar = 2131296380; @@ -3072,17 +3157,17 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09005a public const int action_bar_title = 2131296346; - // aapt resource value: 0x7f0900b3 - public const int action_container = 2131296435; + // aapt resource value: 0x7f0900b7 + public const int action_container = 2131296439; // aapt resource value: 0x7f09007d public const int action_context_bar = 2131296381; - // aapt resource value: 0x7f0900ba - public const int action_divider = 2131296442; + // aapt resource value: 0x7f0900be + public const int action_divider = 2131296446; - // aapt resource value: 0x7f0900b4 - public const int action_image = 2131296436; + // aapt resource value: 0x7f0900b8 + public const int action_image = 2131296440; // aapt resource value: 0x7f090003 public const int action_menu_divider = 2131296259; @@ -3099,11 +3184,11 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09005c public const int action_mode_close_button = 2131296348; - // aapt resource value: 0x7f0900b5 - public const int action_text = 2131296437; + // aapt resource value: 0x7f0900b9 + public const int action_text = 2131296441; - // aapt resource value: 0x7f0900c3 - public const int actions = 2131296451; + // aapt resource value: 0x7f0900c7 + public const int actions = 2131296455; // aapt resource value: 0x7f09005d public const int activity_chooser_view_content = 2131296349; @@ -3138,8 +3223,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090063 public const int buttonPanel = 2131296355; - // aapt resource value: 0x7f0900b7 - public const int cancel_action = 2131296439; + // aapt resource value: 0x7f0900bb + public const int cancel_action = 2131296443; // aapt resource value: 0x7f090045 public const int center = 2131296325; @@ -3153,8 +3238,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090073 public const int checkbox = 2131296371; - // aapt resource value: 0x7f0900bf - public const int chronometer = 2131296447; + // aapt resource value: 0x7f0900c3 + public const int chronometer = 2131296451; // aapt resource value: 0x7f09004e public const int clip_horizontal = 2131296334; @@ -3210,8 +3295,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090030 public const int end = 2131296304; - // aapt resource value: 0x7f0900c5 - public const int end_padder = 2131296453; + // aapt resource value: 0x7f0900c9 + public const int end_padder = 2131296457; // aapt resource value: 0x7f09003f public const int enterAlways = 2131296319; @@ -3255,8 +3340,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090062 public const int icon = 2131296354; - // aapt resource value: 0x7f0900c4 - public const int icon_group = 2131296452; + // aapt resource value: 0x7f0900c8 + public const int icon_group = 2131296456; // aapt resource value: 0x7f09003a public const int ifRoom = 2131296314; @@ -3264,8 +3349,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09005f public const int image = 2131296351; - // aapt resource value: 0x7f0900c0 - public const int info = 2131296448; + // aapt resource value: 0x7f0900c4 + public const int info = 2131296452; // aapt resource value: 0x7f090059 public const int italic = 2131296345; @@ -3291,14 +3376,23 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090061 public const int list_item = 2131296353; - // aapt resource value: 0x7f0900ca - public const int masked = 2131296458; + // aapt resource value: 0x7f09009b + public const int loadingImage = 2131296411; - // aapt resource value: 0x7f0900b9 - public const int media_actions = 2131296441; + // aapt resource value: 0x7f090099 + public const int loadingProgressBar = 2131296409; - // aapt resource value: 0x7f0900c8 - public const int message = 2131296456; + // aapt resource value: 0x7f09009c + public const int loadingProgressWheel = 2131296412; + + // aapt resource value: 0x7f0900ce + public const int masked = 2131296462; + + // aapt resource value: 0x7f0900bd + public const int media_actions = 2131296445; + + // aapt resource value: 0x7f0900cc + public const int message = 2131296460; // aapt resource value: 0x7f090031 public const int middle = 2131296305; @@ -3306,80 +3400,80 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090053 public const int mini = 2131296339; - // aapt resource value: 0x7f0900a5 - public const int mr_art = 2131296421; - - // aapt resource value: 0x7f09009a - public const int mr_chooser_list = 2131296410; - - // aapt resource value: 0x7f09009d - public const int mr_chooser_route_desc = 2131296413; - - // aapt resource value: 0x7f09009b - public const int mr_chooser_route_icon = 2131296411; - - // aapt resource value: 0x7f09009c - public const int mr_chooser_route_name = 2131296412; - - // aapt resource value: 0x7f090099 - public const int mr_chooser_title = 2131296409; - - // aapt resource value: 0x7f0900a2 - public const int mr_close = 2131296418; - - // aapt resource value: 0x7f0900a8 - public const int mr_control_divider = 2131296424; - - // aapt resource value: 0x7f0900ae - public const int mr_control_playback_ctrl = 2131296430; - - // aapt resource value: 0x7f0900b1 - public const int mr_control_subtitle = 2131296433; - - // aapt resource value: 0x7f0900b0 - public const int mr_control_title = 2131296432; - - // aapt resource value: 0x7f0900af - public const int mr_control_title_container = 2131296431; - - // aapt resource value: 0x7f0900a3 - public const int mr_custom_control = 2131296419; - - // aapt resource value: 0x7f0900a4 - public const int mr_default_control = 2131296420; - - // aapt resource value: 0x7f09009f - public const int mr_dialog_area = 2131296415; + // aapt resource value: 0x7f0900a9 + public const int mr_art = 2131296425; // aapt resource value: 0x7f09009e - public const int mr_expandable_area = 2131296414; - - // aapt resource value: 0x7f0900b2 - public const int mr_group_expand_collapse = 2131296434; - - // aapt resource value: 0x7f0900a6 - public const int mr_media_main_control = 2131296422; + public const int mr_chooser_list = 2131296414; // aapt resource value: 0x7f0900a1 - public const int mr_name = 2131296417; + public const int mr_chooser_route_desc = 2131296417; - // aapt resource value: 0x7f0900a7 - public const int mr_playback_control = 2131296423; + // aapt resource value: 0x7f09009f + public const int mr_chooser_route_icon = 2131296415; // aapt resource value: 0x7f0900a0 - public const int mr_title_bar = 2131296416; + public const int mr_chooser_route_name = 2131296416; - // aapt resource value: 0x7f0900a9 - public const int mr_volume_control = 2131296425; + // aapt resource value: 0x7f09009d + public const int mr_chooser_title = 2131296413; - // aapt resource value: 0x7f0900aa - public const int mr_volume_group_list = 2131296426; + // aapt resource value: 0x7f0900a6 + public const int mr_close = 2131296422; // aapt resource value: 0x7f0900ac - public const int mr_volume_item_icon = 2131296428; + public const int mr_control_divider = 2131296428; + + // aapt resource value: 0x7f0900b2 + public const int mr_control_playback_ctrl = 2131296434; + + // aapt resource value: 0x7f0900b5 + public const int mr_control_subtitle = 2131296437; + + // aapt resource value: 0x7f0900b4 + public const int mr_control_title = 2131296436; + + // aapt resource value: 0x7f0900b3 + public const int mr_control_title_container = 2131296435; + + // aapt resource value: 0x7f0900a7 + public const int mr_custom_control = 2131296423; + + // aapt resource value: 0x7f0900a8 + public const int mr_default_control = 2131296424; + + // aapt resource value: 0x7f0900a3 + public const int mr_dialog_area = 2131296419; + + // aapt resource value: 0x7f0900a2 + public const int mr_expandable_area = 2131296418; + + // aapt resource value: 0x7f0900b6 + public const int mr_group_expand_collapse = 2131296438; + + // aapt resource value: 0x7f0900aa + public const int mr_media_main_control = 2131296426; + + // aapt resource value: 0x7f0900a5 + public const int mr_name = 2131296421; + + // aapt resource value: 0x7f0900ab + public const int mr_playback_control = 2131296427; + + // aapt resource value: 0x7f0900a4 + public const int mr_title_bar = 2131296420; // aapt resource value: 0x7f0900ad - public const int mr_volume_slider = 2131296429; + public const int mr_volume_control = 2131296429; + + // aapt resource value: 0x7f0900ae + public const int mr_volume_group_list = 2131296430; + + // aapt resource value: 0x7f0900b0 + public const int mr_volume_item_icon = 2131296432; + + // aapt resource value: 0x7f0900b1 + public const int mr_volume_slider = 2131296433; // aapt resource value: 0x7f090028 public const int multiply = 2131296296; @@ -3396,14 +3490,14 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09001e public const int normal = 2131296286; - // aapt resource value: 0x7f0900c2 - public const int notification_background = 2131296450; + // aapt resource value: 0x7f0900c6 + public const int notification_background = 2131296454; - // aapt resource value: 0x7f0900bc - public const int notification_main_column = 2131296444; + // aapt resource value: 0x7f0900c0 + public const int notification_main_column = 2131296448; - // aapt resource value: 0x7f0900bb - public const int notification_main_column_container = 2131296443; + // aapt resource value: 0x7f0900bf + public const int notification_main_column_container = 2131296447; // aapt resource value: 0x7f09004c public const int parallax = 2131296332; @@ -3429,11 +3523,11 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09004a public const int right = 2131296330; - // aapt resource value: 0x7f0900c1 - public const int right_icon = 2131296449; + // aapt resource value: 0x7f0900c5 + public const int right_icon = 2131296453; - // aapt resource value: 0x7f0900bd - public const int right_side = 2131296445; + // aapt resource value: 0x7f0900c1 + public const int right_side = 2131296449; // aapt resource value: 0x7f09000c public const int save_image_matrix = 2131296268; @@ -3507,8 +3601,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090025 public const int showTitle = 2131296293; - // aapt resource value: 0x7f0900c6 - public const int sliding_tabs = 2131296454; + // aapt resource value: 0x7f0900ca + public const int sliding_tabs = 2131296458; // aapt resource value: 0x7f09008b public const int smallLabel = 2131296395; @@ -3540,8 +3634,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09004b public const int start = 2131296331; - // aapt resource value: 0x7f0900b8 - public const int status_bar_latest_event_content = 2131296440; + // aapt resource value: 0x7f0900bc + public const int status_bar_latest_event_content = 2131296444; // aapt resource value: 0x7f090076 public const int submenuarrow = 2131296374; @@ -3567,6 +3661,9 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090069 public const int textSpacerNoTitle = 2131296361; + // aapt resource value: 0x7f09009a + public const int textViewStatus = 2131296410; + // aapt resource value: 0x7f090098 public const int text_input_password_toggle = 2131296408; @@ -3576,8 +3673,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090015 public const int textinput_error = 2131296277; - // aapt resource value: 0x7f0900be - public const int time = 2131296446; + // aapt resource value: 0x7f0900c2 + public const int time = 2131296450; // aapt resource value: 0x7f09001c public const int title = 2131296284; @@ -3588,8 +3685,8 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f09006f public const int title_template = 2131296367; - // aapt resource value: 0x7f0900c7 - public const int toolbar = 2131296455; + // aapt resource value: 0x7f0900cb + public const int toolbar = 2131296459; // aapt resource value: 0x7f09003e public const int top = 2131296318; @@ -3627,11 +3724,11 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f090016 public const int view_offset_helper = 2131296278; - // aapt resource value: 0x7f0900c9 - public const int visible = 2131296457; + // aapt resource value: 0x7f0900cd + public const int visible = 2131296461; - // aapt resource value: 0x7f0900ab - public const int volume_item_container = 2131296427; + // aapt resource value: 0x7f0900af + public const int volume_item_container = 2131296431; // aapt resource value: 0x7f09003c public const int withText = 2131296316; @@ -3844,88 +3941,97 @@ namespace PlantBox.Client.Droid public const int design_text_input_password_icon = 2130968615; // aapt resource value: 0x7f040028 - public const int mr_chooser_dialog = 2130968616; + public const int loading = 2130968616; // aapt resource value: 0x7f040029 - public const int mr_chooser_list_item = 2130968617; + public const int loadingimage = 2130968617; // aapt resource value: 0x7f04002a - public const int mr_controller_material_dialog_b = 2130968618; + public const int loadingprogress = 2130968618; // aapt resource value: 0x7f04002b - public const int mr_controller_volume_item = 2130968619; + public const int mr_chooser_dialog = 2130968619; // aapt resource value: 0x7f04002c - public const int mr_playback_control = 2130968620; + public const int mr_chooser_list_item = 2130968620; // aapt resource value: 0x7f04002d - public const int mr_volume_control = 2130968621; + public const int mr_controller_material_dialog_b = 2130968621; // aapt resource value: 0x7f04002e - public const int notification_action = 2130968622; + public const int mr_controller_volume_item = 2130968622; // aapt resource value: 0x7f04002f - public const int notification_action_tombstone = 2130968623; + public const int mr_playback_control = 2130968623; // aapt resource value: 0x7f040030 - public const int notification_media_action = 2130968624; + public const int mr_volume_control = 2130968624; // aapt resource value: 0x7f040031 - public const int notification_media_cancel_action = 2130968625; + public const int notification_action = 2130968625; // aapt resource value: 0x7f040032 - public const int notification_template_big_media = 2130968626; + public const int notification_action_tombstone = 2130968626; // aapt resource value: 0x7f040033 - public const int notification_template_big_media_custom = 2130968627; + public const int notification_media_action = 2130968627; // aapt resource value: 0x7f040034 - public const int notification_template_big_media_narrow = 2130968628; + public const int notification_media_cancel_action = 2130968628; // aapt resource value: 0x7f040035 - public const int notification_template_big_media_narrow_custom = 2130968629; + public const int notification_template_big_media = 2130968629; // aapt resource value: 0x7f040036 - public const int notification_template_custom_big = 2130968630; + public const int notification_template_big_media_custom = 2130968630; // aapt resource value: 0x7f040037 - public const int notification_template_icon_group = 2130968631; + public const int notification_template_big_media_narrow = 2130968631; // aapt resource value: 0x7f040038 - public const int notification_template_lines_media = 2130968632; + public const int notification_template_big_media_narrow_custom = 2130968632; // aapt resource value: 0x7f040039 - public const int notification_template_media = 2130968633; + public const int notification_template_custom_big = 2130968633; // aapt resource value: 0x7f04003a - public const int notification_template_media_custom = 2130968634; + public const int notification_template_icon_group = 2130968634; // aapt resource value: 0x7f04003b - public const int notification_template_part_chronometer = 2130968635; + public const int notification_template_lines_media = 2130968635; // aapt resource value: 0x7f04003c - public const int notification_template_part_time = 2130968636; + public const int notification_template_media = 2130968636; // aapt resource value: 0x7f04003d - public const int select_dialog_item_material = 2130968637; + public const int notification_template_media_custom = 2130968637; // aapt resource value: 0x7f04003e - public const int select_dialog_multichoice_material = 2130968638; + public const int notification_template_part_chronometer = 2130968638; // aapt resource value: 0x7f04003f - public const int select_dialog_singlechoice_material = 2130968639; + public const int notification_template_part_time = 2130968639; // aapt resource value: 0x7f040040 - public const int support_simple_spinner_dropdown_item = 2130968640; + public const int select_dialog_item_material = 2130968640; // aapt resource value: 0x7f040041 - public const int Tabbar = 2130968641; + public const int select_dialog_multichoice_material = 2130968641; // aapt resource value: 0x7f040042 - public const int Toolbar = 2130968642; + public const int select_dialog_singlechoice_material = 2130968642; // aapt resource value: 0x7f040043 - public const int tooltip = 2130968643; + public const int support_simple_spinner_dropdown_item = 2130968643; + + // aapt resource value: 0x7f040044 + public const int Tabbar = 2130968644; + + // aapt resource value: 0x7f040045 + public const int Toolbar = 2130968645; + + // aapt resource value: 0x7f040046 + public const int tooltip = 2130968646; static Layout() { @@ -4061,6 +4167,9 @@ namespace PlantBox.Client.Droid // aapt resource value: 0x7f0a0035 public const int character_counter_pattern = 2131361845; + // aapt resource value: 0x7f0a003c + public const int library_name = 2131361852; + // aapt resource value: 0x7f0a0000 public const int mr_button_content_description = 2131361792; @@ -6893,6 +7002,56 @@ namespace PlantBox.Client.Droid // aapt resource value: 0 public const int PopupWindowBackgroundState_state_above_anchor = 0; + public static int[] ProgressWheel = new int[] { + 2130772339, + 2130772340, + 2130772341, + 2130772342, + 2130772343, + 2130772344, + 2130772345, + 2130772346, + 2130772347, + 2130772348, + 2130772349, + 2130772350}; + + // aapt resource value: 3 + public const int ProgressWheel_ahBarColor = 3; + + // aapt resource value: 11 + public const int ProgressWheel_ahBarLength = 11; + + // aapt resource value: 10 + public const int ProgressWheel_ahBarWidth = 10; + + // aapt resource value: 8 + public const int ProgressWheel_ahCircleColor = 8; + + // aapt resource value: 7 + public const int ProgressWheel_ahDelayMillis = 7; + + // aapt resource value: 9 + public const int ProgressWheel_ahRadius = 9; + + // aapt resource value: 4 + public const int ProgressWheel_ahRimColor = 4; + + // aapt resource value: 5 + public const int ProgressWheel_ahRimWidth = 5; + + // aapt resource value: 6 + public const int ProgressWheel_ahSpinSpeed = 6; + + // aapt resource value: 0 + public const int ProgressWheel_ahText = 0; + + // aapt resource value: 1 + public const int ProgressWheel_ahTextColor = 1; + + // aapt resource value: 2 + public const int ProgressWheel_ahTextSize = 2; + public static int[] RecycleListView = new int[] { 2130772200, 2130772201}; diff --git a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj index db2fb59..fd14f3c 100644 --- a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj +++ b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj @@ -189,6 +189,9 @@ + + 7.0.4 + diff --git a/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj b/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj index 93ecbb4..ee52c78 100644 --- a/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj +++ b/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj @@ -148,6 +148,9 @@ + + 7.0.4 + diff --git a/PlantBox.Client/PlantBox.Client/App.xaml b/PlantBox.Client/PlantBox.Client/App.xaml index a33e4b4..4fe3087 100644 --- a/PlantBox.Client/PlantBox.Client/App.xaml +++ b/PlantBox.Client/PlantBox.Client/App.xaml @@ -1,8 +1,15 @@  - + + + \ No newline at end of file diff --git a/PlantBox.Client/PlantBox.Client/App.xaml.cs b/PlantBox.Client/PlantBox.Client/App.xaml.cs index 18645c0..0507602 100644 --- a/PlantBox.Client/PlantBox.Client/App.xaml.cs +++ b/PlantBox.Client/PlantBox.Client/App.xaml.cs @@ -1,4 +1,6 @@ using PlantBox.Client.Forms; +using PlantBox.Client.Resources; +using PlantBox.Client.ViewModels; using System; using Xamarin.Forms; using Xamarin.Forms.Xaml; @@ -8,10 +10,20 @@ namespace PlantBox.Client { public partial class App : Application { + public static SettingsViewModel Settings { get; private set; } + public App() { InitializeComponent(); + // Load settings + Settings = (SettingsViewModel)Resources["Settings"]; + + if (Settings.Language != null) + { + Locale.Culture = Settings.Language; + } + MainPage = new MainPage(); } @@ -23,6 +35,7 @@ namespace PlantBox.Client protected override void OnSleep() { // Handle when your app sleeps + Settings.Save(); } protected override void OnResume() diff --git a/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs b/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs new file mode 100644 index 0000000..6f5f326 --- /dev/null +++ b/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs @@ -0,0 +1,29 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Text; + +namespace PlantBox.Client.Converters +{ + class JsonCultureInfoConverter : JsonConverter + { + public override bool CanConvert(Type objectType) + { + return objectType == typeof(CultureInfo) ? true : false; + } + + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + var c = new CultureInfo((string)reader.Value); + return c; + } + + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + var culture = (CultureInfo)value; + + writer.WriteValue(culture.Name); + } + } +} diff --git a/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs index 9b87c37..d19de7e 100644 --- a/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs +++ b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs @@ -22,7 +22,7 @@ namespace PlantBox.Client.Extensions public object ProvideValue(IServiceProvider serviceProvider) { - return _resourceManager.GetString(Name) ?? $"#{Name}"; + return _resourceManager.GetString(Name, Locale.Culture) ?? $"#{Name}"; } } } diff --git a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml index fb8a099..0ef00d4 100644 --- a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml +++ b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml @@ -3,12 +3,9 @@ xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:extensions="clr-namespace:PlantBox.Client.Extensions" xmlns:models="clr-namespace:PlantBox.Client.Models" - x:Class="PlantBox.Client.Forms.AboutPage" - Padding="{OnPlatform UWP=10}"> + x:Class="PlantBox.Client.Forms.AboutPage"> + HorizontalOptions="FillAndExpand" + VerticalOptions="CenterAndExpand" + Margin="15, 0, 0, 0"> + WidthRequest="32" + Source="{Binding Image}" /> diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml new file mode 100644 index 0000000..a2731cb --- /dev/null +++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml @@ -0,0 +1,18 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs new file mode 100644 index 0000000..50fe848 --- /dev/null +++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs @@ -0,0 +1,46 @@ +using Acr.UserDialogs; +using PlantBox.Client.Resources; +using System; +using System.Collections.Generic; +using System.Globalization; +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 LanguageSelectorPage : ContentPage + { + private CultureInfo[] _supportedCultures = new CultureInfo[] + { + new CultureInfo("en-US"), + new CultureInfo("fr-FR") + }; + + public LanguageSelectorPage() + { + InitializeComponent(); + + listView.ItemsSource = _supportedCultures; + } + + private async void ListView_ItemTapped(object sender, ItemTappedEventArgs e) + { + if (e.Item is CultureInfo culture) + { + App.Settings.Language = culture; + Locale.Culture = culture; + + await App.Settings.SaveAsync(); + + (Application.Current as App).MainPage = new MainPage(); + //await DisplayAlert(Locale.LanguageChangedTitle, Locale.LanguageChangedMessage, "Ok"); + //await Navigation.PopAsync(); + } + } + } +} \ 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 index 6b640d5..8f8df19 100644 --- a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml +++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml @@ -1,12 +1,29 @@  + xmlns:extensions="clr-namespace:PlantBox.Client.Extensions" + x:Class="PlantBox.Client.Forms.Settings.SettingsPage" + BindingContext="{StaticResource Settings}"> + + + - - + + + + + + + + + + + \ 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 index 530d059..0b7bf3b 100644 --- a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs +++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs @@ -1,5 +1,7 @@ -using System; +using PlantBox.Client.Resources; +using System; using System.Collections.Generic; +using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -12,9 +14,38 @@ namespace PlantBox.Client.Forms.Settings [XamlCompilation(XamlCompilationOptions.Compile)] public partial class SettingsPage : ContentPage { - public SettingsPage () + public SettingsPage() { - InitializeComponent (); + InitializeComponent(); + + // Save on close + Disappearing += async (s, e) => await App.Settings.SaveAsync(); + + // Can't apply style to cells, so... + ApplyStyle(); } - } + + private void ApplyStyle() + { + foreach (var cell in table.Root.SelectMany(x => x)) + { + if (cell is TextCell textCell) + { + if (Device.RuntimePlatform == Device.UWP) + { + textCell.TextColor = Color.Accent; + } + } + else if (cell is SwitchCell switchCell) + { + switchCell.Tapped += (s, e) => (s as SwitchCell).On = !(s as SwitchCell).On; + } + } + } + + private async void Language_Tapped(object sender, EventArgs e) + { + await Navigation.PushAsync(new LanguageSelectorPage()); + } + } } \ No newline at end of file diff --git a/PlantBox.Client/PlantBox.Client/Models/Settings.cs b/PlantBox.Client/PlantBox.Client/Models/Settings.cs new file mode 100644 index 0000000..22c25ea --- /dev/null +++ b/PlantBox.Client/PlantBox.Client/Models/Settings.cs @@ -0,0 +1,18 @@ +using Newtonsoft.Json; +using PlantBox.Client.Converters; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Text; + +namespace PlantBox.Client.Models +{ + class Settings + { + [JsonConverter(typeof(JsonCultureInfoConverter))] + public CultureInfo Language { get; set; } + + public bool NotificationsDisabled { get; set; } = false; + public bool NotificationsMuted { get; set; } = false; + } +} diff --git a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj index dd18574..7d307df 100644 --- a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj +++ b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj @@ -27,6 +27,8 @@ + + @@ -47,6 +49,9 @@ MSBuild:UpdateDesignTimeXaml + + MSBuild:UpdateDesignTimeXaml + MSBuild:UpdateDesignTimeXaml @@ -57,10 +62,9 @@ - - - - + + LanguageSelectorPage.xaml + True True diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs index ccc21bd..ec415a7 100644 --- a/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs +++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs @@ -78,6 +78,15 @@ namespace PlantBox.Client.Resources { } } + /// + /// Recherche une chaîne localisée semblable à General. + /// + internal static string General { + get { + return ResourceManager.GetString("General", resourceCulture); + } + } + /// /// Recherche une chaîne localisée semblable à Home. /// @@ -96,6 +105,42 @@ namespace PlantBox.Client.Resources { } } + /// + /// Recherche une chaîne localisée semblable à Changes will take effect at next start. + /// + internal static string LanguageChangedMessage { + get { + return ResourceManager.GetString("LanguageChangedMessage", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Language changed. + /// + internal static string LanguageChangedTitle { + get { + return ResourceManager.GetString("LanguageChangedTitle", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Language. + /// + internal static string LanguageSetting { + get { + return ResourceManager.GetString("LanguageSetting", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Change the language. + /// + internal static string LanguageSettingDetail { + get { + return ResourceManager.GetString("LanguageSettingDetail", resourceCulture); + } + } + /// /// Recherche une chaîne localisée semblable à Libraries. /// @@ -105,6 +150,42 @@ namespace PlantBox.Client.Resources { } } + /// + /// Recherche une chaîne localisée semblable à Media. + /// + internal static string Media { + get { + return ResourceManager.GetString("Media", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Notifications. + /// + internal static string Notifications { + get { + return ResourceManager.GetString("Notifications", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Desactivate notifications. + /// + internal static string NotificationsDisabled { + get { + return ResourceManager.GetString("NotificationsDisabled", resourceCulture); + } + } + + /// + /// Recherche une chaîne localisée semblable à Mute notifications. + /// + internal static string NotificationsMuted { + get { + return ResourceManager.GetString("NotificationsMuted", resourceCulture); + } + } + /// /// Recherche une chaîne localisée semblable à Settings. /// diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx index cb3f81c..4cedf84 100644 --- a/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx +++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx @@ -123,17 +123,44 @@ Auteur + + Général + Accueil Informations + + Les changements prendront effet au prochain lancement + + + Langue modifiée + + + Langue + + + Modifie la langue + Bibliothèques + + Media + + + Notifications + + + Désactiver les notifications + + + Rendre muet les notifications + - Options + Préférences Version diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.resx index 6b9a86b..da0c427 100644 --- a/PlantBox.Client/PlantBox.Client/Resources/Locale.resx +++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.resx @@ -123,15 +123,42 @@ Author + + General + Home Informations + + Changes will take effect at next start + + + Language changed + + + Language + + + Change the language + Libraries + + Media + + + Notifications + + + Desactivate notifications + + + Mute notifications + Settings diff --git a/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs b/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs new file mode 100644 index 0000000..2b9e90d --- /dev/null +++ b/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs @@ -0,0 +1,94 @@ +using Newtonsoft.Json; +using PlantBox.Client.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Globalization; +using System.IO; +using System.Runtime.CompilerServices; +using System.Text; +using System.Threading.Tasks; + +namespace PlantBox.Client.ViewModels +{ + public class SettingsViewModel : INotifyPropertyChanged + { + public event PropertyChangedEventHandler PropertyChanged; + + public const string FileName = "Settings.json"; + public string FilePath => Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), FileName); + + private Settings _settings; + + // Settings + public CultureInfo Language + { + get => _settings.Language; + set + { + if (value != _settings.Language) + { + _settings.Language = value; + OnPropertyChanged(); + } + } + } + public bool NotificationsDisabled + { + get => _settings.NotificationsDisabled; + set + { + if (value != _settings.NotificationsDisabled) + { + _settings.NotificationsDisabled = value; + OnPropertyChanged(); + } + } + } + public bool NotificationsMuted + { + get => _settings.NotificationsMuted; + set + { + if (value != _settings.NotificationsMuted) + { + _settings.NotificationsMuted = value; + OnPropertyChanged(); + } + } + } + + public SettingsViewModel() + { + if (File.Exists(FilePath)) + { + _settings = JsonConvert.DeserializeObject(File.ReadAllText(FilePath)); + } + else + { + _settings = new Settings(); + } + } + + public void Save() + { + using (var file = new StreamWriter(FilePath, false)) + { + file.WriteLine(JsonConvert.SerializeObject(_settings)); + } + } + + public async Task SaveAsync() + { + using (var file = new StreamWriter(FilePath, false)) + { + await file.WriteLineAsync(JsonConvert.SerializeObject(_settings)); + } + } + + public void OnPropertyChanged([CallerMemberName] string propertyName = null) + { + PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); + } + } +}