Bloom.Edit.EditingView.CopyImageToClipboard C# (CSharp) Method

CopyImageToClipboard() private static method

private static CopyImageToClipboard ( DomEventArgs ge, string bookFolderPath ) : bool
ge DomEventArgs
bookFolderPath string
return bool
        private static bool CopyImageToClipboard(DomEventArgs ge, string bookFolderPath)
        {
            var imageElement = GetImageNode(ge);
            if(imageElement != null)
            {
                var url = HtmlDom.GetImageElementUrl(imageElement);
                if(String.IsNullOrEmpty(url.NotEncoded))
                    return false;

                var path = Path.Combine(bookFolderPath, url.NotEncoded);
                try
                {
                    using(var image = PalasoImage.FromFileRobustly(path))
                    {
                        PortableClipboard.CopyImageToClipboard(image);
                    }
                    return true;
                }
                catch (NotImplementedException)
                {
                    var msg = LocalizationManager.GetDynamicString("Bloom", "ImageToClipboard",
                        "Copying an image to the clipboard is not yet implemented in Bloom for Linux.",
                        "message for messagebox warning to user");
                    var header = LocalizationManager.GetDynamicString("Bloom", "NotImplemented",
                        "Not Yet Implemented", "header for messagebox warning to user");
                    MessageBox.Show(msg, header);
                }
                catch (ExternalException e)
                {
                    Logger.WriteEvent("CopyImageToClipboard -> ExternalException: " + e.Message);
                    var msg = LocalizationManager.GetDynamicString("Bloom", "EditTab.Image.CopyImageFailed",
                        "Bloom had problems using your computer's clipboard. Some other program may be interfering.") +
                        Environment.NewLine + Environment.NewLine +
                        LocalizationManager.GetDynamicString("Bloom", "EditTab.Image.TryRestart",
                        "Try closing other programs and restart your computer if necessary.");
                    MessageBox.Show(msg);
                }
                catch (Exception e)
                {
                    Debug.Fail(e.Message);
                    Logger.WriteEvent("CopyImageToClipboard:" + e.Message);
                }
            }
            return false;
        }