private void saveProjectXMLToolStripMenuItem_Click(object sender, EventArgs e) { if (tabControl1.SelectedTab != null) { DeviceView dv = (DeviceView)tabControl1.SelectedTab.Controls[0]; SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "Canopen Node XML (*.xml)|*.xml"; sfd.InitialDirectory = Path.GetDirectoryName(dv.eds.xmlfilename); sfd.RestoreDirectory = true; sfd.FileName = Path.GetFileNameWithoutExtension(dv.eds.xmlfilename); if (sfd.ShowDialog() == DialogResult.OK) { //dv.eds.savefile(sfd.FileName); Bridge b = new Bridge(); Device d = b.convert(dv.eds); CanOpenXML coxml = new CanOpenXML(); coxml.dev = d; coxml.writeXML(sfd.FileName); dv.eds.xmlfilename = sfd.FileName; dv.eds.dirty = false; } } }
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 void saveExportAllToolStripMenuItem_Click(object sender, EventArgs e) { //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; } if (dv.eds.xmlfilename == null || dv.eds.xmlfilename == "") { MessageBox.Show("Please manually save as XML at least once"); return; } if (dv.eds.fi.exportFolder == null || dv.eds.fi.exportFolder == "") { MessageBox.Show("Please expot CO_OD.c/h at least 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); //export EDS dv.eds.savefile(dv.eds.edsfilename); //export CO_OD.c and CO_OD.h CanOpenNodeExporter cone = new CanOpenNodeExporter(); cone.export(dv.eds.fi.exportFolder, dv.eds); if (Warnings.warning_list.Count != 0) { WarningsFrm frm = new WarningsFrm(); frm.ShowDialog(); } } }
private static void openXMLfile(string path, string outpath) { CanOpenXML coxml = new CanOpenXML(); coxml.readXML(path); Bridge b = new Bridge(); eds = b.convert(coxml.dev); eds.xmlfilename = path; exportCOOD(outpath); }
private void openXMLfile(string path) { try { EDSsharp eds; Device dev; //one day this will be multiple devices CanOpenXML coxml = new CanOpenXML(); coxml.readXML(path); Bridge b = new Bridge(); eds = b.convert(coxml.dev); eds.xmlfilename = path; dev = coxml.dev; 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(); } }
void ProfileAddClick(object sender, EventArgs e) { if (tabControl1.SelectedTab != null) { DeviceView dv = (DeviceView)tabControl1.SelectedTab.Controls[0]; ToolStripMenuItem item = (ToolStripMenuItem)sender; string filename = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + Path.DirectorySeparatorChar + "Profiles" + Path.DirectorySeparatorChar + item.Name; CanOpenXML coxml = new CanOpenXML(); coxml.readXML(filename); Bridge b = new Bridge(); EDSsharp eds; Device dev; //one day this will be multiple devices eds = b.convert(coxml.dev); dev = coxml.dev; foreach (KeyValuePair <UInt16, ODentry> kvp in eds.ods) { if (!dv.eds.ods.ContainsKey(kvp.Key)) { dv.eds.ods.Add(kvp.Key, kvp.Value); } } dv.dispatch_updateOD(); dv.dispatch_updatePDOinfo(); dv.eds.updatePDOcount(); dv.dispatch_updatedevice(); } }
private void loadeds(string filename) { if (filename == null || filename == "") { return; } bool isdcf = false; switch (Path.GetExtension(filename).ToLower()) { case ".xml": { CanOpenXML coxml = new CanOpenXML(); coxml.readXML(filename); Bridge b = new Bridge(); eds = b.convert(coxml.dev); eds.xmlfilename = filename; } break; case ".dcf": { isdcf = true; eds = new EDSsharp(); eds.Loadfile(filename); } break; case ".eds": { eds = new EDSsharp(); eds.Loadfile(filename); } break; } textBox_edsfilename.Text = eds.di.ProductName; //if (eds.di.concreteNodeId >= numericUpDown_node.Minimum && eds.di.concreteNodeId <= numericUpDown_node.Maximum) // numericUpDown_node.Value = eds.di.concreteNodeId; listView1.BeginUpdate(); if (!isdcf) { listView1.Items.Clear(); } // StorageLocation loc = StorageLocation foreach (ODentry tod in eds.ods.Values) { if (comboBoxtype.SelectedItem.ToString() != "ALL") { if (comboBoxtype.SelectedItem.ToString() == "EEPROM" && (tod.StorageLocation.ToUpper() != "EEPROM")) { continue; } if (comboBoxtype.SelectedItem.ToString() == "ROM" && (tod.StorageLocation.ToUpper() != "ROM")) { continue; } if (comboBoxtype.SelectedItem.ToString() == "RAM" && (tod.StorageLocation.ToUpper() != "RAM")) { continue; } } if (tod.Disabled == true) { continue; } if (tod.Index < 0x2000 && checkBox_useronly.Checked == true) { continue; } if (tod.objecttype == ObjectType.ARRAY || tod.objecttype == ObjectType.REC) { foreach (ODentry subod in tod.subobjects.Values) { if (subod.Subindex == 0) { continue; } addtolist(subod, isdcf); } continue; } addtolist(tod, isdcf); } listView1.EndUpdate(); this.filename = filename; addtoMRU(filename); }
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); //export EDS dv.eds.savefile(dv.eds.edsfilename); //export CO_OD.c and CO_OD.h CanOpenNodeExporter cone = new CanOpenNodeExporter(); try { cone.export(dv.eds.fi.exportFolder, 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(); } } }