/// <summary>
        ///     Registers a new OverlayElementFactory with this manager.
        /// </summary>
        /// <remarks>
        ///    Should be used by plugins or other apps wishing to provide
        ///    a new OverlayElement subclass.
        /// </remarks>
        /// <param name="factory"></param>
        public void AddElementFactory(IOverlayElementFactory factory)
        {
            factories.Add(factory.Type, factory);

            LogManager.Instance.Write("OverlayElementFactory for type '{0}' registered.", factory.Type);
        }
        /// <summary>
        ///     Registers a new OverlayElementFactory with this manager.
        /// </summary>
        /// <remarks>
        ///    Should be used by plugins or other apps wishing to provide
        ///    a new OverlayElement subclass.
        /// </remarks>
        /// <param name="factory"></param>
        public void AddElementFactory(IOverlayElementFactory factory)
        {
            factories.Add(factory.Type, factory);

            LogManager.Instance.Write("OverlayElementFactory for type '{0}' registered.", factory.Type);
        }