1
0
Fork 0
mirror of https://github.com/Nioux/AideDeJeu.git synced 2025-10-29 14:35:45 +00:00

Header de liste

This commit is contained in:
Yan Maniez 2018-08-04 18:31:14 +02:00
parent 209ecba786
commit e2b65754b2
15 changed files with 51 additions and 54 deletions

View file

@ -13,11 +13,31 @@ namespace AideDeJeuLib
public class Items : Item, IEnumerable<Item>
{
private IEnumerable<Item> _Items;
public override string Markdown => throw new NotImplementedException();
public Items(IEnumerable<Item> items)
{
_Items = items;
}
public Items()
{
_Items = new List<Item>();
}
private string _Markdown = "";
public override string Markdown
{
get
{
//return "\n\n# test\n\n";
return _Markdown;
}
}
public IEnumerator<Item> GetEnumerator()
{
return _Items.GetEnumerator();
return _Items?.GetEnumerator();
}
public override void Parse(ref ContainerBlock.Enumerator enumerator)
@ -26,18 +46,27 @@ namespace AideDeJeuLib
enumerator.MoveNext();
while (enumerator.Current != null)
{
if(enumerator.Current.IsNewItem())
var block = enumerator.Current;
if (block.IsNewItem())
{
break;
}
else if(enumerator.Current is HeadingBlock)
else if(block is HeadingBlock)
{
var headingBlock = enumerator.Current as HeadingBlock;
var headingBlock = block as HeadingBlock;
if(headingBlock.Level == 1 && headingBlock.HeaderChar == '#')
{
this.Name = headingBlock.Inline.ToMarkdownString();
}
else
{
_Markdown += headingBlock.ToMarkdownString();
}
}
else
{
_Markdown += block.ToMarkdownString();
}
enumerator.MoveNext();
}
@ -52,7 +81,7 @@ namespace AideDeJeuLib
IEnumerator IEnumerable.GetEnumerator()
{
return _Items.GetEnumerator();
return _Items?.GetEnumerator();
}
public virtual FilterViewModel GetNewFilterViewModel()

View file

@ -45,8 +45,8 @@ namespace AideDeJeu.ViewModels
}
}
public IEnumerable<Item> _Items = new List<Item>();
public IEnumerable<Item> Items
public Items _Items = new Items();
public Items Items
{
get
{
@ -109,11 +109,11 @@ namespace AideDeJeu.ViewModels
if (Filter != null)
{
var items = await Filter.FilterItems(AllItems, cancellationToken: cancellationToken);
Items = items.ToList();
Items = new Items(items.ToList());
}
else
{
Items = AllItems.ToList();
Items = AllItems;
}
}
catch (OperationCanceledException ex)

View file

@ -4,13 +4,23 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:AideDeJeu.Views"
xmlns:tools="clr-namespace:AideDeJeu.Tools"
xmlns:mdview="clr-namespace:Xam.Forms.Markdown"
x:Class="AideDeJeu.Views.ItemsPage"
x:Name="This"
Title="{Binding Title}">
<ContentPage.Resources>
<ResourceDictionary>
<tools:MonsterMarkdownTheme x:Key="MonsterMarkdownTheme" />
<tools:NullToFalseConverter x:Key="NullToFalseConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<ContentPage.ToolbarItems>
<ToolbarItem Name="About" Text="À propos de..." Order="Secondary" Icon="wooden_sign.png" Command="{Binding Main.AboutCommand}" />
</ContentPage.ToolbarItems>
<ListView BackgroundColor="{StaticResource bgtan}" x:Name="ItemsListView" ItemsSource="{Binding Items}" VerticalOptions="FillAndExpand" HasUnevenRows="true" CachingStrategy="RecycleElement" SelectedItem="{Binding SelectedItem}" ItemTapped="ItemsListView_ItemTapped">
<ListView.Header>
<mdview:MarkdownView x:Name="mdMarkdown" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding BindingContext.Items.Markdown, Source={x:Reference This}}" BackgroundColor="Red"/>
</ListView.Header>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell AutomationProperties.IsInAccessibleTree="True" AutomationId="machin" AutomationProperties.Name="hop">

View file

@ -30,6 +30,8 @@ namespace AideDeJeu.Views
InitializeComponent ();
BindingContext = _ItemsViewModel = itemsViewModel;
mdMarkdown.NavigateToLink = async (s) => await itemsViewModel.Main.Navigator.NavigateToLinkAsync(s);
}
public ItemsPage()
{

View file

@ -2,10 +2,6 @@
# Charisme
[][Generic]
# Charisme
Le Charisme représente votre capacité à interagir avec les autres. Il prend en compte votre confiance en vous et votre éloquence, et est un indicateur du charme et de l'autorité qui se dégagent de vous.
[][Generic]

View file

@ -2,10 +2,6 @@
# Constitution
[][Generic]
# Constitution
La Constitution représente la santé, l'endurance et la force vitale.
[][Generic]

View file

@ -2,10 +2,6 @@
# Dextérité
[][Generic]
# Dextérité
La Dextérité représente tout ce qui a trait à l'agilité, les réflexes et l'équilibre.
[][Generic]

View file

@ -1,10 +1,6 @@
[][Items]
# Caractéristiques
[][Generic]
# Utiliser les caractéristiques
Le profil physique et mental d'une créature est défini par six caractéristiques :

View file

@ -2,10 +2,6 @@
# Intelligence
[][Generic]
# Intelligence
L'intelligence représente la vivacité d'esprit, la mémoire et la capacité de raisonnement.
[][Generic]

View file

@ -2,10 +2,6 @@
# Force
[][Generic]
# Force
La Force détermine la puissance physique d'un personnage, ses compétences en athlétisme et dans quelle mesure il peut se reposer sur sa force brute.
[][Generic]

View file

@ -2,10 +2,6 @@
# Sagesse
[][Generic]
# Sagesse
La Sagesse représente votre sensibilité au monde qui vous entoure, votre perspicacité et votre intuition.
[][Generic]

View file

@ -2,10 +2,6 @@
# Voie du berserker
[][Generic]
# Voie du berserker
Pour certains barbares, la rage est un moyen d'atteindre leur but, et ce but est la violence. Animé par une furie débridée, le berserker suit une voie sanglante.
Quand vous entrez dans la rage du berserker, vous vous réalisez dans le chaos de la bataille et oubliez tout le reste, y compris votre santé et votre bien-être.

View file

@ -2,10 +2,6 @@
# Voie du hurlement
[][Generic]
# Voie du hurlement
Le hurlement est un exutoire à la rage qui gronde dans les entrailles du barbare et qui remonte en cris violents.
Le barbare qui choisit la voie du hurlement suit une tradition ancienne perpétuée depuis de nombreuses générations au sein de son clan. Ceux qui pratiquent l'art du hurlement marquent leur statut dans leur peau et leurs chairs afin de se distinguer des autres membres du clan, mais aussi pour effrayer leurs adversaires par une apparence féroce qui contribue à leur réputation. Cela prend généralement la forme de tatouages, de coiffures originales (crâne à demi rasé, tresses), de piercings et de scarifications (cicatrices rituelles). À chaque fois que vous obtenez une nouvelle aptitude de la voie du hurlement, vous devrez ajouter une modification corporelle supplémentaire à votre apparence afin de marquer votre changement de statut.

View file

@ -2,10 +2,6 @@
# Voie des esprits
[][Generic]
# Voie des esprits
Plaine ou savane, forêt ou montagne, vous êtes né dans une nature vierge et sauvage, parfois dure et hostile.
Pour survivre, votre peuple a appris à communier avec la nature et à tisser des liens étroits avec les animaux par l'intermédiaire d'esprits magiques.

View file

@ -2,10 +2,6 @@
# Voie de l'acier
[][Generic]
# Voie de l'acier
La magie est l'arme des faibles, des corrompus et des traîtres, vous savez qu'on ne peut faire confiance qu'à une seule chose en ce bas monde : l'acier ! Attention, si vous choisissez cette voie, vous n'aimez pas porter ou utiliser des objets magiques, et certaines de vos aptitudes ne fonctionnent pas si vous utilisez une arme ou une armure magique. Vous refusez systématiquement les sorts de magie profane dont vos alliés pourraient vous faire profiter, mais vous faites preuve d'un peu plus de tolérance en ce qui concerne la magie divine, en particulier pour les sorts de soins. La magie druidique ne vous pose généralement pas de problème, sauf si elle s'avère corrompue. En effet, si sorciers et magiciens sont des êtres vils qui vivent dans les cités, les tribus barbares accueillent souvent des shamans et des guérisseurs en leur sein.
[][Generic]