public ProjectNode(ProjectDTO projectDTO)
     : base((IDataTransferObject) projectDTO)
 {
     foreach (ComponentDTO componentDTO in projectDTO.ComponentCollection) {
         this.AddChild (new ComponentNode (componentDTO));
     }
 }
 /* Interface Implementation */
 /*
  * Cargará el proyecto.
  * Coge el ProjectDTO que le pasamos y asignamos la referencia al modelo
  * del projectDTO.  Además con ese nuevo DTO crea un nuevo Nodo y
  * rellenará también sus componentes.
  */
 public void LoadDataForm(IDataTransferObject dto)
 {
     if (dto is ProjectDTO) {
         //Refresca el proyecto.
         ProjectDTO projectDTO = (ProjectDTO) dto;
         this.projectDTO = projectDTO;
         ClearForm ();
         componentNodeStore.AddNode (new ProjectNode (this.projectDTO));
     }
     componentNodeView.ExpandAll ();
 }
 public void SerializeProject(ProjectDTO projectDTO, string fileName)
 {
     IFileDAO projectDAO = new ProjectDAO ();
     FileStream fileStream = new FileStream (fileName, FileMode.Create);
     projectDAO.Serialize (fileStream, projectDTO);
     fileStream.Close ();
 }