C2025-036 - Cleaned up logic in PROMS code that generates the step/sub-step tabs to reduce un-needed processing in certain cases

This commit is contained in:
2025-06-18 09:20:17 -04:00
parent 149bc601e2
commit abec4d9281
2 changed files with 64 additions and 51 deletions

View File

@@ -758,7 +758,7 @@ namespace Volian.Controls.Library
// clear tabs, clears then all so that next 'get' will calculate new.
public void SetAllTabs()
{
RefreshTab();
RefreshTab();
if (_MyAfterEditItems != null) _MyAfterEditItems[0].SetAllTabs(); // B2020-043: used to loop through all, but then recursion would redo.
if (_MyNextEditItem != null) _MyNextEditItem.SetAllTabs();
@@ -1160,7 +1160,7 @@ namespace Volian.Controls.Library
{
if (myItemInfoList != null)
foreach (ItemInfo item in myItemInfoList)
AddChildBefore(item, expand);
AddChildBefore(item, expand);
}
public EditItem AddChildBefore(ItemInfoList myItemInfoList, EditItem nextEditItem)
{
@@ -3994,7 +3994,8 @@ namespace Volian.Controls.Library
// TODO: Adjust top based upon format
// TODO: Remove Label and just output ident on the paint event
TabLeft = 20;
SetupHeader(itemInfo);
if (!itemInfo.IsStep) // C2025-036 reduce un-needed processing - this will prevent duplicat calls that generate step tabs when loading a procedure
SetupHeader(itemInfo);
SetupAlarmTableView(itemInfo); // C2021-018 display alarm point table information in the step editor (if the format flag is set)
this.Paint += new PaintEventHandler(EditItem_Paint);
this.BackColorChanged += new EventHandler(EditItem_BackColorChanged);