internal void Rename(int projectIndex, string newProjectName) { if (Contains(newProjectName)) { throw new Exception("Проект с таким именем уже существует в коллекции!"); } Project projectToReplace = new Project(newProjectName); // Copy task foreach (var task in _userProjects[projectIndex].ProjectTasks) { projectToReplace.ProjectTasks.Add(task); } // Copy materials foreach (var material in _userProjects[projectIndex].Materials) { projectToReplace.Materials.Add(material); } projectToReplace.ProjectGoal = _userProjects[projectIndex].ProjectGoal; projectToReplace.RepeatInterval = _userProjects[projectIndex].RepeatInterval; SetofNames.Remove(_userProjects[projectIndex].ProjectName); SetofNames.Add(newProjectName); _userProjects[projectIndex] = projectToReplace; }
internal bool Remove(Project project) { SetofNames.Remove(project.ProjectName); return(_userProjects.Remove(project)); }