// ***************** Edit ******************** // ******************************************* public static ILegendCommand CreateEditDrawingItemLayer(MapPresenter map, DrawingItemLayer layer) { var result = new LegendCommand() { PathMarkup = IRI.Jab.Common.Assets.ShapeStrings.Appbar.appbarEdit, Layer = layer, ToolTip = _editToolTip, }; result.Command = new RelayCommand(async param => { var editResult = await map.EditAsync(layer.Geometry, map.MapSettings.EditingOptions); if (!(editResult.IsCanceled == true)) { map.ClearLayer(layer); } if (editResult.HasNotNullResult()) { layer.Geometry = editResult.Result; //shapeItem.AssociatedLayer = new VectorLayer(shapeItem.Title, new List<SqlGeometry>() { editResult.Result.AsSqlGeometry() }, VisualParameters.GetRandomVisualParameters(), LayerType.Drawing, RenderingApproach.Default, RasterizationApproach.DrawingVisual); map.ClearLayer(layer); map.AddLayer(layer); //map.SetLayer(layer); // 1400.03.08- remove highlighted geometry layer.IsSelectedInToc = false; //map.ClearLayer(layer.HighlightGeometryKey.ToString(), true, true); //map.Refresh(); if (layer.OriginalSource != null) { layer.OriginalSource.Update(new SqlFeature(editResult.Result.AsSqlGeometry()) { Id = layer.Id }); } } }); return(result); }