public MeasureRibbonGroupViewModel() { polygonTrackModes = new Collection <PolygonTrackMode>(); polygonTrackModes.Add(PolygonTrackMode.LineWithFill); polygonTrackModes.Add(PolygonTrackMode.LineOnly); selectedPolygonTrackMode = polygonTrackModes.First(); measuringModes = new Collection <MeasuringInMode>(); foreach (MeasuringInMode measuringMode in Enum.GetValues(typeof(MeasuringInMode))) { measuringModes.Add(measuringMode); } UpdateStylePreview(); displayHideText = "Hide Measurements"; displayHidePreview = new BitmapImage(new Uri("/GisEditorPluginCore;component/Images/hideEye.png", UriKind.RelativeOrAbsolute)); }
public static bool UpdateInProcessInteractiveOverlayImageSource(InteractiveOverlay overlay , MapArguments mapArguments , IEnumerable <InMemoryFeatureLayer> inProcessLayers , Collection <SimpleCandidate> simpleCandidates , RenderMode renderMode, PolygonTrackMode polygonTrackMode = PolygonTrackMode.Default, bool refreshAll = false, bool isTrackingPolygon = false) { bool isUpdated = false; var inProcessLayer = inProcessLayers.FirstOrDefault(); var inProcessLineLayer = inProcessLayers.Count() == 2 ? inProcessLayers.Last() : null; simpleCandidates.Clear(); if (inProcessLineLayer != null && inProcessLineLayer.InternalFeatures.Count > 0) { Image defaultImage = GetTileImage(overlay, mapArguments, tracksInProcessLineName, 2); inProcessLineLayer.InternalFeatures.First().ColumnValues[inTrackingFeatureKey] = "True"; UpdateImageSource(mapArguments, simpleCandidates, renderMode, inProcessLineLayer, defaultImage, OutlineDrawMode.Dynamic); inProcessLineLayer.InternalFeatures.First().ColumnValues[inTrackingFeatureKey] = string.Empty; isUpdated = true; if (refreshAll) { defaultImage = GetTileImage(overlay, mapArguments); var outlineDrawing = isTrackingPolygon ? OutlineDrawMode.Open : OutlineDrawMode.Sealed; UpdateImageSource(mapArguments, simpleCandidates, renderMode, inProcessLayer, defaultImage, outlineDrawing); } } else if (inProcessLayer != null && inProcessLayer.InternalFeatures.Count > 0) { Image defaultImage = GetTileImage(overlay, mapArguments); var outlineDrawMode = polygonTrackMode == PolygonTrackMode.LineOnly ? OutlineDrawMode.Open : OutlineDrawMode.LineWithFill; if (outlineDrawMode == OutlineDrawMode.Open && !isTrackingPolygon) { outlineDrawMode = OutlineDrawMode.Sealed; } UpdateImageSource(mapArguments, simpleCandidates, renderMode, inProcessLayer, defaultImage, outlineDrawMode); isUpdated = true; } else { Image defaultImage = GetTileImage(overlay, mapArguments); defaultImage.Source = blankImageSource; } return(isUpdated); }