public System.Collections.Generic.List <string> GetImageNames(IResourceManager resManager) { System.Collections.Generic.List <string> list = new System.Collections.Generic.List <string>(); if (resManager == null) { return(list); } EnumResName imageNames = resManager.GetImageNames(); if (imageNames == null) { return(list); } while (imageNames.MoveNext()) { string current = imageNames.Current; list.Add(current); } return(list); }
public bool CopyModelAndImage(MyProgressBar bar, IFeatureDataSet srcFds, IFeatureDataSet tarFds) { bool flag = true; int num = 1; try { tarFds.DataSource.StartEditing(); IResourceManager resourceManager = srcFds as IResourceManager; IResourceManager resourceManager2 = tarFds as IResourceManager; EnumResName modelNames = resourceManager.GetModelNames(); int modelCount = resourceManager.GetModelCount(); while (modelNames.MoveNext()) { if (num % 100 == 0 || num == modelCount) { lock (bar) { if (bar.CallbackCancel) { bar.labelTooltip.Text = StringParser.Parse("${res:View_Cancling}"); bool result = false; return(result); } } } string current = modelNames.Current; Gvitech.CityMaker.Resource.IModel model = resourceManager.GetModel(current); Gvitech.CityMaker.Resource.IModel simplifiedModel = resourceManager.GetSimplifiedModel(current); if (!resourceManager2.ModelExist(current)) { resourceManager2.AddModel(current, model, simplifiedModel); LoggingService.Debug(string.Format("Copy model:{0}", current)); } num++; } System.Runtime.InteropServices.Marshal.ReleaseComObject(modelNames); EnumResName imageNames = resourceManager.GetImageNames(); num = 1; resourceManager.GetImageCount(); while (imageNames.MoveNext()) { if (num % 100 == 0 || num == modelCount) { lock (bar) { if (bar.CallbackCancel) { bar.labelTooltip.Text = StringParser.Parse("${res:View_Cancling}"); bool result = false; return(result); } } } string current2 = imageNames.Current; IImage image = resourceManager.GetImage(current2); if (image != null && !resourceManager2.ImageExist(current2)) { resourceManager2.AddImage(current2, image); LoggingService.Debug(string.Format("Copy model:{0}", current2)); } num++; } System.Runtime.InteropServices.Marshal.ReleaseComObject(imageNames); } catch (System.Runtime.InteropServices.COMException ex) { flag = false; } catch (System.Exception ex2) { XtraMessageBox.Show(ex2.Message); flag = false; } finally { tarFds.DataSource.StopEditing(flag); } return(flag); }