private void btnAirmassResult_ItemClick(object sender, ItemClickEventArgs e)
{
DevExpress.XtraBars.Docking.DockPanel dockPanel;
if (CheckAllTablesAvailable())
{
dockManager1.BeginUpdate();
try
{
ctrlAirmassResult airmassResult = new ctrlAirmassResult();
airmassResult.Dock = DockStyle.Fill;
dockPanel = dockManager1.AddPanel(DevExpress.XtraBars.Docking.DockingStyle.Right);
dockPanel.Tag = Tools.Instance.m_currentfile;
dockPanel.ClosedPanel += new DevExpress.XtraBars.Docking.DockPanelEventHandler(dockPanel_ClosedPanel);
dockPanel.Text = "Airmass result viewer: " + Path.GetFileName(Tools.Instance.m_currentfile);
dockPanel.Width = 800;
airmassResult.onStartTableViewer += new ctrlAirmassResult.StartTableViewer(airmassResult_onStartTableViewer);
airmassResult.onClose += new ctrlAirmassResult.ViewerClose(airmassResult_onClose);
airmassResult.Currentfile = Tools.Instance.m_currentfile;
airmassResult.Symbols = Tools.Instance.m_symbols;
airmassResult.Currentfile_size = Tools.Instance.m_currentfilelength;
IEDCFileParser parser = Tools.Instance.GetParserForFile(Tools.Instance.m_currentfile, false);
byte[] allBytes = File.ReadAllBytes(Tools.Instance.m_currentfile);
string additionalInfo = parser.ExtractInfo(allBytes);
//GetNumberOfCylinders
string bpn = parser.ExtractBoschPartnumber(allBytes);
partNumberConverter pnc = new partNumberConverter();
ECUInfo info = pnc.ConvertPartnumber(bpn, allBytes.Length);
airmassResult.NumberCylinders = pnc.GetNumberOfCylinders(info.EngineType, additionalInfo);
airmassResult.ECUType = info.EcuType;
airmassResult.Calculate(Tools.Instance.m_currentfile, Tools.Instance.m_symbols);
dockPanel.Controls.Add(airmassResult);
}
catch (Exception newdockE)
{
Console.WriteLine(newdockE.Message);
}
dockManager1.EndUpdate();
}
}