====== Map Suite Web Edition Release Change Log Version 3.1.0 ====== Release date: 1/22/2009 A large number of API changes and improvements have been introduced in this version, including the following breaking changes: *Map.GetFullExtent method has been removed *Map.Mode property has been removed *Map.EditLayer has been changed to Map.EditOverlay *The HighlightOverlay class has been changed to HighlightFeatureOverlay class *HighlightOverlayClickEventArgs has been renamed to HighlightFeatureOverlayClickEventArgs *HighlightOverlayStyle has been changed to FeatureOverlayStyle *Map.ZoomPercentage property has been removed *FeatureMarkerOverlay has been renamed to FeatureSourceMarkerOverlay *The type of Features on the InMemoryMarkerOverlay has been changed from Dictionary to GeoCollection *WmsOverlay.Projection has been removed *ScreenOffsetX and ScreenOffsetY has been changed to OffsetXInPixels and OffsetYInPixels on the Popup class *ClickTarget property on the ContextMenuItemClickEventArgs class has been removed Please see the attached Word document for a complete list of all breaking changes, and examples of how you should migrate your code to comply with the revised API. ^ Assembly ^ Members Added ^ Members Removed ^ Breaking Changes ^ Percent Churn ^ | **webedition (1142)** | 172 added | 0 removed | 89 breaking | 15.1% churn | ====Breaking Changes since Version 3.0.131==== This topic discusses the changes made to Map Suite Web Edition between version 3.0.131 (beta 2) and the latest release, version 3.1.0 Final. The changes discussed in this article are those that might cause your older Web Edition applications to fail or behave differently. **Contents:** *[[#Map.GetFullExtent method is removed|Map.GetFullExtent method is removed]] *[[#Map.Mode property is removed|Map.Mode property is removed]] *[[#Map.Mode property is removed|Map.EditLayer is changed to Map.EditOverlay]] *[[#The HighlightOverlay class is changed to HighlightFeatureOverlay class|The HighlightOverlay class is changed to HighlightFeatureOverlay class]] *[[#HighlightOverlayClickEventArgs is renamed to HighlightFeatureOverlayClickEventArgs|HighlightOverlayClickEventArgs is renamed to HighlightFeatureOverlayClickEventArgs]] *[[#HighlightOverlayStyle is changed to FeatureOverlayStyle|HighlightOverlayStyle is changed to FeatureOverlayStyle]] *[[#Map.ZoomPercentage property is removed|Map.ZoomPercentage property is removed]] *[[#FeatureMarkerOverlay is renamed to FeatureSourceMarkerOverlay|FeatureMarkerOverlay is renamed to FeatureSourceMarkerOverlay]] *[[#The type of Features on the InMemoryMarkerOverlay is changed from Dictionary to GeoCollection|The type of Features on the InMemoryMarkerOverlay is changed from Dictionary to GeoCollection]] *[[#WmsOverlay.Projection is removed|WmsOverlay.Projection is removed]] *[[#ScreenOffsetX and ScreenOffsetY are changed to OffsetXInPixels and OffsetYInPixels on the Popup class|ScreenOffsetX and ScreenOffsetY are changed to OffsetXInPixels and OffsetYInPixels on the Popup class]] *[[#ClickTarget property on the ContextMenuItemClickEventArgs class is removed |ClickTarget property on the ContextMenuItemClickEventArgs class is removed]] ===Map.GetFullExtent method is removed=== **Description:** In version 3.1.0, the Map.GetFullExtent method has been removed. If you really want to know the “full extent” of the map, you can call the LayerOverlay.GetBoundingBox method of each LayerOverlay of the map and merge them. ===Map.Mode property is removed=== **Description:** In version 3.1.0, the Map.Mode property has been removed. The Map.EditOverlay is responsible for anything related to shape editing. Please use the Map.EditOverlay.TrackMode instead. Note that Mode.Normal is replaced by the TrackMode.None, which means the editing mode is disabled. **In Version 3.0.131: ** Map1.Mode = Mode.Normal; Map1.Mode = Mode.TrackPoint; Map1.Mode = Mode.TrackLine; Map1.Mode = Mode.TrackPolygon; Map1.Mode = Mode.TrackRectangle; Map1.Mode = Mode.TrackSquare; Map1.Mode = Mode.TrackCircle; Map1.Mode = Mode.TrackEllipse; Map1.Mode = Mode.EditShape; **In Version 3.1.0: ** Map1.EditOverlay.TrackMode = TrackMode.None; Map1.EditOverlay.TrackMode = TrackMode.Point; Map1.EditOverlay.TrackMode = TrackMode.Line; Map1.EditOverlay.TrackMode = TrackMode.Polygon; Map1.EditOverlay.TrackMode = TrackMode.Rectangle; Map1.EditOverlay.TrackMode = TrackMode.Square; Map1.EditOverlay.TrackMode = TrackMode.Circle; Map1.EditOverlay.TrackMode = TrackMode.Ellipse; Map1.EditOverlay.TrackMode = TrackMode.Edit; ===Map.EditLayer is changed to Map.EditOverlay=== **Description:** In version 3.1.0, the architecture of the editing system has changed. It is now the Map.EditOverlay that takes responsibility for shape editing. Map.EditOverlay has the Features collection, whose features are serialized to the client and drawn. It has the Style property that determines how those features are drawn. Its TrackMode property determines whether you can draw or edit shapes, and the EditSettings property allows you to control how to edit shapes. **In Version 3.0.131: ** Map1.EditLayer.InternalFeatures.Add(feature.Id, feature); **In Version 3.1.0: ** Map1.EditOverlay.Features.Add(feature.Id, feature); Map1.EditOverlay.Style.FillColor = GeoColor.StandardColors.LightGreen; Map1.EditOverlay.TrackMode = TrackMode.Edit; Map1.EditOverlay.EditSettings.IsRotatable = false; Map1.EditOverlay.EditSettings.IsDraggable = false; Map1.EditOverlay.EditSettings.IsResizable = false; Map1.EditOverlay.EditSettings.IsReshapable = true; ===The HighlightOverlay class is changed to HighlightFeatureOverlay class=== **Description:** In version 3.1.0, the HighlightOverlay class has changed to the HighlightFeatureOverlay class, which is derived from FeatureOverlay. The Map.HighlightOverlay is a real overlay object now. It has some property changes – for example, the HoverStyle is now changed to HighlightStyle. **In Version 3.0.131: ** Map1.HighlightOverlay.Style = new FeatureOverlayStyle(); Map1.HighlightOverlay.HoverStyle = new HighlightOverlayStyle(GeoColor.FromArgb(120, GeoColor.StandardColors.OrangeRed), GeoColor.StandardColors.DarkGreen, 1); In Version 3.1.0: Map1.HighlightOverlay.Style = new FeatureOverlayStyle(); Map1.HighlightOverlay.HighlightStyle.FillColor = GeoColor.FromArgb(120, GeoColor.StandardColors.OrangeRed); Map1.HighlightOverlay.HighlightStyle.OutlineColor = GeoColor.StandardColors.DarkGreen; Map1.HighlightOverlay.HighlightStyle.OutlineWidth = 1; ===HighlightOverlayClickEventArgs is renamed to HighlightFeatureOverlayClickEventArgs=== **Description:** In version 3.1.0, the HighlightOverlayClickEventArgs class has been renamed to HighlightFeatureOverlayClickEventArgs. In Version 3.0.131: Map1.HighlightOverlay.Click += new EventHandler(HighlightOverlay_Click); In Version 3.1.0: Map1.HighlightOverlay.Click += new EventHandler(HighlightOverlay_Click); ===HighlightOverlayStyle is changed to FeatureOverlayStyle=== **Description:** In version 3.1.0, the HighlightOverlayStyle has been renamed to FeatureOverlayStyle, which determines how the features are drawn at the client side. The FeatureOverlayStyle is used by both EditFeatureOverlay and HighlightFeatureOverlay classes. In Version 3.0.131: HighlightOverlayStyle style = new HighlightOverlayStyle(); HighlightOverlayStyle hoverStyle = new HighlightOverlayStyle(); In Version 3.1.0: FeatureOverlayStyle style = new FeatureOverlayStyle(); FeatureOverlayStyle hoverStyle = new FeatureOverlayStyle(); ===Map.ZoomPercentage property is removed=== **Description:** In version 3.1.0, the Map.ZoomPercentage has been removed. Now the Map.ZoomIn and Map.ZoomOut methods will zoom the map by one zoomlevel, instead of by percentage. ===FeatureMarkerOverlay is renamed to FeatureSourceMarkerOverlay=== **Description:** In version 3.1.0, the FeatureMarkerOverlay has been renamed to the FeatureSourceMarkerOverlay, which makes more sense. In Version 3.0.131: FeatureMarkerOverlay markerOverlay = new FeatureMarkerOverlay("Markers"); markerOverlay.FeatureSource = new ShapeFileFeatureSource(MapPath("~/SampleData/USA/cities_a.shp")); In Version 3.1.0: FeatureSourceMarkerOverlay markerOverlay = new FeatureSourceMarkerOverlay("Markers"); markerOverlay.FeatureSource = new ShapeFileFeatureSource(MapPath("~/SampleData/USA/cities_a.shp")); ===The type of Features on the InMemoryMarkerOverlay is changed from Dictionary to GeoCollection=== **Description:** In version 3.1.0, the InMemoryMarkerOverlay.Features has been changed from Dictionary to GeoCollection. Now you can use foreach to loop through the features directly. In Version 3.0.131: foreach (string key in Map1.MarkerOverlay.Features.Keys) { Feature feature = Map1.MarkerOverlay.Features[[key]]; } In Version 3.1.0: foreach (Feature feature in Map1.MarkerOverlay.Features) { } ===WmsOverlay.Projection is removed=== **Description:** In version 3.1.0, the WmsOverlay.Projection property has been replaced by the WmsOverlay.GetBaseEpsgProjection and WmsOverlay.SetBaseEpsgProjection methods. In Version 3.0.131: WmsOverlay wms = new WmsOverlay("WMS Layer"); wms.Projection = "EPSG:900913"; In Version 3.1.0: WmsOverlay wms = new WmsOverlay("WMS Layer"); wms.SetBaseEpsgProjection("EPSG:900913"); ===ScreenOffsetX and ScreenOffsetY are changed to OffsetXInPixels and OffsetYInPixels on the Popup class=== **Description:** In version 3.1.0, the ScreenOffsetX and ScreenOffsetY properties on the CloudPopup and CustomPopup classes has been renamed to OffsetXInPixels and OffsetYInPixels. In Version 3.0.131: CloudPopup samplePopup = new CloudPopup("samplePopup", position, contentHtml.ToString(), 400, 290); samplePopup.ScreenOffsetX = 10; samplePopup.ScreenOffsetY = 10; Map1.Popups.Add(samplePopup); In Version 3.1.0: CloudPopup samplePopup = new CloudPopup("samplePopup", position, contentHtml.ToString(), 400, 290); samplePopup.OffsetXInPixels = 10; samplePopup.OffsetYInPixels = 10; Map1.Popups.Add(samplePopup); ===ClickTarget property on the ContextMenuItemClickEventArgs class is removed=== **Description:** In version 3.1.0, the ClickTarget property on the ContextMenuItemClickEventArgs class has been removed.