ajout partitions automatiquement dans accueil avec dataBinding + correction au_clair_de_la_lune qui s'affichait pas

pull/8/head
Vivien DUFOUR 2 years ago
parent b4529a678d
commit ca71a2d986

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 95 KiB

@ -14,7 +14,7 @@ namespace MusiLib.Stub
{
public (List<Partition>, List<Utilisateur>) chargeDonnees()
{
List<Partition> favoris = new List<Partition>();
List<Partition> partitions = new List<Partition>();
List<Utilisateur> utilisateurs = new List<Utilisateur>();
Utilisateur kevin = new Utilisateur("Kevin");
Utilisateur michel = new Utilisateur("Michel");
@ -28,19 +28,19 @@ namespace MusiLib.Stub
Partition fais_dodo_colas = new Partition("fais dodo", "Inconnu", 0, "Fais dodo est une berceuse enfantine en langue française dont l'auteur est inconnu et est dans le domaine public. La mélodie, très connue, date du XVIIIe siècle et se chante dans toutes les régions de France et également au Québec. Il y a quelques variantes, où les ingrédients du texte changent : nougat au lieu de chocolat, d'autres fois des bateaux : « Papa est en haut qui fait des bateaux pour le p'tit Pierrot qui fait son dodo... » ", "piano", "fais-dodo-colas-mon-petit-frere.mid");
Partition Frere_Jacques = new Partition("Frère Jacques", "Jean-Philippe Rameau", 0, "Frère Jacques est une chanson enfantine française du XVIIIe siècle, connue dans le monde entier et traduite dans de nombreuses langues. Longtemps considérée comme anonyme, elle a vraisemblablement pour auteur Jean-Philippe Rameau. Selon l'historienne et musicologue Sylvie Bouissou, l'auteur de la chanson n'est autre que Jean-Philippe Rameau1,2. En effet, dans un exemplaire de son ouvrage Diapason général de tous les instruments à vent (1772), Louis-Joseph Francœur, violoniste de l'Opéra de Paris dans les années où Rameau y était actif, a inséré les manuscrits de quatre canons qu'il attribue à Rameau, parmi lesquels on trouve donc Frère Jacques, mais surtout deux autres déjà connus comme étant de Rameau;", "piano", "frere-jacques.mid");
amazing_grace.ajouterImage("amazing.png");
amazing_grace.ajouterImage("au_clair_de.png");
au_clair_de_la_lune.ajouterImage("au_clair_de_la_lune.png");
amazing_grace.ajouterImage("au_clair.png");
au_clair_de_la_lune.ajouterImage("au_clair.png");
aura_lee_love_me.ajouterImage("aura_lee_love_me.png");
ode_a_la_joie.ajouterImage("ode_a_la.png");
fais_dodo_colas.ajouterImage("fais_dodo_colas.png");
Frere_Jacques.ajouterImage("frere_jacques.png");
favoris.Add(amazing_grace);
favoris.Add(au_clair_de_la_lune);
favoris.Add(aura_lee_love_me);
favoris.Add(ode_a_la_joie);
favoris.Add(fais_dodo_colas);
favoris.Add(Frere_Jacques);
return (favoris, utilisateurs);
partitions.Add(amazing_grace);
partitions.Add(au_clair_de_la_lune);
partitions.Add(aura_lee_love_me);
partitions.Add(ode_a_la_joie);
partitions.Add(fais_dodo_colas);
partitions.Add(Frere_Jacques);
return (partitions, utilisateurs);
}
public void sauvegardeDonnees(List<Partition> p, List<Utilisateur> u)

@ -7,7 +7,7 @@
BackgroundColor="White">
<ScrollView>
<Grid>
<Grid x:Name="grille">
<Grid.RowDefinitions >
<RowDefinition Height="85"/>
<RowDefinition/>
@ -72,52 +72,7 @@
Clicked="GoToFavorisButton"
/>
<ImageButton Grid.Row="1" Grid.Column="0"
HorizontalOptions="Fill"
Source="{Binding partitions[0].Image[0]}"
Margin="30,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="0"/>
<ImageButton Grid.Row="1" Grid.Column="1"
Source="{Binding partitions[1].Image[0]}"
Margin="90,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="1"/>
<ImageButton Grid.Row="1" Grid.Column="2"
Source="{Binding partitions[2].Image[0]}"
Margin="150,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="2"/>
<ImageButton Grid.Row="2" Grid.Column="0"
Source="{Binding partitions[3].Image[0]}"
Margin="30,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="3"
/>
<ImageButton Grid.Row="2" Grid.Column="1"
Source="{Binding partitions[4].Image[0]}"
Margin="90,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="4"/>
<ImageButton Grid.Row="2" Grid.Column="2"
Source="{Binding partitions[5].Image[0]}"
Margin="150,0,0,0"
WidthRequest="175"
HeightRequest="175"
Clicked="GoToPartitionButton"
AutomationId="5"/>
</Grid>
</ScrollView>

@ -9,6 +9,7 @@ public partial class Accueil : ContentPage, IAllowClick
public Accueil()
{
InitializeComponent();
chargerPartitions();
BindingContext = MyManager;
}
@ -39,4 +40,53 @@ public partial class Accueil : ContentPage, IAllowClick
IAllowClick.ResumeTap();
}
private void chargerPartitions()
{
int imagesParLigne = 3;
int indice = 0;
for (int i = 0; i < MyManager.partitions.Count; i++)
{
Model.Partition partitions = MyManager.partitions[i];
ImageButton imageButton = new ImageButton
{
Source = partitions.Image[0],
WidthRequest = 175,
HeightRequest = 175,
AutomationId = indice.ToString(),
};
imageButton.Clicked += GoToPartitionButton;
int ligne = 1 + (indice / imagesParLigne);
int colonne = indice % imagesParLigne;
imageButton.Margin = GetImageButtonMargin(colonne);
Grid.SetRow(imageButton, ligne);
Grid.SetColumn(imageButton, colonne);
grille.Children.Add(imageButton);
indice++;
}
}
private Thickness GetImageButtonMargin(int colonne)
{
if (colonne == 0)
{
return new Thickness(30, 0, 0, 0);
}
else if (colonne == 1)
{
return new Thickness(90, 0, 0, 0);
}
else
{
return new Thickness(150, 0, 0, 0);
}
}
}
Loading…
Cancel
Save