public override void Initialize()
        {
            base.Initialize();

            _coordinator = SynchronizationToolCoordinator.Get(base.ImageViewer);
            _coordinator.SetSpatialLocatorTool(this);
        }
        public override void Initialize()
        {
            base.Initialize();

            _coordinator = SynchronizationToolCoordinator.Get(base.ImageViewer);
            _coordinator.SetReferenceLineTool(this);

            base.ImageViewer.EventBroker.ImageDrawing += OnImageDrawing;
        }
        public override void Initialize()
        {
            base.Initialize();

            base.ImageViewer.EventBroker.DisplaySetChanging           += OnDisplaySetChanging;
            base.ImageViewer.EventBroker.DisplaySetChanged            += OnDisplaySetChanged;
            base.ImageViewer.PhysicalWorkspace.LayoutCompleted        += OnLayoutCompleted;
            SynchronizationToolSettingsHelper.Default.PropertyChanged += OnSynchronizationToolSettingsPropertyChanged;

            _coordinator = SynchronizationToolCoordinator.Get(base.ImageViewer);
            _coordinator.SetStackingSynchronizationTool(this);
        }
        public static SynchronizationToolCoordinator Get(IImageViewer viewer)
        {
            if (!Coordinators.ContainsKey(viewer))
            {
                SynchronizationToolCoordinator coordinator = new SynchronizationToolCoordinator(viewer);

                viewer.EventBroker.PresentationImageSelected += coordinator.OnPresentationImageSelected;
                viewer.EventBroker.TileSelected += coordinator.OnTileSelected;

                Coordinators.Add(viewer, coordinator);
            }

            DicomImagePlane.InitializeCache();

            ++Coordinators[viewer]._referenceCount;
            return(Coordinators[viewer]);
        }