private void openXDDNetworkfile(string file) { CanOpenXDD xdd = new CanOpenXDD(); List <EDSsharp> edss = xdd.readMultiXML(file); if (edss == null) { return; } foreach (EDSsharp eds in edss) { tabControl1.TabPages.Add(eds.di.ProductName); DeviceView device = new DeviceView(); device.eds = eds; tabControl1.TabPages[tabControl1.TabPages.Count - 1].Controls.Add(device); device.Dock = DockStyle.Fill; network.Add(eds); eds.OnDataDirty += Eds_onDataDirty; device.dispatch_updateOD(); } addtoMRU(file); networkfilename = file; }
private void saveNetworkXmlToolStripMenuItem_Click(object sender, EventArgs e) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "CANopen Network XDD (*.nxdd)|*.nxdd|CANopen network XML (*.nxml)|*.nxml"; sfd.InitialDirectory = Path.GetDirectoryName(networkfilename); sfd.RestoreDirectory = true; sfd.FileName = Path.GetFileNameWithoutExtension(networkfilename); if (sfd.ShowDialog() == DialogResult.OK) { switch (Path.GetExtension(sfd.FileName).ToLower()) { case ".nxml": NetworkXML net = new NetworkXML(); net.writeXML(sfd.FileName, network); addtoMRU(sfd.FileName); break; case ".nxdd": CanOpenXDD xdd = new CanOpenXDD(); xdd.writeMultiXML(sfd.FileName, network); break; } } }
void dosave(DeviceView dv, string FileName) { switch (Path.GetExtension(FileName)) { case ".eds": dv.eds.Savefile(FileName, InfoSection.Filetype.File_EDS); dv.eds.edsfilename = FileName; break; case ".dcf": dv.eds.Savefile(FileName, InfoSection.Filetype.File_DCF); dv.eds.dcffilename = FileName; break; case ".xml": Bridge b = new Bridge(); Device d = b.convert(dv.eds); CanOpenXML coxml = new CanOpenXML(); coxml.dev = d; coxml.writeXML(FileName); dv.eds.xmlfilename = FileName; break; case ".xdd": CanOpenXDD coxdd = new CanOpenXDD(); coxdd.writeXML(FileName, dv.eds); dv.eds.xddfilename = FileName; dv.eds.Dirty = false; break; } dv.dispatch_updateOD(); }
private static void openXDDfile(string path, string outpath) { CanOpenXDD coxml = new CanOpenXDD(); eds = coxml.readXML(path); if (eds == null) { return; } eds.xddfilename = path; exportCOOD(outpath); }
private void openXDDfile(string path) { try { EDSsharp eds; //fixme //ISO15745ProfileContainer devs; //one day this will be multiple devices CanOpenXDD coxml = new CanOpenXDD(); eds = coxml.readXML(path); if (eds == null) { return; } eds.xddfilename = path; tabControl1.TabPages.Add(eds.di.ProductName); DeviceView device = new DeviceView(); eds.OnDataDirty += Eds_onDataDirty; device.eds = eds; tabControl1.TabPages[tabControl1.TabPages.Count - 1].Controls.Add(device); device.Dock = DockStyle.Fill; device.dispatch_updateOD(); network.Add(eds); } catch (Exception ex) { Warnings.warning_list.Add(ex.ToString()); } if (Warnings.warning_list.Count != 0) { WarningsFrm frm = new WarningsFrm(); frm.ShowDialog(); } }
private void saveExportAllToolStripMenuItem_Click(object sender, EventArgs e) { string temp; //Attempt to save EDS,XML and export the CANopen dictionary if (tabControl1.SelectedTab != null) { DeviceView dv = (DeviceView)tabControl1.SelectedTab.Controls[0]; SaveFileDialog sfd = new SaveFileDialog(); //save eds xml and export CO_OD.c and CO_OD.h if (dv.eds.edsfilename == null || dv.eds.edsfilename == "") { MessageBox.Show("Please manually save as EDS at least once"); return; } temp = Path.GetDirectoryName(dv.eds.edsfilename); if (Directory.Exists(temp) != true) { MessageBox.Show("File path was removed. Please manually save as EDS once"); return; } if (dv.eds.xmlfilename == null || dv.eds.xmlfilename == "") { MessageBox.Show("Please manually save as XML at least once"); return; } temp = Path.GetDirectoryName(dv.eds.xmlfilename); if (Directory.Exists(temp) != true) { MessageBox.Show("File path was removed. Please manually save as XML once"); return; } if (dv.eds.fi.exportFolder == null || dv.eds.fi.exportFolder == "") { MessageBox.Show("Please export CO_OD.c/h at least once"); return; } if (Directory.Exists(dv.eds.fi.exportFolder) != true) { MessageBox.Show("File path was removed. Please export CO_OD.c/h once"); return; } //export XML Bridge b = new Bridge(); Device d = b.convert(dv.eds); CanOpenXML coxml = new CanOpenXML(); coxml.dev = d; coxml.writeXML(dv.eds.xmlfilename); if (dv.eds.xddfilename != null) { CanOpenXDD coxdd = new CanOpenXDD(); coxdd.writeXML(dv.eds.xddfilename, dv.eds); } //export EDS dv.eds.Savefile(dv.eds.edsfilename, InfoSection.Filetype.File_EDS); //export CO_OD.c and CO_OD.h CanOpenNodeExporter cone = new CanOpenNodeExporter(); try { cone.export(dv.eds.fi.exportFolder, "", this.gitVersion, dv.eds); } catch (Exception ex) { MessageBox.Show("Export failed, error message:\n" + ex.ToString()); return; } dv.eds.Dirty = false; if (Warnings.warning_list.Count != 0) { WarningsFrm frm = new WarningsFrm(); frm.ShowDialog(); } } }