/// <summary> /// Returneaza nodul care contine lectia de pe forma. /// </summary> /// <param name="save">Adevarat daca se salveaza modificarile</param> /// <returns></returns> private CustomTreeNode<Lectie> GetLectieTreeNode(bool save) { int id; if (save) { if (Res.Instance.SelectedLectie == null) return null; id = Res.Instance.SelectedLectie.Id; } else id = Res.Instance.GetNextAvailableLectieId(); if (txtTitluLectie.Text.Length == 0) { errorProvider.SetError(txtTitluLectie, Messages.TITLE_UNSPECIFIED); return null; } errorProvider.SetError(txtTitluLectie, ""); int difficulty; int.TryParse(comboBoxDificultateLectie.Text, out difficulty); if (difficulty == 0 || (difficulty < 1 && difficulty > 3)) { errorProvider.SetError(comboBoxDificultateLectie, Messages.INCORRECT_VALUE); return null; } errorProvider.SetError(comboBoxDificultateLectie, ""); string file_path = txtLocatieLectie.Text; if (file_path.Contains(Config.AppDataPath)) file_path = file_path.Substring(Config.AppDataPath.Length); if (file_path.Length != 0 && !File.Exists(Config.AppDataPath + file_path)) { errorProvider.SetError(txtLocatieLectie, Messages.NO_FILE_EXIST); return null; } errorProvider.SetError(txtLocatieLectie, ""); if (!ValidateTextBoxText(txtProblemeAsociate, true)) return null; errorProvider.SetError(txtProblemeAsociate, ""); if (!ValidateTextBoxText(txtTesteAsociate, true)) return null; errorProvider.SetError(txtTesteAsociate, ""); Lectie newLectie = new Lectie(id, txtTitluLectie.Text, file_path, difficulty, txtProblemeAsociate.Text, txtTesteAsociate.Text, null); return new CustomTreeNode<Lectie>(newLectie.Titlu, newLectie, false); }
/// <summary> /// Sterge toate referintele referitoare la lectia specificata /// </summary> /// <param name="lectie"></param> public void RemoveLectie(Lectie lectie) { if (lectie == null) return; IdsLectii.Remove(lectie.Id); LectiiHolder.Lectii.Remove(lectie); if (lectie.Lectii == null) lectie.Lectii = new List<Lectie>(); foreach (var sublectie in lectie.Lectii) { RemoveLectie(sublectie); } }