public void CopyThumbnailFile() { if (IsItemSelected && SelectedItem.IsThumbnailFileExist) { ClipboardHelpers.CopyFile(SelectedItem.Info.ThumbnailFilePath); } }
private void DoFileJobs() { if (!string.IsNullOrEmpty(Info.FilePath) && File.Exists(Info.FilePath)) { if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFileToClipboard)) { ClipboardHelpers.CopyFile(Info.FilePath); } else if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFilePathToClipboard)) { ClipboardHelpers.CopyText(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.PerformActions) && Info.TaskSettings.ExternalPrograms != null) { var actions = Info.TaskSettings.ExternalPrograms.Where(x => x.IsActive); if (actions.Count() > 0) { if (Data != null) { Data.Dispose(); } foreach (ExternalProgram fileAction in actions) { fileAction.Run(Info.FilePath); } Data = new FileStream(Info.FilePath, FileMode.Open, FileAccess.Read, FileShare.Read); } } } }
public void CopyFile() { if (HistoryItem != null && IsFileExist) { ClipboardHelpers.CopyFile(HistoryItem.Filepath); } }
private void DoFileJobs() { if (!string.IsNullOrEmpty(Info.FilePath) && File.Exists(Info.FilePath)) { if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.PerformActions) && Info.TaskSettings.ExternalPrograms != null) { IEnumerable <ExternalProgram> actions = Info.TaskSettings.ExternalPrograms.Where(x => x.IsActive); if (actions.Count() > 0) { bool isFileModified = false; string fileName = Info.FileName; foreach (ExternalProgram fileAction in actions) { string modifiedPath = fileAction.Run(Info.FilePath); if (!string.IsNullOrEmpty(modifiedPath)) { isFileModified = true; Info.FilePath = modifiedPath; } } if (isFileModified) { string extension = Helpers.GetFilenameExtension(Info.FilePath); Info.FileName = Helpers.ChangeFilenameExtension(fileName, extension); if (Data != null) { Data.Dispose(); } LoadFileStream(); } } } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFileToClipboard)) { ClipboardHelpers.CopyFile(Info.FilePath); } else if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFilePathToClipboard)) { ClipboardHelpers.CopyText(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.ShowInExplorer)) { Helpers.OpenFolderWithFile(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.ScanQRCode) && Info.DataType == EDataType.Image) { QRCodeForm.OpenFormDecodeFromFile(Info.FilePath).ShowDialog(); } } }
public void CopyFile() { HistoryItem[] historyItems = OnGetHistoryItems(); if (historyItems != null) { string[] array = historyItems.Where(x => x != null && !string.IsNullOrEmpty(x.FilePath) && Path.HasExtension(x.FilePath) && File.Exists(x.FilePath)).Select(x => x.FilePath).ToArray(); if (array != null && array.Length > 0) { ClipboardHelpers.CopyFile(array); } } }
private void DoFileJobs() { if (!string.IsNullOrEmpty(Info.FilePath) && File.Exists(Info.FilePath)) { if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.PerformActions) && Info.TaskSettings.ExternalPrograms != null) { IEnumerable <ExternalProgram> actions = Info.TaskSettings.ExternalPrograms.Where(x => x.IsActive); if (actions.Count() > 0) { if (Data != null) { Data.Dispose(); } foreach (ExternalProgram fileAction in actions) { Info.FilePath = fileAction.Run(Info.FilePath); } LoadFileStream(); } } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFileToClipboard)) { ClipboardHelpers.CopyFile(Info.FilePath); } else if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFilePathToClipboard)) { ClipboardHelpers.CopyText(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.ShowInExplorer)) { Helpers.OpenFolderWithFile(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.ScanQRCode) && Info.DataType == EDataType.Image) { QRCodeForm.DecodeFile(Info.FilePath).ShowDialog(); } } }
private void DoAfterCaptureJobs() { if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.AddImageEffects)) { tempImage = TaskHelpers.AddImageEffects(tempImage, Info.TaskSettings); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.AddWatermark) && Info.TaskSettings.ImageSettings.WatermarkConfig != null) { Info.TaskSettings.ImageSettings.WatermarkConfig.Apply(tempImage); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.AnnotateImage)) { tempImage = TaskHelpers.AnnotateImage(tempImage); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyImageToClipboard)) { ClipboardHelpers.CopyImage(tempImage); DebugHelper.WriteLine("CopyImageToClipboard"); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.SendImageToPrinter)) { if (Program.Settings.DontShowPrintSettingsDialog) { using (PrintHelper printHelper = new PrintHelper(tempImage)) { printHelper.Settings = Program.Settings.PrintSettings; printHelper.Print(); } } else { using (PrintForm printForm = new PrintForm(tempImage, Program.Settings.PrintSettings)) { printForm.ShowDialog(); } } } if (Info.TaskSettings.AfterCaptureJob.HasFlagAny(AfterCaptureTasks.SaveImageToFile, AfterCaptureTasks.SaveImageToFileWithDialog, AfterCaptureTasks.UploadImageToHost)) { using (tempImage) { ImageData imageData = TaskHelpers.PrepareImage(tempImage, Info.TaskSettings); Data = imageData.ImageStream; Info.FileName = Path.ChangeExtension(Info.FileName, imageData.ImageFormat.GetDescription()); if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.SaveImageToFile)) { string filePath = TaskHelpers.CheckFilePath(Info.TaskSettings.CaptureFolder, Info.FileName, Info.TaskSettings); if (!string.IsNullOrEmpty(filePath)) { Info.FilePath = filePath; imageData.Write(Info.FilePath); DebugHelper.WriteLine("SaveImageToFile: " + Info.FilePath); } } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.SaveImageToFileWithDialog)) { using (SaveFileDialog sfd = new SaveFileDialog()) { if (string.IsNullOrEmpty(lastSaveAsFolder) || !Directory.Exists(lastSaveAsFolder)) { lastSaveAsFolder = Info.TaskSettings.CaptureFolder; } sfd.InitialDirectory = lastSaveAsFolder; sfd.FileName = Info.FileName; sfd.DefaultExt = Path.GetExtension(Info.FileName).Substring(1); sfd.Filter = string.Format("*{0}|*{0}|All files (*.*)|*.*", Path.GetExtension(Info.FileName)); sfd.Title = "Choose a folder to save " + Path.GetFileName(Info.FileName); if (sfd.ShowDialog() == DialogResult.OK && !string.IsNullOrEmpty(sfd.FileName)) { Info.FilePath = sfd.FileName; lastSaveAsFolder = Path.GetDirectoryName(Info.FilePath); imageData.Write(Info.FilePath); DebugHelper.WriteLine("SaveImageToFileWithDialog: " + Info.FilePath); } } } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.SaveThumbnailImageToFile)) { string thumbnailFilename, thumbnailFolder; if (!string.IsNullOrEmpty(Info.FilePath)) { thumbnailFilename = Path.GetFileName(Info.FilePath); thumbnailFolder = Path.GetDirectoryName(Info.FilePath); } else { thumbnailFilename = Info.FileName; thumbnailFolder = Info.TaskSettings.CaptureFolder; } Info.ThumbnailFilePath = TaskHelpers.CreateThumbnail(tempImage, thumbnailFolder, thumbnailFilename, Info.TaskSettings); if (!string.IsNullOrEmpty(Info.ThumbnailFilePath)) { DebugHelper.WriteLine("SaveThumbnailImageToFile: " + Info.ThumbnailFilePath); } } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFileToClipboard) && !string.IsNullOrEmpty(Info.FilePath) && File.Exists(Info.FilePath)) { ClipboardHelpers.CopyFile(Info.FilePath); } else if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.CopyFilePathToClipboard) && !string.IsNullOrEmpty(Info.FilePath)) { ClipboardHelpers.CopyText(Info.FilePath); } if (Info.TaskSettings.AfterCaptureJob.HasFlag(AfterCaptureTasks.PerformActions) && Info.TaskSettings.ExternalPrograms != null && !string.IsNullOrEmpty(Info.FilePath) && File.Exists(Info.FilePath)) { var actions = Info.TaskSettings.ExternalPrograms.Where(x => x.IsActive); if (actions.Count() > 0) { if (Data != null) { Data.Dispose(); } foreach (ExternalProgram fileAction in actions) { fileAction.Run(Info.FilePath); } Data = new FileStream(Info.FilePath, FileMode.Open, FileAccess.Read, FileShare.Read); } } } } }
private void ExecuteAction(ToastClickAction action) { switch (action) { case ToastClickAction.AnnotateImage: if (!string.IsNullOrEmpty(Config.FilePath) && Helpers.IsImageFile(Config.FilePath)) { TaskHelpers.AnnotateImageFromFile(Config.FilePath); } break; case ToastClickAction.CopyImageToClipboard: if (!string.IsNullOrEmpty(Config.FilePath)) { ClipboardHelpers.CopyImageFromFile(Config.FilePath); } break; case ToastClickAction.CopyFile: if (!string.IsNullOrEmpty(Config.FilePath)) { ClipboardHelpers.CopyFile(Config.FilePath); } break; case ToastClickAction.CopyFilePath: if (!string.IsNullOrEmpty(Config.FilePath)) { ClipboardHelpers.CopyText(Config.FilePath); } break; case ToastClickAction.CopyUrl: if (!string.IsNullOrEmpty(Config.URL)) { ClipboardHelpers.CopyText(Config.URL); } break; case ToastClickAction.OpenFile: if (!string.IsNullOrEmpty(Config.FilePath)) { Helpers.OpenFile(Config.FilePath); } break; case ToastClickAction.OpenFolder: if (!string.IsNullOrEmpty(Config.FilePath)) { Helpers.OpenFolderWithFile(Config.FilePath); } break; case ToastClickAction.OpenUrl: if (!string.IsNullOrEmpty(Config.URL)) { URLHelpers.OpenURL(Config.URL); } break; case ToastClickAction.Upload: if (!string.IsNullOrEmpty(Config.FilePath)) { UploadManager.UploadFile(Config.FilePath); } break; } }
public void CopyFile() { if (IsItemSelected && SelectedItem.IsFileExist) ClipboardHelpers.CopyFile(SelectedItem.Info.FilePath); }