/// <summary> /// Create map tools for barriers. /// </summary> private void _CreateBarrierTools() { _pointTool = new BarrierPointTool(); _pointTool.OnComplete += new EventHandler(_PointToolOnComplete); _polygonTool = new BarrierPolygonTool(); _polygonTool.OnComplete += new EventHandler(_PolygonToolOnComplete); _polylineTool = new BarrierPolylineTool(); _polylineTool.OnComplete += new EventHandler(_PolylineToolOnComplete); // Add tools. List<IMapTool> tools = new List<IMapTool>(); tools.Add(_pointTool); tools.Add(_polylineTool); tools.Add(_polygonTool); _mapCtrl.AddTools(tools.ToArray(), _CanActivateBarrierTool); }
/// <summary> /// Create RegionsPage. /// </summary> /// <param name="mapCtrl">Map from parent page.</param> /// <param name="dataGridControl">Grid from parent page.</param> /// <param name="parentLayer">Layer, that contains regions.</param> /// <param name="type">Semantic type of regions. Barrier or Zone.</param> /// <param name="layoutRoot">Parent page layout root.</param> /// <param name="mapBorder">Container element for map.</param> public RegionsPage(MapControl mapCtrl, DataGridControlEx dataGridControl, ObjectLayer parentLayer, Type type, Grid layoutRoot, Border mapBorder) { _mapCtrl = mapCtrl; _mapCtrl.CanSelectCallback = _CanSelect; _mapCtrl.StartEditRegionCallback = _EditStarted; _mapCtrl.EndEditRegionCallback = _EditEnded; _dataGridControl = dataGridControl; _parentLayer = parentLayer; _type = type; if (_type == typeof(Zone)) { _polygonTool = new ZonePolygonTool(); _polygonTool.OnComplete += new EventHandler(_PolygonToolOnComplete); _mapCtrl.AddTool(_polygonTool, _CanActivateZonePolygonTool); } else if (_type == typeof(Barrier)) { _CreateBarrierTools(); } else Debug.Assert(false); _gridAutoFitHelper = new GridAutoFitHelper(dataGridControl, layoutRoot, mapBorder); }