C2026-021_B2026-048 Expand Functionality of Viewing Mode

This commit is contained in:
2026-05-29 06:06:58 -04:00
parent ffa7e21c18
commit a5a3f16177
7 changed files with 213 additions and 72 deletions
@@ -194,15 +194,15 @@ namespace Volian.Controls.Library
CopyStepSelected(this, args);
}
#region Private Fields
#region Private Fields
/// <summary>
/// This is a lookup table for all of the DisplayTabItems that are currently open
/// The key is:
/// "Item - " + Procedure ItemID for step pages
/// "Doc - " + DocumentID for Word Documents
/// </summary>
public Dictionary<string, DisplayTabItem> _MyDisplayTabItems;
/// <summary>
/// This is a lookup table for all of the DisplayTabItems that are currently open
/// The key is:
/// "Item - " + Procedure ItemID for step pages
/// "Doc - " + DocumentID for Word Documents
/// </summary>
public Dictionary<string, DisplayTabItem> _MyDisplayTabItems;
/// <summary>
/// When a Tab is closed it is added to this list.
@@ -549,7 +549,15 @@ namespace Volian.Controls.Library
if (((Bar)sender).Items == null) return;
if (((Bar)sender).Items.Count == 1)// Remove bar if last item is closed...
{
Bar bar = sender as Bar;
//B2026 - 048 View Only Mode freezes PROMS if last tab closed
//if last item is closing, need to re-enable Step Properties
//so if closing in view only mode will not freeze when re-opening
if (MyEditItem != null && MyEditItem.MyStepPanel.VwMode == E_ViewMode.View)
{
OnEnableDisableStepProperties(new StepTabRibbonEventArgs(MyEditItem.MyItemInfo, 0, E_ViewMode.Edit));
}
Bar bar = sender as Bar;
if (bar != null)
{
if (dotNetBarManager1.Bars.Contains(bar.Name))
@@ -568,9 +576,16 @@ namespace Volian.Controls.Library
ActivateRemainingTab((Bar)sender);
}
}
#endregion
#region Public Methods
public void RefreshItem(ItemInfo myItemInfo)
public event StepTabRibbonEvent EnableDisableStepProperties;
private void OnEnableDisableStepProperties(StepTabRibbonEventArgs args)
{
if (EnableDisableStepProperties != null)
EnableDisableStepProperties(this, args);
}
#endregion
#region Public Methods
public void RefreshItem(ItemInfo myItemInfo)
{
ItemInfo proc = myItemInfo.MyProcedure; // Find procedure Item
string key = "Item - " + proc.ItemID.ToString();