/// <summary> /// Cand butonul de modificare fisier e apasat, se verifica cate fisiere au fost selectate. /// Daca este unul singur, atunci fisierul va fi modificat in functie de textul din /// path, nume si descriere fisier + propietatile selectate. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void changeButton_Click(object sender, EventArgs e) { var fileIndices = fileView.CheckedIndices.Cast <int>(); if (fileIndices.Count() != 1) { return; } List <int> propertiesToChange = new List <int>(); var propertyIndices = propertyView.CheckedIndices.Cast <int>(); foreach (int property in propertyIndices) { propertiesToChange.Add(Properties[property].Id); } var file = new ModelAndAPI.File() { Id = Files[fileIndices.ElementAt(0)].Id, Name = nameBox.Text, Description = fileDescriptionBox.Text, Path = filePathBox.Text }; FileAPI.ModifyFile(file, propertiesToChange); nameBox.Text = ""; fileDescriptionBox.Text = ""; filePathBox.Text = ""; UpdateFileList(); }
/// <summary> /// Aceasta metoda permite modificarea unui fisier si propietatile lui. /// </summary> /// <param name="file">Fisierul primit ca obiect. Campurile care nu sunt /// goale vor inlocui pe cele din baza de date.</param> /// <param name="propertyIndices">Lista cu id-urile propietatilor. Initial, /// toate propietatile vor fi sterse din fisier ca apoi sa fie inlocuite de acestea.</param> /// <returns>Un boolean care spune daca adaugarea a fost realizata cu succes.</returns> bool IFile.ModifyFile(File file, List <int> propertyIndices) { return(FileAPI.ModifyFile(file, propertyIndices)); }