Menu "Find Bike" added.

This commit is contained in:
Oliver Hauff 2021-07-13 22:20:58 +02:00
parent a51a322d2e
commit 7bb4b24034
14 changed files with 91 additions and 1 deletions

View file

@ -6,6 +6,7 @@
<Application.Resources>
<ResourceDictionary>
<x:String x:Key="IconMap">&#xf5a0;</x:String>
<x:String x:Key="IconFindBike">&#xf002;</x:String>
<x:String x:Key="IconMyBikes">&#xf206;</x:String>
<x:String x:Key="IconAccount">&#xf007;</x:String>
<x:String x:Key="IconLogin">&#xf2f6;</x:String>

View file

@ -33,6 +33,10 @@
<DependentUpon>FeedbackPopup.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\FindBike\FindBikePage.xaml.cs">
<DependentUpon>FindBikePage.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="$(MSBuildThisFileDirectory)View\ListViewAttachedBehavior.cs" />
<Compile Include="$(MSBuildThisFileDirectory)View\RootShell\FlyoutHeader.xaml.cs">
<DependentUpon>FlyoutHeader.xaml</DependentUpon>
@ -314,4 +318,10 @@
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)View\FindBike\FindBikePage.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
</ItemGroup>
</Project>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="TINK.View.FindBike.FindBikePage">
<ContentPage.Content>
<StackLayout>
<Label Text="Welcome to Xamarin.Forms!"
VerticalOptions="CenterAndExpand"
HorizontalOptions="CenterAndExpand" />
</StackLayout>
</ContentPage.Content>
</ContentPage>

View file

@ -0,0 +1,14 @@
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
namespace TINK.View.FindBike
{
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class FindBikePage : ContentPage
{
public FindBikePage ()
{
InitializeComponent ();
}
}
}

View file

@ -3,6 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:resources="clr-namespace:TINK.MultilingualResources;assembly=TINKLib"
xmlns:mappage="clr-namespace:TINK.View.Map"
xmlns:findbike="clr-namespace:TINK.View.FindBike"
xmlns:mybikes="clr-namespace:TINK.View.MyBikes"
xmlns:account="clr-namespace:TINK.View.Account"
xmlns:login="clr-namespace:TINK.View.Login"
@ -27,6 +28,16 @@
</ShellContent.FlyoutIcon>
</ShellContent>
</FlyoutItem>
<FlyoutItem FlyoutDisplayOptions="AsMultipleItems">
<ShellContent
Title="{x:Static resources:AppResources.MarkingFindBike}"
IsVisible="{Binding IsFindBikePageVisible}"
ContentTemplate="{DataTemplate findbike:FindBikePage}">
<ShellContent.FlyoutIcon>
<FontImageSource Glyph="{StaticResource IconFindBike}" Color="Black" FontFamily="FA-S" />
</ShellContent.FlyoutIcon>
</ShellContent>
</FlyoutItem>
<FlyoutItem FlyoutDisplayOptions="AsMultipleItems">
<ShellContent
Title="{x:Static resources:AppResources.MarkingMyBikes}"
@ -34,7 +45,7 @@
ContentTemplate="{DataTemplate mybikes:MyBikesPage}">
<ShellContent.FlyoutIcon>
<FontImageSource Glyph="{StaticResource IconMyBikes}" Color="Black" FontFamily="FA-S" />
</ShellContent.FlyoutIcon>
</ShellContent.FlyoutIcon>
</ShellContent>
</FlyoutItem>
<FlyoutItem FlyoutDisplayOptions="AsMultipleItems">

View file

@ -10,6 +10,7 @@ using TINK.View.Contact;
using TINK.View.Info;
using TINK.View.Login;
using TINK.View.Map;
using TINK.View.FindBike;
using TINK.View.MyBikes;
using TINK.View.Root;
using TINK.View.Settings;
@ -51,6 +52,7 @@ namespace TINK.ViewModel.Root
if (App.ModelRoot.ActiveUser.IsLoggedIn)
{
CheckAddItem(typeof(MyBikesPage));
CheckAddItem(typeof(FindBikePage));
CheckAddItem(typeof(AccountPage));
}
else

View file

@ -2,6 +2,7 @@
using TINK.MultilingualResources;
using TINK.View.Account;
using TINK.View.Contact;
using TINK.View.FindBike;
using TINK.View.Info;
using TINK.View.Login;
using TINK.View.Map;
@ -24,6 +25,10 @@ namespace TINK.ViewModel.MasterDetail
{
return AppResources.MarkingMapPage;
}
else if (type == typeof(FindBikePage)) // Find Bike
{
return AppResources.MarkingFindBike;
}
else if (type == typeof(MyBikesPage)) // My Bikes
{
return AppResources.MarkingMyBikes;
@ -69,6 +74,10 @@ namespace TINK.ViewModel.MasterDetail
{
return "\uf5a0";
}
else if (type == typeof(FindBikePage)) // My Bikes
{
return "\uf002";
}
else if (type == typeof(MyBikesPage)) // My Bikes
{
return "\uf206";

View file

@ -8,6 +8,7 @@ using TINK.Services.CopriApi.ServerUris;
using TINK.View;
using TINK.View.Account;
using TINK.View.Contact;
using TINK.View.FindBike;
using TINK.View.Info;
using TINK.View.Login;
using TINK.View.Map;
@ -44,6 +45,7 @@ namespace TINK.ViewModel
if (App.ModelRoot.ActiveUser.IsLoggedIn)
{
CheckAddItem(typeof(MyBikesPage));
CheckAddItem(typeof(FindBikePage));
CheckAddItem(typeof(AccountPage));
}
else

View file

@ -15,6 +15,7 @@ namespace TINK.ViewModel.RootShell
{
// Login state changed. Update related menu entries.
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsMyBikesPageVisible)));
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsFindBikePageVisible)));
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsAccountPageVisible)));
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsLoginPageVisible)));
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsSettingsPageVisible)));
@ -56,6 +57,8 @@ namespace TINK.ViewModel.RootShell
public bool IsMyBikesPageVisible => App.ModelRoot.ActiveUser.IsLoggedIn;
public bool IsFindBikePageVisible => App.ModelRoot.ActiveUser.IsLoggedIn;
public bool IsAccountPageVisible => App.ModelRoot.ActiveUser.IsLoggedIn;
public bool IsLoginPageVisible => !App.ModelRoot.ActiveUser.IsLoggedIn;

View file

@ -1047,6 +1047,15 @@ namespace TINK.MultilingualResources {
}
}
/// <summary>
/// Looks up a localized string similar to Find Bike.
/// </summary>
public static string MarkingFindBike {
get {
return ResourceManager.GetString("MarkingFindBike", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Logged in as {0}..
/// </summary>

View file

@ -604,4 +604,7 @@ Layout Anzeige Radnamen und nummern verbessert.</value>
<data name="ChangeLog3_0_239" xml:space="preserve">
<value>Fehlerbehebung: Radname wird wieder korrekt angezeigt.</value>
</data>
<data name="MarkingFindBike" xml:space="preserve">
<value>Fahrrad Wählen</value>
</data>
</root>

View file

@ -700,4 +700,7 @@ Layout of bike names and id display improved.</value>
<data name="ChangeLog3_0_239" xml:space="preserve">
<value>Bugfix: Bike description is displayed correctly again.</value>
</data>
<data name="MarkingFindBike" xml:space="preserve">
<value>Find Bike</value>
</data>
</root>

View file

@ -809,6 +809,10 @@ Layout Anzeige Radnamen und nummern verbessert.</target>
<source>Bugfix: Bike description is displayed correctly again.</source>
<target state="translated">Fehlerbehebung: Radname wird wieder korrekt angezeigt.</target>
</trans-unit>
<trans-unit id="MarkingFindBike" translate="yes" xml:space="preserve">
<source>Find Bike</source>
<target state="translated">Fahrrad Wählen</target>
</trans-unit>
</group>
</body>
</file>

View file

@ -0,0 +1,7 @@

namespace TINK.ViewModel.FindBike
{
public class FindBikeViewModel
{
}
}