public TResult Read <TResult>(TReaderStream input) where TResult : class, ISpatial { KeyValuePair <SpatialPipeline, IShapeProvider> pair = this.MakeValidatingBuilder(); IShapeProvider provider = pair.Value; this.Read <TResult>(input, pair.Key); if (typeof(Geometry).IsAssignableFrom(typeof(TResult))) { return((TResult)((object)provider.ConstructedGeometry)); } return((TResult)((object)provider.ConstructedGeography)); }
private void uiShapeList_SelectedIndexChanged(object sender, EventArgs e) { if (uiShapeList.SelectedItems.Count == 0) { return; } _currentShape = (IShapeProvider)uiShapeList.SelectedItems[0].Tag; uiShapePropertyGrid.SelectedObject = _currentShape.Variables; _whenShapeChanges(_currentShape.Vertices); }
/// <summary> Parses the input, and produces the object.</summary> /// <returns>The input.</returns> /// <param name="input">The input to be parsed.</param> /// <typeparam name="TResult">The type of object to produce.</typeparam> public TResult Read <TResult>(TReaderStream input) where TResult : class, ISpatial { var trans = MakeValidatingBuilder(); IShapeProvider parsePipelineEnd = trans.Value; Read <TResult>(input, trans.Key); if (typeof(Geometry).IsAssignableFrom(typeof(TResult))) { return((TResult)(object)parsePipelineEnd.ConstructedGeometry); } else { return((TResult)(object)parsePipelineEnd.ConstructedGeography); } }
private void uiShapeList_SelectedIndexChanged(object sender, EventArgs e) { if( uiShapeList.SelectedItems.Count == 0 ) { return ; } _currentShape = (IShapeProvider) uiShapeList.SelectedItems[0].Tag ; uiShapePropertyGrid.SelectedObject = _currentShape.Variables ; _whenShapeChanges( _currentShape.Vertices ) ; }