private bool AddServiceFromURL(string url) { if (null == Application.DocumentManager.MdiActiveDocument) { return(false); } Mouse.OverrideCursor = Cursors.Wait; AGSMapService aGSMapService = AGSMapService.BuildMapServiceFromURL(null, url); if (aGSMapService == null) { return(false); } string value = MSCPrj.ReadWKT(Application.DocumentManager.MdiActiveDocument); if (string.IsNullOrEmpty(value)) { value = MSCPrj.AssignWKT(AfaDocData.ActiveDocData.Document, aGSMapService.GetWKT()); } if (!aGSMapService.AddService()) { Mouse.OverrideCursor = null; return(false); } Mouse.OverrideCursor = null; return(true); }
private void MapButton_Click(object sender, RoutedEventArgs e) { try { base.IsEnabled = false; base.Hide(); Mouse.OverrideCursor = Cursors.Wait; OnlineSearchItem onlineSearchItem = (OnlineSearchItem)this.lbMaps.SelectedItem; string item = onlineSearchItem.Item; string uRL = item; if (item.ToLower().Contains("/rest/")) { int startIndex = item.ToLower().IndexOf("/rest/"); uRL = item.Remove(startIndex, 5); } AGSMapService aGSMapService = AGSMapService.BuildMapServiceFromURL(onlineSearchItem.Name, uRL); string wKT = AfaDocData.ActiveDocData.DocPRJ.WKT; if (aGSMapService != null) { if (string.IsNullOrEmpty(wKT)) { try { wKT = aGSMapService.GetWKT(); MSCPrj.AssignWKT(AfaDocData.ActiveDocData.Document, wKT); } catch { AfaDocData.ActiveDocData.Document.Editor.WriteMessage(AfaStrings.UnableToAssignCoordinateSystem); } } aGSMapService.ExportOptions.OutputWKT = wKT; if (!aGSMapService.AddService()) { string text = AfaStrings.ErrorAddingService; if (!string.IsNullOrEmpty(aGSMapService.ErrorMessage)) { text = text + " " + aGSMapService.ErrorMessage; } ErrorReport.ShowErrorMessage(text); } } else { ErrorReport.ShowErrorMessage(AfaStrings.ErrorAddingService); } Mouse.OverrideCursor = null; base.IsEnabled = true; base.Close(); } catch { Mouse.OverrideCursor = null; base.IsEnabled = true; base.Close(); } }
public object ESRI_Map_Add(ResultBuffer rb) { object result; try { if (null == Application.DocumentManager.MdiActiveDocument) { result = null; } else { string assocParam = LspUtil.GetAssocParam(rb, "URL", null); bool assocParam2 = LspUtil.GetAssocParam(rb, "DYNAMIC", true); bool assocParam3 = LspUtil.GetAssocParam(rb, "VISISBLE", true); short num = LspUtil.GetAssocParam(rb, "TRANSPARENCY", 0); Point2d assocParam4 = LspUtil.GetAssocParam(rb, "EXTMIN", Point2d.Origin); Point2d assocParam5 = LspUtil.GetAssocParam(rb, "EXTMAX", Point2d.Origin); string assocParam6 = LspUtil.GetAssocParam(rb, "FORMAT", "PNG24"); if (string.IsNullOrEmpty(assocParam)) { result = null; } else { Mouse.OverrideCursor = Cursors.Wait; AGSMapService aGSMapService = AGSMapService.BuildMapServiceFromURL(null, assocParam); if (aGSMapService != null) { string text = MSCPrj.ReadWKT(Application.DocumentManager.MdiActiveDocument); if (string.IsNullOrEmpty(text)) { text = MSCPrj.AssignWKT(AfaDocData.ActiveDocData.Document, aGSMapService.GetWKT()); } aGSMapService.IsVisible = assocParam3; aGSMapService.ExportOptions.Dynamic = assocParam2; aGSMapService.ExportOptions.Format = assocParam6; if (num == 100) { num = 99; } aGSMapService.ExportOptions.Transparency = byte.Parse(num.ToString()); aGSMapService.ExportOptions.OutputWKT = text; Extent extent = new Extent(assocParam4, assocParam5); if (extent.IsValid()) { extent.SetWKTFrom(text); aGSMapService.ExportOptions.BoundingBox = extent; } if (!aGSMapService.AddService()) { Mouse.OverrideCursor = null; result = null; } else { Mouse.OverrideCursor = null; MSCMapService currentMapService = AfaDocData.ActiveDocData.CurrentMapService; if (!assocParam3) { currentMapService.Visible = false; } result = currentMapService.Name; } } else { result = null; } } } } catch { result = null; } return(result); }