// insere une activité a la liste d'act du jour public void ajouterActivite(ClassActivite act) { if (this.getStatut() == "futur") { Activites.Add(act); } }
public Page_Activite(ClassActivite activite) { InitializeComponent(); _activite = activite; DataContext = _activite; //référentiel pour Binding }
// désérialisation de journeeDefaut private void load_journeeDefaut(XmlDocument doc) { _journeeDefaut = new ClassJour(this); XmlNodeList nl = doc.SelectNodes("/informations/journeeDefaut/activite"); foreach (XmlNode node in nl) { ClassActivite activite = new ClassActivite(); XmlAttribute xml_attr = node.Attributes["categorie"]; activite.Categorie = xml_attr.Value; xml_attr = node.Attributes["nom"]; activite.Categorie = activite.Categorie + " / " + xml_attr.Value; xml_attr = node.Attributes["hdebut"]; activite.HeureDebut = double.Parse(xml_attr.Value); xml_attr = node.Attributes["hfin"]; activite.HeureFin = double.Parse(xml_attr.Value); _journeeDefaut.ajouterActivite(activite); } }
//désérialise planning.xml public void LoadPlanning() { XmlDocument xmlDoc = new XmlDocument(); string path = "../../Data/planning.xml"; try { xmlDoc.Load(path); } catch { string message = "Le fichier XML de sauvegarde n'a pas été trouvé dans le répertoire."; MessageBox.Show(message); return; } //récup tous les jours du planning XmlNodeList listJours = xmlDoc.SelectNodes("/Planning/Jour"); //désérialise les 500 jours depuis planning.xml foreach (XmlNode nodeJour in listJours) { ClassJour jour = new ClassJour(this); XmlAttribute numJour = nodeJour.Attributes["numero"]; int index = int.Parse(numJour.Value); //récup toutes les activites du jour correspondant à l'index courant XmlNodeList listActs = xmlDoc.SelectNodes("/Planning/Jour[@numero='" + index + "']/Activite"); foreach (XmlNode nodeAct in listActs) { ClassActivite activite = new ClassActivite(); activite.Date = jour; activite.ListCategories = this.getActivites(); //récupère l'attribut categorie XmlAttribute xml_attr = nodeAct.Attributes["categorie"]; //stocke sa valeur dans la propriété Categorie de l'objet activite.Categorie = xml_attr.Value; //idem pour le reste des attributs/propriétés xml_attr = nodeAct.Attributes["hDebut"]; activite.HeureDebut = double.Parse(xml_attr.Value); xml_attr = nodeAct.Attributes["hFin"]; activite.HeureFin = double.Parse(xml_attr.Value); xml_attr = nodeAct.Attributes["astronautes"]; activite.Astronautes.Add(xml_attr.Value); //decouper la chaine en substring si plusieurs astro xml_attr = nodeAct.Attributes["lieu"]; activite.Lieu.setNom(xml_attr.Value); xml_attr = nodeAct.Attributes["descriptif"]; activite.Descriptif = xml_attr.Value; xml_attr = nodeAct.Attributes["sortieExt"]; if (xml_attr.Value == "true") activite.SortieExt = true; else activite.SortieExt = false; jour.ajouterActivite(activite); } XmlNode nodeCR = xmlDoc.SelectSingleNode("/Planning/Jour[@numero='" + index + "']/CompteRendu"); if (nodeCR != null) { ClassCompteRendu cr = new ClassCompteRendu(jour); //récupère l'attribut titre XmlAttribute xml_attr = nodeCR.Attributes["titre"]; //stocke sa valeur dans la propriété _titre de l'objet cr._titre = xml_attr.Value; //stocke le contenu de la balise dans la propriété _contenu cr._contenu = nodeCR.InnerText; jour.CompteRendu = cr; } _planning.Add(index, jour); } }
public void supprActivite(ClassActivite act) { if (this.getStatut() == "futur") { Activites.Remove(act); } }