/// <summary> /// Load a project /// </summary> /// <param name="path">path of file</param> /// <param name="fileName">file name</param> /// <param name="notCurrent">do not set the current project</param> /// <returns>project object</returns> public static Project Load(string path, string fileName, bool notCurrent = false) { CadreModel.ReinitCounter(0); FileInfo fi = new FileInfo(Path.Combine(path, fileName)); Marshalling.PersistentDataObject obj = null; Load(fi, out obj); Project pn = obj as Project; if (pn == null) { throw new FormatException(String.Format(Localization.Strings.GetString("ExceptionProjectNotLoaded"), fileName)); } if (!notCurrent) { pn.openProject = Project.CurrentProject.openProject; Project.CurrentProject = pn; } return(pn); }
/// <summary> /// Load a project /// </summary> /// <param name="path">path of file</param> /// <param name="fileName">file name</param> /// <param name="del">delegate to open project</param> /// <returns>project object</returns> public static Project Load(string path, string fileName, OpenProject del) { FileInfo fi = new FileInfo(Path.Combine(path, fileName)); Marshalling.PersistentDataObject obj = null; Load(fi, out obj); Project pn = obj as Project; if (pn == null) { throw new FormatException(String.Format(Localization.Strings.GetString("ExceptionProjectNotLoaded"), fileName)); } CadreModel.ReinitCounter(pn.CadreModelCounter); Attributes.uniqueId.Counter = pn.UniqueId; Attributes.uniqueClass.Counter = pn.UniqueClass; pn.openProject = del; Project.CurrentProject = pn; pn.ReloadProject(); return(pn); }