Navigation dans la page favoris

pull/15/head
Yoan 2 years ago
parent 00cbfbfdb2
commit 45ddb6930f

@ -104,9 +104,9 @@ namespace Model
return listeFavoris;
}
public void AddFavoris(ObjetOhara obj)
public void AddBateauFavoris(Bateau bateau)
{
obj.EstFavori = true;
bateau.EstFavori = true;
}
}
}

@ -16,7 +16,7 @@ public partial class PageBestiaire : ContentPage
var manager = new Manager();
AjouterFavoris = new Command((obj) => manager.AddFavoris((ObjetOhara)obj));
listeBest.ItemsSource = manager.GetBestiaires();

@ -13,28 +13,23 @@
<ColumnDefinition Width="90*" />
</Grid.ColumnDefinitions>
<VerticalStackLayout BackgroundColor="#72a3b3" Grid.Row="0" Grid.Column="0" Spacing="10">
<Image Source="ohara2.png" HeightRequest="200" HorizontalOptions="Center">
<Image.Clip>
<EllipseGeometry Center="150,90" RadiusX="80" RadiusY="80"/>
</Image.Clip>
</Image>
<Button Style="{StaticResource buttonMenu}" Text="Accueil" Clicked="Hyperlink_Accueil"/>
<Button Style="{StaticResource buttonMenu}" Text="Carte" Clicked="Hyperlink_Carte"/>
<Button Style="{StaticResource buttonMenu}" Text="Personnages" Clicked="Hyperlink_Perso"/>
<Button Style="{StaticResource buttonMenu}" Text="Fruits du démon" Clicked="Hyperlink_FDD"/>
<Button Style="{StaticResource buttonMenu}" Text="Bateaux" Clicked="Hyperlink_Bateau"/>
<Button Style="{StaticResource buttonMenu}" Text="Îles" Clicked="Hyperlink_Ile"/>
<Button Style="{StaticResource buttonMenu2}" Text="Bestiaire" Clicked="Hyperlink_Bestiaire"/>
<Button Style="{StaticResource buttonMenu}" Text="Bestiaire" Clicked="Hyperlink_Bestiaire"/>
<Button Style="{StaticResource buttonMenu}" Text="Équipages" Clicked="Hyperlink_Equip"/>
<Button Style="{StaticResource buttonMenu}" Text="Favoris" />
<Button Style="{StaticResource buttonMenu2}" Text="Favoris" />
</VerticalStackLayout>
<CollectionView x:Name="listeFavs" Grid.Column="1" SelectionMode="Single" SelectionChanged="listeFavs_SelectionChanged">
<CollectionView.ItemsLayout Style="">
<CollectionView x:Name="listeFavs" Grid.Column="1" SelectionMode="Single" SelectionChanged="listeFavs_SelectionChanged" >
<CollectionView.ItemsLayout>
<GridItemsLayout Orientation="Vertical" Span="4" />
</CollectionView.ItemsLayout>
<CollectionView.Header>
@ -59,36 +54,27 @@
</Grid>
</CollectionView.Header>
<CollectionView.ItemTemplate>
<DataTemplate>
<Frame Style="{StaticResource frameObjet}" Margin="10">
<StackLayout Orientation="Vertical" Padding="5">
<Image
Source="{Binding Image}"
HeightRequest="290"
WidthRequest="290" />
<Frame Style="{StaticResource frameObjet}" Margin="15">
<StackLayout Orientation="Vertical" Padding="5">
<Image
Source="{Binding Image}"
HeightRequest="290"
WidthRequest="290" />
<Label
HorizontalOptions="Center"
VerticalOptions="Start"
HorizontalTextAlignment="Center"
Text="{Binding Nom}"
<Label
HorizontalOptions="Center"
VerticalOptions="Start"
HorizontalTextAlignment="Center"
Text="{Binding Nom}"
FontSize="19"
TextColor="#72a3b3"
FontAttributes="Bold" />
</StackLayout>
</Frame>
FontSize="19"
TextColor="#72a3b3"
FontAttributes="Bold" />
</StackLayout>
</Frame>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</Grid>
</ContentPage>

@ -74,8 +74,20 @@ public partial class PageFavoris : ContentPage
async void listeFavs_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
await Navigation.PushAsync(new PageInfoBateau((Bateau)listeFavs.SelectedItem));
Type t = listeFavs.SelectedItem.GetType();
Console.WriteLine(t);
if (t.Equals(typeof(Bateau)))
await Navigation.PushAsync(new PageInfoBateau((Bateau)listeFavs.SelectedItem));
else if (t.Equals(typeof(Equipage)))
await Navigation.PushAsync(new PageInfoEquipage((Equipage)listeFavs.SelectedItem));
else if (t.Equals(typeof(Personnage)))
await Navigation.PushAsync(new PageInfoPersonnage((Personnage)listeFavs.SelectedItem));
else if (t.Equals(typeof(Ile)))
await Navigation.PushAsync(new PageInfoIle((Ile)listeFavs.SelectedItem));
else if (t.Equals(typeof(FruitDuDemon)))
await Navigation.PushAsync(new PageInfoFdd((FruitDuDemon)listeFavs.SelectedItem));
else if (t.Equals(typeof(Bestiaire)))
await Navigation.PushAsync(new PageInfoBestiaire((Bestiaire)listeFavs.SelectedItem));
}
}

@ -42,6 +42,7 @@
<ColumnDefinition Width="40*"/>
</Grid.ColumnDefinitions>
<VerticalStackLayout Grid.Column="0" Spacing="4">
<Button x:Name="ButtonFav" Text="Ajouter aux favoris" Style="{StaticResource buttonFavsInfo}"/>
<Frame Style="{StaticResource frameInfo}">
<Label Text="Sommaire" Style="{StaticResource titreInfo}"/>
</Frame>
@ -51,11 +52,13 @@
<Frame Style="{StaticResource frameInfo}">
<Label Text="2 - Caracteristiques" TextColor="#72a3b3"/>
</Frame>
<Frame Style="{StaticResource frameInfo}">
<Label Text="{Binding EstFavori}" TextColor="#72a3b3"/>
</Frame>
</VerticalStackLayout>
<VerticalStackLayout Grid.Column="1" Spacing="4">
<Frame Style="{StaticResource frameInfo}">
<Label Style="{StaticResource titreInfo}" Text="{Binding Nom}"/>
<Label Style="{StaticResource titreInfo}" Text="{Binding Nom}" HorizontalOptions="Center"/>
</Frame>
<Frame Style="{StaticResource frameInfo}" >
<Image

@ -1,17 +1,21 @@
using Model.Stub;
using Model;
using System.Windows.Input;
namespace Ohara;
public partial class PageInfoBateau : ContentPage
{
public ICommand AjouterFavs { get; private set; }
public PageInfoBateau(Bateau bateau)
{
InitializeComponent();
BindingContext=bateau;
BindingContext=bateau;
AjouterFavs = new Command(() => bateau.EstFavori = true);
ButtonFav.Command = AjouterFavs;
}
private async void Hyperlink_Accueil(object sender, EventArgs e)
{
await Navigation.PushAsync(new MainPage());
@ -52,4 +56,6 @@ public partial class PageInfoBateau : ContentPage
{
await Navigation.PushAsync(new PageFavoris(new Plugin.Maui.Audio.AudioManager()));
}
}

@ -641,5 +641,37 @@
<Setter Property="FontSize" Value="15"/>
<Setter Property="Padding" Value="7"/>
</Style>
<Style TargetType="Button" x:Key="buttonFavsInfo">
<Setter Property="VisualStateManager.VisualStateGroups">
<VisualStateGroupList>
<VisualStateGroup>
<VisualState x:Name="Normal">
<VisualState.Setters>
<Setter Property="BackgroundColor" Value="#72a3b3"/>
<Setter Property="TextColor" Value="White"/>
<Setter Property="FontSize" Value="20"/>
<Setter Property="Padding" Value="17"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="PointerOver">
<VisualState.Setters>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="#cdffd8" Offset="0.1" />
<GradientStop Color="#94b9ff" Offset="0.5" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="TextColor" Value="White"/>
<Setter Property="FontSize" Value="20"/>
<Setter Property="Padding" Value="17"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateGroupList>
</Setter>
</Style>
</ResourceDictionary>

@ -7,7 +7,7 @@ var manager = new Manager();
var xml = new XML_Serializer();
Bestiaire luffy = new Bestiaire("", "", "", "");
Bestiaire luffy = new Bestiaire("test", "", "", "");
/*
xml.SetPersonnage(manager.GetPersonnages().ToList());
xml.SetFDD(manager.GetFruits().ToList());
@ -18,9 +18,9 @@ xml.SetIle(manager.GetIles().ToList());
*/
List<ObjetOhara> listeFavoris = manager.GetFavoris();
Type t = luffy.GetType();
if (t.Equals(typeof(Bestiaire)))
Console.WriteLine(luffy.Nom);
foreach(ObjetOhara obj in listeFavoris)
{
Console.WriteLine(obj.Nom);
}
Console.WriteLine(t.Equals(typeof(Bestiaire)));

Loading…
Cancel
Save