/// <summary> /// Execution of the Action. /// </summary> /// <returns>True: Execution of the Action was successful</returns> public bool Execute(ActionCallingContext ctx) { // TODO: // Add code Data.MvProject mvProject = null; if (Data.MvProject.Open(ref mvProject)) { UI.MainForm form = UI.MainForm.GetSingleton(); form.MvProject = mvProject; if (form.Visible) { form.BringToFront(); } else { form.Show(new Util.WindowWrapper(Process.GetCurrentProcess().MainWindowHandle)); } return(true); } else { return(true); } }
public static bool Open(ref MvProject project) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.RestoreDirectory = true; openFileDialog.Title = "프로젝트 열기"; openFileDialog.Filter = "Xml Files (*.xml)|*.xml*|All Files (*.*)|*.*"; openFileDialog.DefaultExt = "xml"; openFileDialog.FilterIndex = 0; openFileDialog.RestoreDirectory = true; openFileDialog.InitialDirectory = PathMap.SubstitutePath("$EPLAN_DATA"); PathInfo p = new PathInfo(); openFileDialog.InitialDirectory = p.Projects; if (openFileDialog.ShowDialog() == DialogResult.OK) { if (File.Exists(openFileDialog.FileName)) { Environment.CurrentDirectory = Path.GetDirectoryName(openFileDialog.FileName); return(Open(openFileDialog.FileName, ref project)); } else { MessageBox.Show("프로젝트 파일의 형식이 다릅니다."); return(false); } } else { MessageBox.Show("취소되었습니다."); return(false); } }
public static bool Save(MvProject project) { if (project.XmlFilePath != null) { //Util.VersionedFileName fileName = new Util.VersionedFileName(project.XmlFilePath); return(WriteToXml(project, project.XmlFilePath)); } else { return(SaveAs(project)); } }
public static bool Open(string filePath, ref MvProject project) { if (File.Exists(filePath)) { if (!ReadXml(filePath, ref project)) { return(false); } return(true); } else { MessageBox.Show("File not found: " + filePath); return(false); } }
private static bool ReadXml(string filePath, ref MvProject project) { using (FileStream fs = new FileStream(filePath, FileMode.Open)) { try { XmlSerializer xs = new XmlSerializer(typeof(MvProject), "MvProject"); project = xs.Deserialize(fs) as MvProject; return(true); } catch (Exception ex) { MessageBox.Show(ex.Message + "\n" + ex.StackTrace); return(false); } } }
public static bool SaveAs(MvProject project) { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = "Xml Files (*.xml)|*.xml*|All Files (*.*)|*.*"; saveFileDialog.InitialDirectory = Path.GetDirectoryName(project.XmlFilePath); saveFileDialog.DefaultExt = ".xml"; if (saveFileDialog.ShowDialog() == DialogResult.OK) { //Util.VersionedFileName fileName = new Util.VersionedFileName(saveFileDialog.FileName); //project.FileName = Path.GetFileName(saveFileDialog.FileName); return(WriteToXml(project, project.XmlFilePath)); } else { return(false); } }
private static bool WriteToXml(MvProject project, string filePath) { using (FileStream fs = new FileStream(filePath, FileMode.Create)) { try { XmlSerializer xs = new XmlSerializer(typeof(MvProject), "MvProject"); xs.Serialize(fs, project); fs.Close(); MessageBox.Show("Saved To: " + filePath); return(true); } catch (Exception e) { MessageBox.Show("mv_design: " + e.Message + "\n" + e.StackTrace); return(false); } } }
private MvGroup(MvProject mvProject) { this.MvProject = mvProject; }