/// <summary> /// This method is run when the 'New' button is clicked. The method opens /// a new spreadsheet panel in a new window. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <citation>Referenced from PS6 Skeleton 'Demo' class</citation> private void newMenuItem_Click(object sender, EventArgs e) { SpreadsheetForm newForm = new SpreadsheetForm(); int count = SpreadsheetApplicationContext.getAppContext().RunForm(newForm); newForm.Text = "Spreadsheet" + count; // iterate the number in the spreadsheet title }
/// <summary> /// Creates and displays a new spreadsheet in the current application context. /// </summary> internal void OpenSpreadsheet() { // Create a spreadsheet SpreadsheetForm spreadsheet = new SpreadsheetForm(); OpenSpreadsheets++; // Add a listener for when the spreadsheet form is closed. // This also shuts down the application when all spreadsheets are closed. spreadsheet.FormClosed += (o, e) => { if (--OpenSpreadsheets <= 0) { ExitThread(); } }; // Show the new spreadsheet. spreadsheet.Show(); }