C024-039_Button_on_Applicability_Tab_to_change_all_at_same_level_for_setting_the_item_mode-2 #714

2 changed files with 184 additions and 17 deletions
Showing only changes of commit 287c06383b - Show all commits

View File

@@ -1,3 +1,6 @@
using System.Security.Cryptography;
using VEPROMS.CSLA.Library;
namespace Volian.Controls.Library namespace Volian.Controls.Library
{ {
partial class DisplayApplicability partial class DisplayApplicability
@@ -20,6 +23,7 @@ namespace Volian.Controls.Library
base.Dispose(disposing); base.Dispose(disposing);
} }
#region Component Designer generated code #region Component Designer generated code
/// <summary> /// <summary>
@@ -30,19 +34,41 @@ namespace Volian.Controls.Library
{ {
this.gpMode = new DevComponents.DotNetBar.Controls.GroupPanel(); this.gpMode = new DevComponents.DotNetBar.Controls.GroupPanel();
this.gpItem = new DevComponents.DotNetBar.Controls.GroupPanel(); this.gpItem = new DevComponents.DotNetBar.Controls.GroupPanel();
this.btnApplicabilitychg2 = new DevComponents.DotNetBar.ButtonItem();
this.btnApplicabilitychg = new DevComponents.DotNetBar.ButtonX();
this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
this.gpItem.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// btnApplicabilitychg
//
this.btnApplicabilitychg.Location = new System.Drawing.Point(60, 8);
this.btnApplicabilitychg.Margin = new System.Windows.Forms.Padding(4);
this.btnApplicabilitychg.BackColor = System.Drawing.SystemColors.Control;
this.btnApplicabilitychg.Name = "btnApplicabilitychg";
this.btnApplicabilitychg.Size = new System.Drawing.Size(80, 22);
this.btnApplicabilitychg.Margin = new System.Windows.Forms.Padding(2);
this.btnApplicabilitychg.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.superTooltip1.SetSuperTooltip(this.btnApplicabilitychg, new DevComponents.DotNetBar.SuperTooltipInfo("Change applicability settings - All At Level", "", "When clicked, all steps at the level of the current step will have their applicability settings changed.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray));
this.btnApplicabilitychg.TabIndex = 0;
this.btnApplicabilitychg.Text = "Set All at Level";
this.btnApplicabilitychg.ColorTable = DevComponents.DotNetBar.eButtonColor.BlueOrb;
this.btnApplicabilitychg.Font = new System.Drawing.Font("Microsoft Sans Serif", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnApplicabilitychg.Click += new System.EventHandler(this.BtnApplicabilitychg_Click);
//
// gpMode // gpMode
// //
this.gpMode.AutoSize = true; this.gpMode.AutoSize = true;
this.gpMode.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.gpMode.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.gpMode.CanvasColor = System.Drawing.SystemColors.Control; this.gpMode.CanvasColor = System.Drawing.SystemColors.Control;
this.gpMode.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; this.gpMode.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
this.gpMode.DisabledBackColor = System.Drawing.Color.Empty;
this.gpMode.Dock = System.Windows.Forms.DockStyle.Top; this.gpMode.Dock = System.Windows.Forms.DockStyle.Top;
this.gpMode.Location = new System.Drawing.Point(0, 0); this.gpMode.Location = new System.Drawing.Point(0, 0);
this.gpMode.Margin = new System.Windows.Forms.Padding(4);
this.gpMode.Name = "gpMode"; this.gpMode.Name = "gpMode";
this.gpMode.Padding = new System.Windows.Forms.Padding(10, 10, 10, 30); this.gpMode.Padding = new System.Windows.Forms.Padding(13, 12, 13, 37);
this.gpMode.Size = new System.Drawing.Size(324, 40); this.gpMode.Size = new System.Drawing.Size(432, 49);
// //
// //
// //
@@ -58,7 +84,6 @@ namespace Volian.Controls.Library
this.gpMode.Style.BorderRightWidth = 1; this.gpMode.Style.BorderRightWidth = 1;
this.gpMode.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; this.gpMode.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.gpMode.Style.BorderTopWidth = 1; this.gpMode.Style.BorderTopWidth = 1;
this.gpMode.Style.Class = "";
this.gpMode.Style.CornerDiameter = 4; this.gpMode.Style.CornerDiameter = 4;
this.gpMode.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; this.gpMode.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded;
this.gpMode.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; this.gpMode.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center;
@@ -67,12 +92,10 @@ namespace Volian.Controls.Library
// //
// //
// //
this.gpMode.StyleMouseDown.Class = "";
this.gpMode.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.gpMode.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
// //
// //
// //
this.gpMode.StyleMouseOver.Class = "";
this.gpMode.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.gpMode.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.gpMode.TabIndex = 0; this.gpMode.TabIndex = 0;
this.gpMode.Text = "Viewing Mode"; this.gpMode.Text = "Viewing Mode";
@@ -83,11 +106,14 @@ namespace Volian.Controls.Library
this.gpItem.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.gpItem.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.gpItem.CanvasColor = System.Drawing.SystemColors.Control; this.gpItem.CanvasColor = System.Drawing.SystemColors.Control;
this.gpItem.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; this.gpItem.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
//this.gpItem.Controls.Add(this.btnApplicabilitychg);
this.gpItem.DisabledBackColor = System.Drawing.Color.Empty;
this.gpItem.Dock = System.Windows.Forms.DockStyle.Top; this.gpItem.Dock = System.Windows.Forms.DockStyle.Top;
this.gpItem.Location = new System.Drawing.Point(0, 40); this.gpItem.Location = new System.Drawing.Point(0, 49);
this.gpItem.Margin = new System.Windows.Forms.Padding(4);
this.gpItem.Name = "gpItem"; this.gpItem.Name = "gpItem";
this.gpItem.Padding = new System.Windows.Forms.Padding(10, 10, 10, 30); this.gpItem.Padding = new System.Windows.Forms.Padding(13, 12, 13, 37);
this.gpItem.Size = new System.Drawing.Size(324, 40); this.gpItem.Size = new System.Drawing.Size(432, 85);
// //
// //
// //
@@ -103,7 +129,6 @@ namespace Volian.Controls.Library
this.gpItem.Style.BorderRightWidth = 1; this.gpItem.Style.BorderRightWidth = 1;
this.gpItem.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; this.gpItem.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.gpItem.Style.BorderTopWidth = 1; this.gpItem.Style.BorderTopWidth = 1;
this.gpItem.Style.Class = "";
this.gpItem.Style.CornerDiameter = 4; this.gpItem.Style.CornerDiameter = 4;
this.gpItem.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; this.gpItem.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded;
this.gpItem.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; this.gpItem.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center;
@@ -112,26 +137,31 @@ namespace Volian.Controls.Library
// //
// //
// //
this.gpItem.StyleMouseDown.Class = "";
this.gpItem.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.gpItem.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
// //
// //
// //
this.gpItem.StyleMouseOver.Class = "";
this.gpItem.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.gpItem.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.gpItem.TabIndex = 1; this.gpItem.TabIndex = 1;
this.gpItem.Text = "Item Mode"; this.gpItem.Text = "Item Mode";
// //
// DisplayApplicability // DisplayApplicability
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.gpItem); this.Controls.Add(this.gpItem);
this.Controls.Add(this.gpMode); this.Controls.Add(this.gpMode);
this.Margin = new System.Windows.Forms.Padding(4);
this.Name = "DisplayApplicability"; this.Name = "DisplayApplicability";
this.Size = new System.Drawing.Size(324, 656); this.Size = new System.Drawing.Size(432, 807);
this.gpItem.ResumeLayout(false);
this.ResumeLayout(false); this.ResumeLayout(false);
this.PerformLayout(); this.PerformLayout();
//
// superTooltip1
//
this.superTooltip1.DefaultTooltipSettings = new DevComponents.DotNetBar.SuperTooltipInfo("", "", "", null, null, DevComponents.DotNetBar.eTooltipColor.Gray);
this.superTooltip1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
} }
@@ -139,6 +169,9 @@ namespace Volian.Controls.Library
private DevComponents.DotNetBar.Controls.GroupPanel gpMode; private DevComponents.DotNetBar.Controls.GroupPanel gpMode;
private DevComponents.DotNetBar.Controls.GroupPanel gpItem; private DevComponents.DotNetBar.Controls.GroupPanel gpItem;
private DevComponents.DotNetBar.ButtonItem btnApplicabilitychg2;
private DevComponents.DotNetBar.ButtonX btnApplicabilitychg;
private DevComponents.DotNetBar.SuperTooltip superTooltip1;
} }
} }

View File

@@ -1,12 +1,14 @@
using JR.Utils.GUI.Forms;
using log4net.Util;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
using System.Drawing;
using System.Data; using System.Data;
using System.Drawing;
using System.Security.Cryptography;
using System.Text; using System.Text;
using System.Windows.Forms; using System.Windows.Forms;
using VEPROMS.CSLA.Library; using VEPROMS.CSLA.Library;
using JR.Utils.GUI.Forms;
namespace Volian.Controls.Library namespace Volian.Controls.Library
{ {
@@ -44,6 +46,7 @@ namespace Volian.Controls.Library
int apple = -1; int apple = -1;
if(_MyDisplayTabItem.MyStepTabPanel != null) if(_MyDisplayTabItem.MyStepTabPanel != null)
apple = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.ApplDisplayMode; apple = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.ApplDisplayMode;
//_MyDisplayTabItem.MyStepTabPanel.MyStepTabRibbon.RefreshProcedure
AddViewMode("Master", "-1", apple == -1); AddViewMode("Master", "-1", apple == -1);
int i = 0; int i = 0;
foreach (string name in names) foreach (string name in names)
@@ -51,18 +54,26 @@ namespace Volian.Controls.Library
i++; i++;
AddViewMode(name.Trim(), i.ToString(), apple == i); AddViewMode(name.Trim(), i.ToString(), apple == i);
} }
AddItemMode("All", "-1"); AddItemMode("All", "-1");
i = 0; i = 0;
foreach (string name in names) foreach (string name in names)
AddItemMode(name.Trim(), (++i).ToString()); AddItemMode(name.Trim(), (++i).ToString());
AddItemMode("None", "0"); AddItemMode("None", "0");
gpItem.Controls.Add(btnApplicabilitychg);
btnApplicabilitychg.BringToFront();
if (_MyDisplayTabItem.MyStepTabPanel != null) if (_MyDisplayTabItem.MyStepTabPanel != null)
{
MyItemInfo = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedItemInfo; MyItemInfo = _MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedItemInfo;
MyEditItem = MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedEditItem;
}
else else
{
MyItemInfo = _MyDisplayTabItem.MyItemInfo; MyItemInfo = _MyDisplayTabItem.MyItemInfo;
} }
} }
} }
}
public int ViewMode public int ViewMode
{ {
get get
@@ -175,6 +186,7 @@ namespace Volian.Controls.Library
} }
break; break;
} }
WireCheckboxes(); WireCheckboxes();
MyApplicability = string.Empty; MyApplicability = string.Empty;
string sep = string.Empty; string sep = string.Empty;
@@ -270,6 +282,77 @@ namespace Volian.Controls.Library
// s.Save(); // s.Save();
//} //}
} }
private void BtnApplicabilitychg_Click(object sender, System.EventArgs e)
{
//ItemInfo
mschill marked this conversation as resolved
Review

Remove commented out code

Remove commented out code
EditItem topEditItem = MyEditItem;
Volian.Base.Library.BigNum MasterSlave_ApplicabilityTmp;
mschill marked this conversation as resolved
Review

Is this still needed?

Is this still needed?
Review

It was needed in one solution, but no longer needed.

It was needed in one solution, but no longer needed.
StepConfig sc = MyItemInfo.MyConfig as StepConfig;
//sc.MasterSlave_Applicability = Volian.Base.Library.BigNum.MakeBigNum(MyApplicability);
mschill marked this conversation as resolved
Review

Remove commented out code

Remove commented out code
MasterSlave_ApplicabilityTmp = sc.MasterSlave_Applicability;
MyEditItem = MyDisplayTabItem.MyStepTabPanel.MyStepPanel.SelectedEditItem;
mschill marked this conversation as resolved
Review

Not sure if I am missing something, but I am not seeing where this is used? -- is topEditItem needed?

Not sure if I am missing something, but I am not seeing where this is used? -- is topEditItem needed?
Review

Looking over this, it looks like it is not need here. I will remove it.

Looking over this, it looks like it is not need here. I will remove it.
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 // B2021-149: for procedure, only consider external transitions as invalid
private bool IsProcWithNoExternalTrans(ItemInfo ii, List<InvalidTransition> invalidTrans) 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() private void WireCheckboxes()
{ {
foreach (CheckBox cb in MyCheckBoxes.Values) foreach (CheckBox cb in MyCheckBoxes.Values)