/// <summary> Executes the "active" view sheet demo operation. </summary> /// /// <param name="sheetName"> Name of the ViewSheet to set as the active sheet. </param> /// /// <returns> true if it succeeds, false if it fails. </returns> private bool RunActiveViewSheetDemo(string sheetName) { // We use 'sheetIndex" later on to set the *active* sheet. var sheetIndex = ViewSheets.GetViewSheet(sheetName); if (sheetIndex == -1 && !this.ShowMessage($"Could not find sheet {sheetName}.", LocalizationStrings.Title, true)) { return(false); } // If ViewSheets are enabled, this should not fail! // Get the current active sheet var currentSheetIndex = ViewSheets.GetActiveViewSheet(); // Get the name of the *active* sheet var currentSheetName = ViewSheets.GetViewSheetName(currentSheetIndex); this.ShowMessage($"{currentSheetName} at sheet index {currentSheetIndex} is the current active sheet.", LocalizationStrings.Title); // Now set the requested sheet to be the *active* sheet. if (ViewSheets.SetActiveViewSheet(sheetIndex)) { this.ShowMessage($"{sheetName} at sheet index {sheetIndex} is the new active sheet.", LocalizationStrings.Title); } return(true); }
/// <summary> Shows the VisibleLevel data in the active ViewSheet. </summary> private void ShowLevels() { var sheetIndex = ViewSheets.GetActiveViewSheet(); var name = ViewSheets.GetViewSheetName(sheetIndex); var data = new ViewSheets.ViewSheetData(); if (ViewSheets.GetViewSheetData(sheetIndex, ref data)) { var sb = new StringBuilder(name); foreach (var level in data.VisibleLevels) { sb.AppendFormat("\nLevel {0}", level); } MessageBox.Show(sb.ToString(), LocalizationStrings.Title, MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(LocalizationStrings.FailedToGetSheetData, LocalizationStrings.Title, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
/// <summary> Executes the delete view sheet demo operation. </summary> /// /// <param name="sheetIndex"> The sheetIndex of the ViewSheet to delete. </param> /// /// <returns> true if it succeeds, false if it fails. </returns> private bool RunDeleteViewSheetDemo(int sheetIndex) { var sheetName = ViewSheets.GetViewSheetName(sheetIndex); if (string.IsNullOrEmpty(sheetName) && !this.ShowMessage($"Could not find a sheet at sheet index {sheetIndex}.", LocalizationStrings.Title, true)) { return(false); } this.ShowMessage($"We'll now delete {sheetName} at sheet index {sheetIndex}.", LocalizationStrings.Title); return(ViewSheets.DeleteViewSheet(sheetIndex)); }
/// <summary> Executes the create view sheet demo operation. </summary> /// /// <param name="sheetName"> Name of the ViewSheet to create. </param> /// /// <returns> true if it succeeds, false if it fails. </returns> private bool RunCreateViewSheetDemo(string sheetName) { this.ShowMessage(LocalizationStrings.CreateViewSheets, LocalizationStrings.Title); // Now we'll create some new ViewSheets... // First a ViewSheet with a system generated name. // If ViewSheets are enabled, this really shouldn't fail. if (ViewSheets.CreateViewSheet()) { // Now a ViewSheet with a name of our choosing. // If we specify an invalid name (e.g. one that's already used) this could return false. var result = ViewSheets.CreateViewSheet(sheetName); if (!result && !this.ShowMessage(LocalizationStrings.FailedCreateViewSheet, LocalizationStrings.Title, true)) { return(false); } // Now we'll determine the sheetIndex of the "named" ViewSheet in the sheet list. var sheetIndex = ViewSheets.GetViewSheet(sheetName); if (sheetIndex == -1 && !this.ShowMessage("Retrieving a sheet named '" + sheetName + "' failed!", LocalizationStrings.Title, true)) { return(false); } // Now we'll create another sheet with a system generated name and then rename it. // This will demonstrate the RenameViewSheet method. if (ViewSheets.CreateViewSheet()) { // New sheets are added to the end of the (zero-based) list, so we can determine it's sheetIndex this way. sheetIndex = ViewSheets.GetSheetCount() - 1; var oldName = ViewSheets.GetViewSheetName(sheetIndex); this.ShowMessage($"Now we'll rename the ViewSheet {oldName} we just created.", LocalizationStrings.Title); result = ViewSheets.RenameViewSheet(sheetIndex, sheetName + " #2"); if (!result && !this.ShowMessage($"Renaming {oldName} to {sheetName} #2 failed", LocalizationStrings.Title, true)) { return(false); } this.ShowMessage($"We've now added 3 new sheets to the list of {ViewSheets.GetSheetCount()} total sheets.", LocalizationStrings.Title); } } return(true); }
/// <summary> Executes the "main" view sheet demo operation. </summary> /// /// <returns> true if it succeeds, false if it fails. </returns> private bool RunMainViewSheetDemo() { var sheetIndex = ViewSheets.GetActiveViewSheet(); if (sheetIndex == -1 && !this.ShowMessage(LocalizationStrings.CouldNotFindSheet, LocalizationStrings.Title, true)) { return(false); } var sheetName = ViewSheets.GetViewSheetName(sheetIndex); if (string.IsNullOrWhiteSpace(sheetName) && !this.ShowMessage(LocalizationStrings.CouldNotFindSheet, LocalizationStrings.Title, true)) { return(false); } this.ShowMessage($"{sheetName} at sheet index {sheetIndex} is the main sheet.", LocalizationStrings.Title); return(true); }