Exemplo n.º 1
0
        public override void Initialize()
        {
            base.Initialize();
            KeyImageClipboard.OnViewerOpened(base.Context.Viewer);

            UpdateEnabled();

            if (WorkItemActivityMonitor.IsSupported)
            {
                _workItemActivityMonitor = WorkItemActivityMonitor.Create();
                _workItemActivityMonitor.IsConnectedChanged += OnIsConnectedChanged;
            }

            if (!KeyImageClipboard.HasViewPlugin)
            {
                foreach (var a in Actions)
                {
                    // TODO (CR Phoenix5 - High): use the ID, which doesn't change; this will change with language.
                    if (a.Path.LocalizedPath == "global-toolbars/ToolbarStandard/Show Key Images")
                    {
                        var buttonAction = a as ButtonAction;
                        if (buttonAction != null)
                        {
                            buttonAction.Visible = false;
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        public void Create()
        {
            if (!base.Enabled)
            {
                return;
            }

            try
            {
                IPresentationImage image = base.Context.Viewer.SelectedPresentationImage;
                if (image != null)
                {
                    KeyImageClipboard.Add(image);
                    _flashOverlayController.Flash(image);
                }

                if (_firstKeyImageCreation && this.ShowEnabled)
                {
                    KeyImageClipboard.Show(Context.DesktopWindow, ShelfDisplayHint.DockAutoHide | ShelfDisplayHint.DockLeft);
                    _firstKeyImageCreation = false;
                }
            }
            catch (Exception ex)
            {
                Platform.Log(LogLevel.Error, ex, "Failed to add item to the key image clipboard.");
                ExceptionHandler.Report(ex, SR.MessageCreateKeyImageFailed, base.Context.DesktopWindow);
            }
        }
        public KeyImageClipboardComponent(KeyImageClipboard clipboard)
            : base(ToolbarSite, MenuSite, clipboard != null ? clipboard.CurrentContext : null, false)
        {
            _availableContexts = new BindingList <KeyImageInformation>();

            Clipboard = clipboard;
        }
        private void Revert(IEnumerable <IClipboardItem> items)
        {
            try
            {
                var itemList = items.ToList();
                foreach (var item in itemList.Where(item => item.IsSerialized()))
                {
                    var clipboard = KeyImageClipboard.GetKeyImageClipboard(Context.DesktopWindow);
                    var selectionDocumentInstanceUid = item.GetSelectionDocumentInstanceUid();
                    var context = clipboard.AvailableContexts.FirstOrDefault(c => c.DocumentInstanceUid == selectionDocumentInstanceUid);
                    if (context != null)
                    {
                        if (item.RevertKeyImage(context))
                        {
                            clipboard.CurrentContext = context;
                        }
                    }
                }

                if (itemList.Any(item => !item.IsSerialized()))
                {
                    Context.DesktopWindow.ShowMessageBox(SR.MessageUnableToRevertSomeKeyImages, MessageBoxActions.Ok);
                }
            }
            catch (Exception ex)
            {
                ExceptionHandler.Report(ex, Context.DesktopWindow);
            }
        }
Exemplo n.º 5
0
        public void Create()
        {
            if (!Enabled)
            {
                return;
            }

            var image = SelectedPresentationImage;

            try
            {
                if (image != null)
                {
                    if (!TryUpdateExistingItem(image))
                    {
                        KeyImageClipboard.Add(image);
                    }

                    _flashOverlayController.Flash(image);
                }

                if (KeyImageClipboardComponent.HasViewPlugin && _firstKeyImageCreation && ShowEnabled)
                {
                    KeyImageClipboard.Show(Context.DesktopWindow, ShelfDisplayHint.DockAutoHide | ShelfDisplayHint.DockLeft);
                    _firstKeyImageCreation = false;
                }
            }
            catch (Exception ex)
            {
                Platform.Log(LogLevel.Error, ex, "Failed to add item to the key image clipboard.");
                ExceptionHandler.Report(ex, SR.MessageCreateKeyImageFailed, Context.DesktopWindow);
            }
        }
Exemplo n.º 6
0
 public void Show()
 {
     if (ShowEnabled)
     {
         KeyImageClipboard.Show(Context.DesktopWindow);
     }
 }
Exemplo n.º 7
0
        protected override void Dispose(bool disposing)
        {
            if (Context != null)
            {
                KeyImageClipboard.OnViewerClosed(Context.Viewer);
            }

            base.Dispose(disposing);
        }
Exemplo n.º 8
0
        internal static void OnViewerOpened(IImageViewer viewer)
        {
            if (!KeyImageClipboards.ContainsKey(viewer))
            {
                KeyImageClipboards[viewer] = new KeyImageClipboard(viewer.StudyTree);
            }

            ManageActivityMonitorConnection();
        }
Exemplo n.º 9
0
        protected override void Dispose(bool disposing)
        {
            if (Context != null)
            {
                KeyImageClipboard.OnDesktopWindowClosed(Context.DesktopWindow);
            }

            base.Dispose(disposing);
        }
Exemplo n.º 10
0
        public override void Initialize()
        {
            base.Initialize();
            KeyImageClipboard.OnViewerOpened(base.Context.Viewer);

            UpdateEnabled();

            _workItemActivityMonitor = WorkItemActivityMonitor.Create();
            _workItemActivityMonitor.IsConnectedChanged += OnIsConnectedChanged;
        }
Exemplo n.º 11
0
        public void Create()
        {
            if (!base.Enabled)
            {
                return;
            }

            if (KeyImageClipboard.HasViewPlugin)
            {
                try
                {
                    IPresentationImage image = base.Context.Viewer.SelectedPresentationImage;
                    if (image != null)
                    {
                        KeyImageClipboard.Add(image);
                        _flashOverlayController.Flash(image);
                    }

                    if (_firstKeyImageCreation && this.ShowEnabled)
                    {
                        KeyImageClipboard.Show(Context.DesktopWindow,
                                               ShelfDisplayHint.DockAutoHide | ShelfDisplayHint.DockLeft);
                        _firstKeyImageCreation = false;
                    }
                }
                catch (Exception ex)
                {
                    Platform.Log(LogLevel.Error, ex, "Failed to add item to the key image clipboard.");
                    ExceptionHandler.Report(ex, SR.MessageCreateKeyImageFailed, base.Context.DesktopWindow);
                }
            }
            else
            {
                try
                {
                    IPresentationImage image = base.Context.Viewer.SelectedPresentationImage;
                    if (image != null)
                    {
                        // New Virtual Display Set
                        // TODO (9-JAN-13) As per Phoenx5, Sprint 4 review, disable creation of the virtual display set in Webstation.
                        //KeyImageDisplaySet.AddKeyImage(image);

                        // Still save to clipboard, makes publishing easier later
                        KeyImageClipboard.Add(image);

                        _flashOverlayController.Flash(image);
                    }
                }
                catch (Exception ex)
                {
                    Platform.Log(LogLevel.Error, ex, "Failed to create virtual display set for key image.");
                    ExceptionHandler.Report(ex, SR.MessageCreateKeyImageFailed, base.Context.DesktopWindow);
                }
            }
        }
Exemplo n.º 12
0
        internal static void OnViewerOpened(IImageViewer viewer)
        {
            if (!KeyImageClipboards.ContainsKey(viewer))
            {
                var keyImageClipboard = new KeyImageClipboard(viewer.StudyTree);
                KeyImageClipboards[viewer]      = keyImageClipboard;
                viewer.EventBroker.StudyLoaded += keyImageClipboard.OnStudyLoaded;
            }

            ManageActivityMonitorConnection();
        }
Exemplo n.º 13
0
        protected override void Dispose(bool disposing)
        {
            _workItemActivityMonitor.IsConnectedChanged -= OnIsConnectedChanged;
            _workItemActivityMonitor.Dispose();

            if (base.Context != null)
            {
                KeyImageClipboard.OnViewerClosed(base.Context.Viewer);
            }

            base.Dispose(disposing);
        }
Exemplo n.º 14
0
        public override void Initialize()
        {
            base.Initialize();
            KeyImageClipboard.OnViewerOpened(Context.Viewer);

            //Enablement conditions don't change.
            UpdateEnabled();

            if (!KeyImageClipboardComponent.HasViewPlugin)
            {
                foreach (var buttonAction in Actions.Where(a => a.ActionID == "show").OfType <ClickAction>())
                {
                    buttonAction.Visible = false;
                }
            }
        }
Exemplo n.º 15
0
        private bool TryUpdateExistingItem(IPresentationImage image)
        {
            var koDocument = image.FindParentKeyObjectDocument();

            if (koDocument != null)
            {
                var clipboard = KeyImageClipboard.GetKeyImageClipboard(ImageViewer);
                var context   = clipboard.AvailableContexts.FirstOrDefault(c => c.DocumentInstanceUid == koDocument.SopCommon.SopInstanceUid);
                if (context != null)
                {
                    if (image.UpdateKeyImage(context))
                    {
                        clipboard.CurrentContext = context;
                        return(true);
                    }
                }
            }
            return(false);
        }
Exemplo n.º 16
0
        public override void Initialize()
        {
            base.Initialize();
            KeyImageClipboard.OnViewerOpened(Context.Viewer);

            UpdateEnabled();

            if (WorkItemActivityMonitor.IsSupported)
            {
                _workItemActivityMonitor = WorkItemActivityMonitor.Create();
                _workItemActivityMonitor.IsConnectedChanged += OnIsConnectedChanged;
            }

            if (!KeyImageClipboardComponent.HasViewPlugin)
            {
                foreach (var buttonAction in Actions.Where(a => a.ActionID == "show").OfType <ClickAction>())
                {
                    buttonAction.Visible = false;
                }
            }
        }
Exemplo n.º 17
0
 private void Revert(IEnumerable <IClipboardItem> items)
 {
     try
     {
         foreach (var item in items.ToList())
         {
             var clipboard = KeyImageClipboard.GetKeyImageClipboard(Context.DesktopWindow);
             var selectionDocumentInstanceUid = item.GetSelectionDocumentInstanceUid();
             var context = clipboard.AvailableContexts.FirstOrDefault(c => c.DocumentInstanceUid == selectionDocumentInstanceUid);
             if (context != null)
             {
                 if (item.RevertKeyImage(context))
                 {
                     clipboard.CurrentContext = context;
                 }
             }
         }
     }
     catch (Exception ex)
     {
         ExceptionHandler.Report(ex, Context.DesktopWindow);
     }
 }
        internal static void Launch(IDesktopWindow desktopWindow)
        {
            KeyImageInformation info = KeyImageClipboard.GetKeyImageInformation(desktopWindow);

            if (info == null)
            {
                throw new ArgumentException("There is no valid key image data available for the given window.", "desktopWindow");
            }

            KeyImageInformationEditorComponent component = new KeyImageInformationEditorComponent();

            component.Description       = info.Description;
            component.DocumentTitle     = info.DocumentTitle;
            component.SeriesDescription = info.SeriesDescription;

            ApplicationComponentExitCode exitCode = LaunchAsDialog(desktopWindow, component, SR.TitleEditKeyImageInformation);

            if (exitCode == ApplicationComponentExitCode.Accepted)
            {
                info.Description       = component.Description;
                info.DocumentTitle     = component.DocumentTitle;
                info.SeriesDescription = component.SeriesDescription;
            }
        }
Exemplo n.º 19
0
 public override void Initialize()
 {
     base.Initialize();
     KeyImageClipboard.OnDesktopWindowOpened(Context.DesktopWindow);
 }
Exemplo n.º 20
0
		internal static void OnViewerOpened(IImageViewer viewer)
		{
			if (!KeyImageClipboards.ContainsKey(viewer))
				KeyImageClipboards[viewer] = new KeyImageClipboard(viewer.StudyTree);

			ManageActivityMonitorConnection();
		}
Exemplo n.º 21
0
		internal static void OnViewerOpened(IImageViewer viewer)
		{
			if (!KeyImageClipboards.ContainsKey(viewer))
			{
				var keyImageClipboard = new KeyImageClipboard(viewer.StudyTree);
				KeyImageClipboards[viewer] = keyImageClipboard;
				viewer.EventBroker.StudyLoaded += keyImageClipboard.OnStudyLoaded;
			}

			ManageActivityMonitorConnection();
		}