//Update the painter when correspounding single's data changed private void GEMSSingle_DataChanged(object sender, GEMSSingle.SingleDataChangedEventArgs e) { if (sender is GEMSSingle && (sender as GEMSSingle) == source) { switch (e.changedType) { case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.DisplayStyleChanged: { //Re-create all the material CreateMaterial(); } break; case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.EOChanged: { //Re-create all the material CreateMaterial(); //Re-create the eo single model if (source.EOSymbolModel != null) { eoSymbolRender = new SingleEOSymbolRender(d3d, source.EOSymbolModel); eoSymbolRender.Initialize( ); } else { eoSymbolRender.Dispose( ); eoSymbolRender = null; } } break; case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.GeometryChanged: { //Re-create the primaryModelRender if (source.PrimaryModel != null) { primaryModelRender = GeometryRender.Create(d3d, source.PrimaryModel); } if (source.EOSymbolModel != null) { eoSymbolRender = new SingleEOSymbolRender(d3d, source.EOSymbolModel); eoSymbolRender.Initialize( ); } } break; default: break; } } else { return; } }
private void OnGEMSSingleDataChanged(object sender, GEMSSingle.SingleDataChangedEventArgs e) { //rebinding the data propertyGrid.SelectedObject = m_project.CurrentSelectedObject; }