void LoadRecentFile(object sender, EventArgs e) { if (sender is ToolStripMenuItem == false) { return; } ToolStripMenuItem tsmi = sender as ToolStripMenuItem; if (tsmi == null || tsmi.Tag is int == false || (int)tsmi.Tag < 0 || (int)tsmi.Tag > m_RecentFiles.Count - 1) { return; } string fileName = m_RecentFiles[(int)tsmi.Tag]; ISaveableDocument editor = null; switch (m_RecentFileTypes[fileName]) { case FileSelectorFilters.Circuits: editor = CreateNewEditorForm(); break; case FileSelectorFilters.Symbols: editor = CreateNewSymbolForm(); break; } if (editor.LoadDocument(fileName)) { ShowChildForm((DockContent)editor); HandleRecentFiles(fileName, m_RecentFileTypes[fileName]); } }
public DockContent ExecuteOpenFileDialog() { try { FileSelector fileSelector = new FileSelector(FileSelectorFilters.AnyFile | FileSelectorFilters.Circuits | FileSelectorFilters.Symbols); if (fileSelector.ExecuteOpenDialog()) { ISaveableDocument editor = null; switch (fileSelector.UsedFilter) { case FileSelectorFilters.Circuits: editor = CreateNewEditorForm(); break; case FileSelectorFilters.Symbols: editor = CreateNewSymbolForm(); break; } if (editor.LoadDocument(fileSelector.FileName)) { HandleRecentFiles(fileSelector.FileName, fileSelector.UsedFilter); return(editor as DockContent); } else { (editor as Form).Dispose(); } } } catch (Exception ex) { //TODO: Exception Handling MessageBox.Show(ex.Message + "\n-----\n" + ex.StackTrace, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Stop); } return(null); }