/// <summary> /// Конструктор <inheritdoc cref="DrawControl"/> /// </summary> /// <param name="mapSettings"><inheritdoc cref="IMapSettingsController"/></param> /// <param name="layerManager"><inheritdoc cref="IDrawLayerManager"/></param> public DrawControl([NotNull] IMapSettingsController mapSettings, [NotNull] IDrawLayerManager layerManager) : this() { _mapSettings = mapSettings ?? throw new ArgumentNullException(nameof(mapSettings)); _layerManager = layerManager ?? throw new ArgumentNullException(nameof(layerManager)); _mapSettings.Changed += MapSettingsOnChanged; _layerManager.Changed += LayerManagerOnChanged; }
/// <summary> /// Конструктор <inheritdoc cref="CourseLayerManager"/> /// </summary> /// <param name="drawLayerManager"></param> public CourseLayerManager( IServiceProvider serviceProvider, IDrawLayerManager drawLayerManager, IOperationLayer operationLayer ) { _serviceProvider = serviceProvider; _drawLayerManager = drawLayerManager; _operationLayer = operationLayer; Initialize(_drawLayerManager); _courseLayers = new List <IDrawLayer>(); _mapSplines = new List <IDrawLayer>(); }
private void Initialize(IDrawLayerManager drawLayerManager) { var changed = drawLayerManager.BeginChanging(); _mapBackgroundLayer = new BackgroundMapDrawLayer(); if (drawLayerManager.Layers.Count == 0) { drawLayerManager.AddLayer(_mapBackgroundLayer); } else { drawLayerManager.InsertLayer(0, _mapBackgroundLayer); } drawLayerManager.AddLayer(_operationLayer); ReindexSystemLayers(); changed.Dispose(); }