public ReferenceLineCompositeGraphic GetReferenceLineCompositeGraphic(IPresentationImage image)
        {
            SynchronizationToolCompositeGraphic container = GetSynchronizationToolCompositeGraphic(image);

            if (container == null)
            {
                return(null);
            }

            return(container.ReferenceLineCompositeGraphic);
        }
        public CompositeGraphic GetSpatialLocatorCompositeGraphic(IPresentationImage image)
        {
            SynchronizationToolCompositeGraphic container = GetSynchronizationToolCompositeGraphic(image);

            if (container == null)
            {
                return(null);
            }

            return(container.SpatialLocatorCompositeGraphic);
        }
        private static SynchronizationToolCompositeGraphic GetSynchronizationToolCompositeGraphic(IPresentationImage image)
        {
            if (image is IApplicationGraphicsProvider)
            {
                GraphicCollection overlayGraphics             = ((IApplicationGraphicsProvider)image).ApplicationGraphics;
                SynchronizationToolCompositeGraphic container = CollectionUtils.SelectFirst(overlayGraphics,
                                                                                            delegate(IGraphic graphic)
                {
                    return(graphic is SynchronizationToolCompositeGraphic);
                }) as SynchronizationToolCompositeGraphic;

                if (container == null)
                {
                    overlayGraphics.Insert(0, container = new SynchronizationToolCompositeGraphic());
                }

                container.Visible = true;
                return(container);
            }

            return(null);
        }