void resizer_BeforeWritingFileMakeBackup(object sender, ResizerEventArgs e) { resizer_BeforeWritingFile(sender, e); string backupFile = FileUtil.GenerateNewFileName(e.Result.SourceFileName, "_backup"); if (File.Exists(backupFile)) { File.Delete(backupFile); } File.Copy(e.Result.SourceFileName, backupFile); WriteToPaneLog("\nCreated backup: " + backupFile); }
void resizer_BeforeWritingFile(object sender, ResizerEventArgs e) { try { if (dte.SourceControl.IsItemUnderSCC(e.Result.DestFileName) && !dte.SourceControl.IsItemCheckedOut(e.Result.DestFileName)) { dte.SourceControl.CheckOutItem(e.Result.DestFileName); } //Check if file is part of solution if (dte.Solution.FindProjectItem(e.Result.DestFileName) == null) { var proj = dte.Solution.FindProjectItem(e.Result.SourceFileName).ContainingProject; if (proj != null && dte.SourceControl.IsItemUnderSCC(proj.FileName) && !dte.SourceControl.IsItemCheckedOut(proj.FileName)) { dte.SourceControl.CheckOutItem(proj.FileName); } } } catch { // Do nothing } }
private void resizer_Progress(object sender, ResizerEventArgs e) { Resizer resizer = (Resizer)sender; StringBuilder sb = new StringBuilder(); sb.AppendLine(Environment.NewLine + Path.GetFileName(e.Result.DestFileName) + " - " + e.Result.ConversionMsg); if (e.Result.HasError) { WriteToPaneLog(e.Result.ErrorMessage); } else { switch (resizer.Command.ActionToPerform) { case ManipulateAction.AdvancedConvert: if (resizer.Command.CreateNewFile) { sb.AppendLine("Created new image: " + e.Result.DestFileName); } sb.AppendLine("Resized image: " + FileUtil.ConvertSize(e.Result.SizeAfter)); sb.AppendLine("Difference: " + e.Result.PercentSaved + "%"); resizer.Command.AddToSolution = true; break; case ManipulateAction.Rotate: sb.AppendLine("Rotate: " + e.Result.DestFileName); break; case ManipulateAction.CopyAsThumbnail: sb.AppendLine("Thumbnail: " + FileUtil.ConvertSize(e.Result.SizeAfter)); resizer.Command.AddToSolution = true; break; case ManipulateAction.ConvertToJpeg: sb.AppendLine("Original: " + FileUtil.ConvertSize(e.Result.SizeBefore)); sb.AppendLine("New JPG: " + FileUtil.ConvertSize(e.Result.SizeAfter)); sb.AppendLine("Difference: " + e.Result.PercentSaved + "%"); resizer.Command.AddToSolution = true; break; case ManipulateAction.ConvertToPng: sb.AppendLine("Original: " + FileUtil.ConvertSize(e.Result.SizeBefore)); sb.AppendLine("New PNG: " + FileUtil.ConvertSize(e.Result.SizeAfter)); sb.AppendLine("Difference: " + e.Result.PercentSaved + "%"); resizer.Command.AddToSolution = true; break; case ManipulateAction.ConvertToGif: sb.AppendLine("Original: " + FileUtil.ConvertSize(e.Result.SizeBefore)); sb.AppendLine("New GIF: " + FileUtil.ConvertSize(e.Result.SizeAfter)); sb.AppendLine("Difference: " + e.Result.PercentSaved + "%"); resizer.Command.AddToSolution = true; break; case ManipulateAction.ReCompressWithQuality: sb.AppendLine("Original: " + FileUtil.ConvertSize(e.Result.SizeBefore)); sb.AppendLine("Recompressed: " + FileUtil.ConvertSize(e.Result.SizeAfter)); sb.AppendLine("Savings: " + e.Result.PercentSaved + "%"); break; default: throw new ArgumentOutOfRangeException(); } if (resizer.Command.AddToSolution) { AddToSolution(e.Result.SourceFileName, e.Result.DestFileName); } processed++; allBefore += e.Result.SizeBefore; allAfter += e.Result.SizeAfter; } WriteToPaneLog(sb.ToString()); dte.StatusBar.Progress(true, e.Result.DestFileName, resizer.Optimized, resizer.Count); }