C024-039_Button_on_Applicability_Tab_to_change_all_at_same_level_for_setting_the_item_mode-2

This commit is contained in:
2026-02-19 10:03:57 -05:00
parent 202409c140
commit 287c06383b
2 changed files with 184 additions and 17 deletions

View File

@@ -1,12 +1,14 @@
using JR.Utils.GUI.Forms;
using log4net.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Drawing;
using System.Security.Cryptography;
using System.Text;
using System.Windows.Forms;
using VEPROMS.CSLA.Library;
using JR.Utils.GUI.Forms;
namespace Volian.Controls.Library
{
@@ -44,6 +46,7 @@ namespace Volian.Controls.Library
int apple = -1;
if(_MyDisplayTabItem.MyStepTabPanel != null)
apple = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.ApplDisplayMode;
//_MyDisplayTabItem.MyStepTabPanel.MyStepTabRibbon.RefreshProcedure
AddViewMode("Master", "-1", apple == -1);
int i = 0;
foreach (string name in names)
@@ -51,15 +54,23 @@ namespace Volian.Controls.Library
i++;
AddViewMode(name.Trim(), i.ToString(), apple == i);
}
AddItemMode("All", "-1");
i = 0;
foreach (string name in names)
AddItemMode(name.Trim(), (++i).ToString());
AddItemMode("None", "0");
gpItem.Controls.Add(btnApplicabilitychg);
btnApplicabilitychg.BringToFront();
if (_MyDisplayTabItem.MyStepTabPanel != null)
{
MyItemInfo = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedItemInfo;
MyEditItem = MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedEditItem;
}
else
{
MyItemInfo = _MyDisplayTabItem.MyItemInfo;
}
}
}
}
@@ -175,7 +186,8 @@ namespace Volian.Controls.Library
}
break;
}
WireCheckboxes();
WireCheckboxes();
MyApplicability = string.Empty;
string sep = string.Empty;
foreach (int i in MyCheckBoxes.Keys)
@@ -270,6 +282,77 @@ namespace Volian.Controls.Library
// s.Save();
//}
}
private void BtnApplicabilitychg_Click(object sender, System.EventArgs e)
{
//ItemInfo
EditItem topEditItem = MyEditItem;
Volian.Base.Library.BigNum MasterSlave_ApplicabilityTmp;
StepConfig sc = MyItemInfo.MyConfig as StepConfig;
//sc.MasterSlave_Applicability = Volian.Base.Library.BigNum.MakeBigNum(MyApplicability);
MasterSlave_ApplicabilityTmp = sc.MasterSlave_Applicability;
MyEditItem = MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedEditItem;
ItemInfo startitm = MyItemInfo.FirstSibling;
topEditItem = MyEditItem.MyStepPanel._LookupEditItems[startitm.ItemID];
while (startitm != null)
{
StepConfig sc2 = startitm.MyConfig as StepConfig;
using (Content cnt = Content.Get(startitm.MyContent.ContentID))
{
sc2.MasterSlave_Applicability = (MasterSlave_ApplicabilityTmp);
//sc.MasterSlave_Applicability = Volian.Base.Library.BigNum.MakeBigNum(MyApplicability);
cnt.Config = sc2.ToString();
cnt.Save();
}
startitm = startitm.GetNext();
}
//RefreshProcedure();
_MyDisplayTabItem.MyStepTabPanel.MyStepTabRibbon.RefreshProcedure();
//StepTabRibbon.RefreshProcedureApp(MyEditItem);
}
//public void RefreshProcedure()
//{
// StepTabPanel stab_Panel = Parent as StepTabPanel;
// if (_MyDisplayTabItem.MyStepTabPanel != null)
// {
// MyItemInfo = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedItemInfo;
// MyEditItem = MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedEditItem;
// }
// if (MyEditItem != null)
// {
// if (!MyEditItem.MyStepPanel.ContainsFocus)
// this.Invoke((Action)(() => { MyEditItem.MyStepPanel.Focus(); }));
// E_ViewMode mode = MyEditItem.MyStepPanel.VwMode;
// Application.DoEvents();
// this.Invoke((Action)(() => { MyEditItem.MyStepPanel.ResetAll(); }));
// Application.DoEvents();
// this.Invoke((Action)(() => { MyEditItem.MyStepPanel.Refresh(); }));
// Application.DoEvents();
// MyEditItem.MyStepPanel.VwMode = mode;
// Application.DoEvents();
// }
// else if (stab_Panel != null)
// {
// if (!stab_Panel.MyStepPanel.ContainsFocus)
// this.Invoke((Action)(() => { stab_Panel.MyStepPanel.Focus(); }));
// E_ViewMode mode = stab_Panel.MyStepPanel.VwMode;
// Application.DoEvents();
// this.Invoke((Action)(() => { stab_Panel.MyStepPanel.ResetAll(); }));
// Application.DoEvents();
// this.Invoke((Action)(() => { stab_Panel.MyStepPanel.Refresh(); }));
// Application.DoEvents();
// stab_Panel.MyStepPanel.VwMode = mode;
// Application.DoEvents();
// }
//}
// B2021-149: for procedure, only consider external transitions as invalid
private bool IsProcWithNoExternalTrans(ItemInfo ii, List<InvalidTransition> invalidTrans)
{
@@ -351,6 +434,57 @@ namespace Volian.Controls.Library
}
}
}
private EditItem _MyEditItem;
public EditItem MyEditItem
{
get { return _MyEditItem; }
set
{
_MyEditItem = value;
//if (DesignMode) return; // B2019-043 need to check if we are just saving changes to the user interface
//if (!Visible)
//{
// NotVisibleEditItem = value;
// CurItemInfo = null;
// return;
//}
//NotVisibleEditItem = null;
//if (value == null)
//{
// ClearControls();
// return;
//}
//if (CurItemInfo != null && CurItemInfo.ItemID == value.MyItemInfo.ItemID) return;
//if (!value.MyItemInfo.IsStep)
//{
// ClearControls();
// return;
//}
//_MyEditItem = value;
//CurItemInfo = value.MyItemInfo;
//_MyEditItem.MyStepPropertiesPanel = this; // this allows us to access the Step Property pannel and toggle check boxes with shortcut keystrokes
//// originally the change all (for step type) checkbox was initialized based
//// on whether all steps at level were same type, i.e. if same type, default
//// it to checked. This may confuse the user, so we decided to always default
//// to not checked. The code was left in here in case that decision is changed.
//// MRC, JSJ & KBR were in on discussion on 2/27/12:
//// only change all at level if all substeps are of same type
////bool allSameType = true;
////ItemInfo itmp = CurItemInfo.FirstSibling;
////while (itmp != null)
////{
//// if (CurItemInfo.MyContent.Type != itmp.MyContent.Type)
//// {
//// allSameType = false;
//// break;
//// }
//// itmp = itmp.NextItem;
////}
//cbChgAll.Checked = false;
//TagsFillIn();
}
}
private void WireCheckboxes()
{
foreach (CheckBox cb in MyCheckBoxes.Values)