private void deleteMovie(DBMovieInfo movie) { DBLocalMedia firstFile = movie.LocalMedia[0]; // if the file is available and read only, or known to be stored on optical media, prompt to ignore. if ((firstFile.IsAvailable && firstFile.File.IsReadOnly) || firstFile.ImportPath.IsOpticalDrive) { bool bIgnore = ShowCustomYesNo("Moving Pictures", Translation.CannotDeleteReadOnly, null, null, false); if (bIgnore) { movie.DeleteAndIgnore(); if (browser.CurrentView == BrowserViewMode.DETAILS) // return to the facade screen browser.CurrentView = browser.PreviousView; } return; } // if the file is offline display an error dialog if (!firstFile.IsAvailable) { ShowMessage("Moving Pictures", String.Format(Translation.CannotDeleteOffline, browser.SelectedMovie.Title)); return; } // if the file is available and not read only, confirm delete. string sDoYouWant = String.Format(Translation.DoYouWantToDelete, movie.Title); bool bConfirm = ShowCustomYesNo("Moving Pictures", sDoYouWant, null, null, false); if (bConfirm) { bool deleteSuccesful = movie.DeleteFiles(); if (deleteSuccesful) { if (browser.CurrentView == BrowserViewMode.DETAILS) // return to the facade screen browser.CurrentView = browser.PreviousView; } else { ShowMessage("Moving Pictures", Translation.DeleteFailed, null, null, null); } } }