internal FileViewModelBase OpenFile(string filePath) { var fileViewModel = _files.FirstOrDefault(fm => fm.FilePath == filePath); if (fileViewModel != null) { return(fileViewModel); } string extension = Path.GetExtension(filePath).ToLower(); switch (extension) { case ".ogg": case ".rpgmvo": case ".ogg_": case ".m4a": case ".rpgmvm": case ".m4a_": case ".wav": case ".rpgmvw": case ".wav_": fileViewModel = new AudioFileViewModel(filePath); _files.Add(fileViewModel); break; case ".png": case ".rpgmvp": case ".png_": fileViewModel = new ImageFileViewModel(filePath); _files.Add(fileViewModel); break; case ".json": fileViewModel = new JsonFileViewModel(filePath); _files.Add(fileViewModel); break; case ".rpgsave": fileViewModel = new SaveFileViewModel(filePath); _files.Add(fileViewModel); break; case ".script": fileViewModel = new ScriptFileViewModel(filePath); _files.Add(fileViewModel); break; default: fileViewModel = new GeneralFileViewModel(filePath); _files.Add(fileViewModel); break; } return(fileViewModel); }
internal void SaveFile(FileViewModelBase fileToSave, bool saveAsFlag = false) { if (fileToSave.FilePath == null || saveAsFlag) { var dlg = new SaveFileDialog(); if (dlg.ShowDialog().GetValueOrDefault()) { fileToSave.FilePath = dlg.SafeFileName; } } if (fileToSave.FilePath == null) { return; } if (fileToSave is AudioFileViewModel) { // TODO : Save action } else if (fileToSave is GeneralFileViewModel) { GeneralFileViewModel file = fileToSave as GeneralFileViewModel; if (file.IsDirty) { FileManager.WriteTextFile(file.FilePath, file.TextContent, Encoding.UTF8); } } else if (fileToSave is ImageFileViewModel) { // TODO : Save action } else if (fileToSave is JsonFileViewModel) { JsonFileViewModel file = fileToSave as JsonFileViewModel; if (file.IsDirty) { FileManager.WriteTextFile(file.FilePath, file.DocumentText, Encoding.UTF8); } } else if (fileToSave is SaveFileViewModel) { // TODO : Save action } else if (fileToSave is ScriptFileViewModel) { // TODO : Save action } ActiveDocument.IsDirty = false; ActiveDocument.OnAfterSave(null); }
public async Task <IActionResult> UploadGeneralFile(GeneralFileViewModel userViewModel) { if (ModelState.IsValid) { var formFile = userViewModel.UserFile; if (!await _uploadFileService.SavePostedFileAsync(formFile, destinationDirectoryName: "files", allowOverwrite: false)) { ModelState.AddModelError("", "Uploaded file is null or empty."); return(View(viewName: "Index")); } RedirectToAction("Index"); } return(View(viewName: "Index")); }
public async Task <IActionResult> UploadGeneralFile(GeneralFileViewModel userViewModel) { if (ModelState.IsValid) { var formFile = userViewModel.UserFile; var(isSaved, savedFilePath) = await _uploadFileService.SavePostedFileAsync(formFile, allowOverwrite : false, "files", "nestedfolder", "nestedfolder2"); if (!isSaved) { ModelState.AddModelError("", "Uploaded file is null or empty."); return(View(viewName: "Index")); } RedirectToAction("Index"); } return(View(viewName: "Index")); }