Example #1
0
 ///<see cref="PieceDeMusee.Ajouter(PieceDeMusee)"/>
 public override void Ajouter(PieceDeMusee pdm)
 {
     if (!listePDM.Contains(pdm))
     {
         listePDM.Add(pdm);
     }
 }
Example #2
0
 /// <see cref="PieceDeMusee.Supprimer(PieceDeMusee)"/>
 public override void Supprimer(PieceDeMusee pdm)
 {
     if (pdm != null)
     {
         if (listePDM.Contains(pdm))
         {
             listePDM.Remove(pdm);
         }
         else
         {
             var collMère = listePDM.SingleOrDefault(c => c.ListePDM.Contains(pdm));
             if (collMère != null)
             {
                 (collMère as Collection).Supprimer(pdm);
                 listePDM.CollectionChanged += (o, args) => OnPropertyChanged("AllElemDePDM");
                 listePDM.CollectionChanged += (o, args) => OnPropertyChanged("AllColl");
                 listePDM.CollectionChanged += (o, args) => OnPropertyChanged("AllElemSeuls");
             }
         }
     }
 }
Example #3
0
 /// <summary>
 /// Méthode qui doit être réécrite mais qui renvoit une exception car elle ne doit pas être redéfinie ici.
 /// </summary>
 /// <param name="pdm">Un élément ou une collection</param>
 public override void Supprimer(PieceDeMusee pdm)
 {
     throw ExceptionNonElt;
 }
Example #4
0
 /// <summary>
 /// Méthode qui doit être réécrite mais qui renvoit une exception car elle ne doit pas être redéfinie ici.
 /// </summary>
 /// <param name="pdm">Un élément ou une collection</param>
 public override void Ajouter(PieceDeMusee pdm)
 {
     throw ExceptionNonElt;
 }
Example #5
0
        /// <summary>
        /// Méthode qui par le biais de LINQ nous revoit un élément ou une collection grâce à son nom.
        /// </summary>
        /// <param name="nom">Nom de l'élément/collection à rechercher.</param>
        /// <returns>
        /// PieceDeMusee qui sera donc soit un élément soit une collection.</returns>
        private PieceDeMusee ChercherEltParNom(string nom, PieceDeMusee utile)
        {
            var pdm = ((racine.ListePDM.Select(p => p)).Concat(racine.ListePDM.SelectMany(p => p.ListePDM))).SingleOrDefault(l => l.Nom == nom && l.GetType().Equals(utile.GetType()));

            return((PieceDeMusee)pdm);
        }
Example #6
0
 /// <summary>
 /// Méthode de la suppression d'un élément
 /// </summary>
 /// <param name="elt"></param>
 public abstract void Supprimer(PieceDeMusee pdm);
Example #7
0
 /// <summary>
 /// Méthode d'ajout d'un élément ou d'une collection dans la collection principale.
 /// </summary>
 /// <param name="pdm">Elément ou collection que l'on souhaite ajouter.</param>
 public abstract void Ajouter(PieceDeMusee pdm);